注意事项:
fgets遇到'\n'结束,并且要接收'\n'。也就是说字符串最后一位为'\n'。
当有换行符时,就要选择结束流程,不然会在other处多加一,出现50错误
#include#includevoid fun(char arr[],int len) { int letter = 0; int num = 0; int space = 0; int other = 0; for(int i = 0;i='a'&&arr[i]='A'&&arr[i]='0'&&arr[i]<='9') { num++; } else if(arr[i] == ' ') { space++; } else { other++; } } printf("%d %d %d %d",letter,num,space,other); } int main() { char arr[100] = {0}; fgets(arr,sizeof(arr),stdin); int len = strlen(arr);//fgets会把'\n'接收 // printf("len = %d\n",len);//测试长度 // arr[len -1]= '\0';//将arr[]最后的'\n'改为'\0'也出错 //原因:'\0'进入函数循环中,也会出现other值多1的情况 fun(arr,len); return 0; }
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:1158 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:466 |
printf基础练习2 (C语言代码)浏览:955 |
成绩转换 (C语言代码)浏览:1048 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:900 |
printf基础练习2 (有点不明白)浏览:887 |
C语言程序设计教程(第三版)课后习题8.7 (C语言代码)浏览:934 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:727 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:438 |
淘淘的名单 (C语言代码)浏览:1309 |