輸入幾個字符只保留數字與小數點‘.’,比方說輸入1.2和 3.b4,,輸出1.2和3.4.,并能把他們排序
uj5u.com熱心網友回復:
一個一個檢查,如果不是數字和小數點就忽略uj5u.com熱心網友回復:
沒有配套的代碼,但可以給你一個類似的參考代碼,只需要在此基礎上做些修改就可以了.如果你還想了解其他的一些常見型別題,可以查看一下這篇文章https://blog.csdn.net/HYNN12/article/details/102610626,希望對你有所幫助.
#include <stdio.h>
int main(int argc, const char * argv[]) {
int num_digital = 0;
int num_char = 0;
int num_space = 0;
int i;
char c[100] = "faj f afhka123";
//gets(c);
for (i=0; i<100; i++) {
if (c[i] == ' ') {
num_space ++;
}
if ((c[i] >= 'A' && c[i] <= 'Z')|| (c[i] >= 'a' && c[i] <= 'z')) {
num_char ++;
}
if (c[i] >= '0' && c[i] <= '9') {
num_digital ++;
}
}
printf("數字個數是%d\n字母個數是%d\n空格個數是%d\n",num_digital,num_char,num_space);
return 0;
}
————————————————
著作權宣告:本文為CSDN博主「知之、行之、思之」的原創文章,遵循CC 4.0 BY-SA著作權協議,轉載請附上原文出處鏈接及本宣告。
原文鏈接:https://blog.csdn.net/HYNN12/article/details/102610626
uj5u.com熱心網友回復:
#include <stdio.h>
#include <ctype.h>
#include <string.h>
#define MAX_INPUT_SIZE 128
char *del_char(char *str);
int main(void)
{
char input[MAX_INPUT_SIZE];
float num;
fgets(input, MAX_INPUT_SIZE, stdin);
del_char(input);
puts(input);
sscanf(input, "%f", &num);
printf("%f\n", num);
return 0;
}
char *del_char(char *str)
{
char *tmp, *back_str;
tmp = back_str = str;
while (*str) {
if (isdigit(*str) || *str == '.')
*tmp++ = *str;
str++;
}
*tmp = 0;
return back_str;
}
供參考~
一個一個輸入,多個可以考慮加回圈
uj5u.com熱心網友回復:
感謝各位
,我試一下,不會回復樓層
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/30970.html
標籤:C語言
上一篇:入門小白求大佬指點!
下一篇:關于結構體
