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

2024-11-02 00:06:53
推荐回答(5个)
回答1:

#include

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;

}

扩展资料:

字符是可使用多种不同字符方案或代码页来表示的抽象实体。例如,Unicode UTF-16 编码将字符表示为16位整数序列,而 Unicode UTF-8 编码则将相同的字符表示为 8 位字节序列。微软的公共语言运行库使用 Unicode UTF-16(Unicode 转换格式,16 位编码形式)表示字符。

参考资料来源:百度百科-字符

回答2:

#include

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

回答3:

你的程序没改时的错误,由此可见,你的程序p[0]  p[n] 第一个和最后一个字符不能识别

回答4:

开始----输入-----提取第一个字符(计算输入的字符长度)-----比较是什么(如果是大写字母,a计数器+1;如果是小写字母,b计数器+1,....) -------提取第二个字符-----比较是什么(如果是大写字母,a计数器+1;如果是小写字母,b计数器+1,....)-----提取第三个字符-----比较是什么(如果是大写字母,a计数器+1;如果是小写字母,b计数器+1,....) 就这样下去

回答5:

以下程序在win-tc下调试通过 /* 输入一行文字 找出其中大写字母小写字母空格数字及其他字符各有多少 */ # include "stdio.h" # include "conio.h" void main(void) { int upper=0,lower=0,digit=0,space=0,other=0,i=0; char *p,s[80]; printf("\nInput a string:"); while ((s[i]=getchar())!='\n') i++; p=s; while(*p!='\n') {if((*p>='A')&&(*p<='Z')) upper++; else if((*p>='a')&&(*p<='z')) lower++; else if(*p==' '||*p==9) space++; else if((*p>='0')&&(*p<='9')) digit++; else other++; p++; } printf("upper case:%d lower case:%d ",upper,lower); printf("space:%d digit:%d other:%d ",space,digit,other); getch(); }
满意请采纳。