从键盘输入一串字符(以回车键结束),统计其中英文字母,空格和数字以及其它字符的个数。

要算法

第1个回答  推荐于2017-09-14
1、用a表示中英文字母的个数,用b表示空格的个数,用c表示数字的个数,用d表示其他字符的个数;
2、用scanf("%c",ch)循环读入,每读入一个即判断后加入a或b或c或d,如果读到ch==10(回车),则执行3
3、输出a、b、c、d

#include<stdio.h>
#include <stdlib.h>
main()
{
int a=0,b=0,c=0,d=0;
char ch;
system("cls");
printf("Input a string with enter end:");

scanf("%c",&ch);

while (ch!=10)
{
if ((ch>='A' && ch<='Z') || (ch>='a') && (ch<='z'))
a++;
else if (ch==' ')
b++;
else if (ch>='0' && ch<='9')
c++;
else
d++;
scanf("%c",&ch);
}

printf("\nA-Z,a-z:%d,blank:%d,number:%d,others:%d\n\n",a,b,c,d);

system("pause");
}追问

ch是什么意思?ch==10是表示回车?

追答

ch是定义的一个字符变量,用ch==10表示读到一个换行字符,即是循环读取字符时按下回车键时ch读到的字符。

本回答被提问者采纳
相似回答