編寫一個程序統計輸入字符串中: 各個數字、空白字符、以及其他所有字符出現的次數
#include <stdio.h>
int main()
{
char a=0;
int num_count=0;
int space_count=0;
int other_count=0;
//注意此處,不能寫成a=getchar(),然後while(a!='\n'),這樣做只能輸入一行,然後進行死循環
while((a=getchar())!='\n')
{
if(a>='0'&&a<='9')
{
num_count++;
}
else if(a==' ')
{
space_count++;
}
else
{
other_count++;
}
}
printf("num_count=%d\n",num_count);
printf("space_count=%d\n",space_count);
printf("other_count=%d\n",other_count);
return 0;
}
另一方法----調用函數:
#include <stdio.h>
#include <ctype.h> //對空白字符的判斷,調用了isspace()函數,所以要調用頭文件
int main()
{
char str[20]; //這塊對輸入有所限制了
int num_count=0;
int space_count=0;
int other_count=0;
char *p=str;
gets(str); //接收字符串
while(*p)
{
if(*p>='0'&&*p<='9')
{
num_count++;
}
else if(isspace(*p)) //用isspace函數來判斷是不是空白字符
{
space_count++;
}
else
{
other_count++;
}
p++;
}
printf("num_count=%d\n",num_count);
printf("space_count=%d\n",space_count);
printf("other_count=%d\n",other_count);
return 0;
}