解题思路:因为题目中要求包含多种类型字符,所以我们引用cypet库来判断字符,然后用while语句结合if 来进行判断,最后计算字符量输出
注意事项:记住,在循环时候,要按照判断digit ,blank,alpha的顺序,不然答案是错的
参考代码:
#include<stdio.h>
#include<ctype.h>
void f(char a[]){ //定义函数
int i=0,digit=0,blank=0,letter=0,other=0; //定义预备开始计算的变量
while(a[i]!='\0'){ //只要不到末尾就继续循环
if(isdigit(a[i])){ //digit来判断是否是数字
digit++;
}
else if(isblank(a[i])){ //是否空格
blank++;
}
else if(isalpha(a[i])){ //是否字母
letter++;
}
else{
other++;
}
i++;
}
printf("%d %d %d %d",letter,digit,blank,other);
}
int main(){
char a[100];
gets(a);
f(a); //传入函数
return 0 ;
}
0.0分
1 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复