输入一行字符(字符个数小于80),这行字符包括小写字母,大写字母,数字,空格等其他可打印符号。请统计各字母的个数,小写字母和大写字母统计于小写字母上,例如输入字符串为:aA123B,则字母a出现的次数为2,字母b出现的次数为1;如果某字母小写大写都没出现,则不用进行输出。

输入:一行字符

输出:若干行

思路:利用getchar函数数组存入输入的字符;

两层循环,第一层循环小写字母,第二层遍历数组,条件判断数组是否与小写字母相等,若有count++;

输出结果;

具体看代码

#include<stdio.h>
int main(){
	char a[60];
	char ch;
	int i,cnt=0,j,count=0;
	do{//将输入的字符存入数组 
		ch=getchar();
		a[cnt++]=ch;
	}while(ch!='\n');
	for(i=97;i<=122;i++){//第一层循环为小写字母a-z 
		for(j=0;j<cnt;j++){//第二层遍历数组 
		if(a[j]>=65&&a[j]<=90)//大写转小写 
		a[j]+=32;
		if(a[j]==i)//若数组中有符合第一层循环中的小写字母则记下 
		count++;
						}
	if(count>0)//输出统计下来的小写字母次数 
	printf("%c is %d\n",i,count);
	count=0;//记得将count归零,不然count会累积 
	}

更多推荐

C语言字符个数统计