输入一行字符,分别统计出其中英文字母(包括大小写)、空格、数字和其他字符的个数。

请用C语言!把程序写出来!谢谢!

#include<stdio.h>

int main()

{

char c;

int letters=0,spaces=0,digits=0,others=0;

printf("请输入一串任意的字符:\n");

while((c=getchar())!='\n')

{

if((c>='a'&&c<='z')||(c>='A'&&c<='Z'))

letters++;

else if(c>='0'&&c<='9')

digits++;

else if(c==' ')

spaces++;

else

others++;

}

printf("字母有%d个,数字有%d个,空格有%d个,其他有%d个",letters,digits,spaces,others);

return 0;

}

扩展资料:

while语句若一直满足条件,则会不断的重复下去。但有时,需要停止循环,则可以用下面的三种方式:

一、在while语句中设定条件语句,条件不满足,则循环自动停止。

如:只输出3的倍数的循环;可以设置范围为:0到20。

二、在循环结构中加入流程控制语句,可以使用户退出循环。

1、break流程控制:强制中断该运行区内的语句,跳出该运行区,继续运行区域外的语句。

2、continue流程控制:也是中断循环内的运行操作,并且从头开始运行。

三、利用标识来控制while语句的结束时间。

参考资料来源:

百度百科——while

温馨提示:内容为网友见解,仅供参考
第1个回答  2020-03-24
第2个回答  2020-03-09

C语言经典例子之统计英文、字母、空格及数字个数

第3个回答  2018-11-30
#include<stdio.h>
int main()
{
char c;
int letters=0,space=0,digit=0,other=0;
printf("请输入一段字符\n");
while((c=getchar())!='\n')
{
if(c>='a'&&c<='z'||c>='A'&&c<='Z')
letters++;
else if(c==' ')
space++;
else if(c>='0'&&c<='9')
digit++;
else
other++;
}
printf("字母数:%d\n空格数:%d\n数字数:%d\n其他字符数:%d\n",letters,space,digit,other);
return 0;
}
如果没有问题请采纳 谢谢
第4个回答  推荐于2018-04-11
#include "stdio.h"
void main()
{
char s;
int i=0,j=0,k=0,m=0,da=0,xiao=0;
printf("please input the string\n");
while((s=getchar())!='\n') /*循环从键盘读入字符直到一行结束(输入回车)*/
{

if((s<='z'&&s>='a')||(s<'Z'&&s>'A'))
{
if(s<='Z'&&s>='A')da++;
if(s<='z'&&s>='a')xiao++;
i++; /*i存入字母数*/
}
else if(s==' ') j++; /*j存入空格数,注意s==' '里面是有一个空格的*/
else if(s<58&&s>47)k++; /*k存入数字数*/
else m++; /*m存入其它符号数*/
}
printf("char:%d Capital letters:%d Lowercase%d\nspec:%d\nnumber:%d\nOther:%d\n",i,da,xiao,j,k,m); /*打印行中的字母,空格,数字,其它字符数*/
}本回答被提问者和网友采纳

输入一行字符,分别统计出其中英文字母(包括大小写)、空格、数字和其他字...
} printf("字母有%d个,数字有%d个,空格有%d个,其他有%d个",letters,digits,spaces,others);return 0;}

...字母(包括大小写)、空格、数字和其他字符的个数。
...同意楼上的

输入一行字符,分别统计其中英文字母、空格、数字和其它字符个数。
题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。1.程序分析:利用while语句,条件为输入的字符不为'\\n'.2.程序源代码:include "stdio.h"main(){char c;int letters=0,space=0,digit=0,others=0;printf("please input some characters\\n");while((c=getchar())!='...

...小写字母,空格,数字,其他字符个数。【用指针,数组实现】
printf("英文小写字母有%d个\\n",a[1]);printf("空格有%d个\\n",a[2]);printf("数字有%d个\\n",a[3]);printf("其它字符有%d个\\n",a[4]);return 0;}

...题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的...
public static void main(String[] args) { System.out.println("请输入:(结束请按回车)");InputStreamReader isr = new InputStreamReader(System.in);BufferedReader br= new BufferedReader(isr);String s = "";try { s = br.readLine();} catch(IOException E){ System.out.println("...

输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数
当输入的是大写或小写字母(ASCII值为65到90或97到122),就增加letters计数。如果字符是数字(ASCII值为48到57),则增加digits计数。遇到空格(ASCII值为32),则增加spaces计数。其他所有不是字母、数字或空格的字符,都被归类为others。最后,程序会输出四种字符的个数。程序中使用的while语句表示在...

C语言:输入一行字符,分别统计出其中的大写英文字母、小写英文字母、数字...
语法错误:printf("其中大写字母%d个,小写字母%d个,数字%d个,其他字符%d个\\n",dx,xx,shuzi,qita);dx后面的逗号不是英文的。算法也有错误:你判断的时候if(all[i]>'a'&&all[i]<'z'||all[i]>'A'&&all[i]<'Z')应该把>都改成>=,<也一样,不改的话a、A、z、Z的判断将被划在...

输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数...
1 while语句:include<stdio.h> int main(void){ \/\/输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。char ch;int char_num=0,kongge_num=0,int_num=0,other_num=0;while((ch=getchar())!='\\n')\/\/回车键结束输入,并且回车符不计入 { if(ch>='a'&&ch<='z'||...

5.1输入一行字符,分别统计出其中的英文字母、数字、空格和其它字符的个...
由于在ASCII码中,数字,大写字母,小写字母分别连续,所以可以根据边界值判断类型。二、算法设计:1、读入字符,直到遇到换行结束。2、对于每个字符,判断是字母还是数字,或者空格,或者是其它字符。3、对于每个字符判断后,对应类别计数器自加。4、最终输出结果。三、参考代码:include <stdio.h>int main...

输入一行字符,分别统计处其中英文字母、空格、数字和其它字符的个数
int letterCount = 0;\/\/英文字母的个数 int spaceCount = 0;\/\/空格的个数 int digitalCount = 0;\/\/数字的个数 int otherCount = 0;\/\/其他字符的个数 int a;while( (a=getchar()) != '\\n'){ if( (a>='A' && a<='Z') || (a>='a' && a<='z'))\/\/如果是想分别统计...

相似回答