#include<stdio.h> int main() { char c; int word=0,digits=0,other=0,space=0; c=getchar(); while(c!='\n') { if((c>='a'&& c<='z')||((c>='A'&& c<='Z')) { word++; } else if(c>='0'&&c<='9') { digits++; } else if (c==' ') { space++; } else { other++; } c=getchar(); } printf("%d,%d,%d,%d",word,digits,space,other); return 0; } 有什么问题吗求大佬告知不知道为什么出错了
#include<stdio.h> #include<string.h> #include<process.h> int main() { char str[100]; int a=0,c=0,d=0,e=0; printf("请输入一行字符:"); fgets(str,100,stdin); for(int i=0;str[i]!='\0';i++){ if((str[i]>'A'&&str[i]<'Z')||(str[i]>'a'&&str[i]<'z')){ a++;} else if(str[i]>='0'&&str[i]<='9'){ c++; } else if(str[i]==' '){ d++; } else{ e++; } } printf("英文字母有%d个,数字有%d个,空格有%d个,其他字符有%d个",a,c,d,e); return 0; } 请问我这个按照样例输出时,为什么那个英文字符只有19个,而其他字符有9个啊
零栀 2023-07-18 09:40:02 |
if那里应该是>=或者<=
#include<iostream> using namespace std; string n; int a,b,c,d; int main() { getline(cin,n); for(int i=0;i<n.size();i++) { if((n[i]>64 && n[i]<122) || n[i]==64 || n[i]==122)a++; else if((n[i]>48 && n[i]<58) || n[i]==48 || n[i]==58)b++; else if(n[i]==32)c++; else d++; } cout<<a<<" "<<b<<" "<<c<<" "<<d; return 0; } 这个办法只有50分,麻烦各位帮我看看谢谢
#include<stdio.h> #include<string.h> int main() { char a[200]; int i,m=0,n=0,k=0,j=0; gets(a); for(i=0;i<strlen(a);i++) { if((a[i]>='a'&&a[i]<='z')||(a[i]>='A'&&a[i]<='Z')) { m++; } else if(a[i]>='0'&&a[i]<='9') { n++; } else if(a[i]==' ') { k++; } else { j++; } printf("%d %d %d %d",m,n,j,k); } return 0; } 请问我这个为啥是错的?
吃土的菠萝 2023-03-26 09:50:21 |
看了半天,我觉得也没错啊,但运行起来都是乱数字。我也想知道是怎么回事,蹲一个结果。
一狙狙中你的心 2023-03-28 16:12:29 |
打印顺序跟题目要求不一样!
刘陈晨 2023-03-28 21:08:19 |
@dotcpp0658860 怎么不一样喃,字母 字符 空格,和其他字符,不就是这样的吗
病岩 2023-03-29 20:05:15 |
最后打印语句移到return 0上面
刘陈晨 2023-03-29 21:20:14 |
@dotcpp0635396 嗷嗷 这样 谢谢
一狙狙中你的心 2023-03-31 13:49:23 |
@dotcpp0644921 你的空格和其他这两项的输出是不是搞反了
栋 2023-04-18 17:57:03 |
这个不对吧,有汉字输入的情况下会统计到其他里边吧
悠游 2023-07-17 18:30:20 |
@dotcpp0635396 厉害厉害,我看楞了一会,原来是把打印放循环里了,哈哈
Jayden 2024-02-19 16:19:07 |
你把printf语句放在for循环里面了哈哈哈哈
#include<stdio.h> #include<string.h> #define N 200 int main(void) { char str[N]; gets(str); int i; int a=0,b=0,c=0,d=0; for(i=0; i<strlen(str); i++) { if(str[i]>='0'&&str[i]<='9') { a++; } else if(str[i]>='a'&&str[i]<='z'||str[i]>='A'&&str[i]<='Z') { b++; } else if(str[i]==' ') { c++; } else { d++; } } printf("%d %d %d %d\n",a,b,c,d); return 0; }
#include<stdio.h> #include<string.h> int main() { int i,h=0,j=0,k=0,p=0; char str[100]; gets(str); int l=strlen(str); for(i=0;i<l;i++) { if(str[i]>='a'&&str[i]<='z'||str[i]>='A'&&str[i]<='Z') { j++; } else if(str[i]==' ') { k++; } else if(str[i]>='0'&&str[i]<='9') { h++; } else { p++; } } printf("字母:%d\n空格:%d\n数字:%d\n其他字符:%d\n",j,k,h,p); return 0; } 谁可以指点我一下
成功了! int zm = 0, sz = 0, kg = 0, qt = 0, i = 0; char str[100]; gets(str); while (i < strlen(str)) { if (str[i] >= 'a' && str[i] <= 'z' || str[i] >= 'A' && str[i] <= 'Z') { zm++; } else if (str[i] >= '0' && str[i] <= '9') { sz ++; } else if (str[i] == ' ') { kg ++; } else { qt ++; } i ++; } printf("%d %d %d %d", zm, sz, kg, qt); return 0;
#include<string.h> int main() { char str[200]; int i,n,letter=0,space=0,number=0,other; gets(str); n=strlen(str); for(i=0;i<=n;i++) { if(str[i]>='a'&&str[i]<='z'||str[i]>='A'&&str[i]<='Z') letter++; else if(str[i]==' ') space++; else if(str[i]>='0'&&str[i]<='9') number++; else other++; } printf("%d %d %d %d",letter,space,number,other); return 0; } 谁能指出错误,非常感谢!!!
北极 2023-01-11 16:35:05 |
少了一个头文件#include<stdio.h>,还有other没有初始化
字符串问题 (C语言代码)浏览:1634 |
printf基础练习2 (C语言代码)浏览:321 |
C语言训练-大、小写问题 (C语言代码)浏览:649 |
C语言训练-求s=a+aa+aaa+aaaa+aa...a的值 (C语言代码)浏览:760 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:701 |
水仙花 (C语言代码)浏览:1163 |
a+b浏览:452 |
1113题解浏览:823 |
2004年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:331 |
用筛法求之N内的素数。 (C语言代码)浏览:595 |
111 2024-07-19 15:44:56 |
你把if里面的逻辑或的右边的括号重复了,去掉一个(就行了