C语言如何统计字符串各种字符个数?
1、首先打开vc6.0,新建一个vc项目。
2、添加头文件。
3、添加main主函数。
4、定义一个char类型变量c。
5、定义四个int类型变量letters、spaces、digits、others。
6、使用while循环。
7、统计字符letters。
8、统计数字digits。
9、统计空格spaces。
10、统计其他字符others。
11、使用printf打印。
12、运行程序,看看结果。
c语言输入一行字符串,如何统计其中的字母和数字的个数?
要统计英文字母,空格,数字和其他字符的个数,代码如下:
#include<stdio.h>
#include<stdlib.h>
int main()
{
char c;
int letters=0;
int space=0;
int digit=0;
int other=0;
printf(“请输入一行字符:>”);
while((c=getchar())!=’n’)
{
if((c>=’a’&&c<=’z’)||(c>=’A’&&c<=’Z’))
{
letters++;
}
else if(”==c)
{
space++;
}
else if(c>=’0’&&c<=’9′)
{
digit++;
}
else
{
other++;
}
}
printf(“字母的个数:>%dn空格的个数:>%d
n数字的个数:>%dn其他字符的个数:>%dn”,
letters,space,digit,other);
system(“pause”);
return 0;
}
扩展资料:
include用法:
#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。
插入头文件的内容
#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:
1、#include<文件名>
2、#include”文件名”
如果需要包含标准库头文件或者实现版本所提供的头文件,应该使用第一种格式。如下例所示:
#include<math.h>//一些数学函数的原型,以及相关的类型和宏
如果需要包含针对程序所开发的源文件,则应该使用第二种格式。
采用#include命令所插入的文件,通常文件扩展名是.h,文件包括函数原型、宏定义和类型定义。只要使用#include命令,这些定义就可被任何源文件使用。如下例所示:
#include”myproject.h”//用在当前项目中的函数
C语言输入一行字符,分别统计出其中英文字母,空格,数字和其它字符的个数.
- #include stdio.hint main(){int letter=0,space=0,number=0,others=0;char c;printf("请输入");for(;c!=n;){scanf("%c",&c);if((a=c&&c=z)||(A=c&&c=Z)) letter++;else if(c== ) space++; else if(0=c&&c=9) number++; else others++;}printf("letter=%d,space=%d,number=%d,others=%d",letter,space,number,others);}我只输了个123,为什么others=1????
- 帅锅,你还输了回车额
用c语言的数组方法求输入100个字符,统计个大写字母的个数
- #includestdio.hvoid缉窢光喝叱估癸台含郡 main(){ char s[120]; int i; int number=0; gets(s); for(i=0;s[i]!=0;i++) { if(s[i]=65&&s[i]=90) number++; } printf("大写字母一共有%d个",number);}
C语言统计字符串中字符个数,不用库函数
- #include &l筏厂摧断诋登搓券掸猾t;stdio.hint count_letter(char *str){ char *p = str; int cnt = 0; 开始计数 while (*p != 0) { if ((*p = a && *p = z) || (*p = A && *p = Z)) { cnt++; } p++; } 计数完成 printf("letter cnt:%dn", cnt); 打印出英文字母总数 return cnt; 计数结果返回}int main(){ char *str = "gkdial9-1.;J19D-=-=YdlUImf"; 实例字符串 count_letter(str); 调用计数函数 return 0;}以上源码。主要思路为循环到字符串结尾,逐字符判断是否属于字母范围(A到Z或a到z),如果为字母则计数器+1,直到字符为结束符0为止,表示字符串结束,并将结果返回给函数调用者。
C语言编程:输入一行字符,统计其中英文字母的个数?
- #includestdio.hint main(){char s[200];int i,n=0;gets(s);for(i=0;s[i];i++) if(s[i]=A&&s[i]=Z||s[i]=a&&s[i]=z)n++;printf("%dn",n);getch();return 0;}
C语言:编写一个程序,统计输入正文中每个数字字符,英文字符和其他字符出现的次数
- 分别定义几变量对字符串进行遍历再用switch进行分类统计即了
c语言 统计字符串中大写字母的个数
- ++*a++ss,&upper
c语言统计字符串个数为什么不能运行
- #include "stdio.h"int length(char *s){char *p;int a=0;p=s;while(s!=0){a++;}return a;}main(){char s[100];int b;printf("请输入一个字符串:");gets(s);b=length(s);printf("字符串长度为%d",b);}
- 做了一个dowhile循环,循环终止的条件输入Q,每次输入了一个字符,字符输入之后,以ascii码表示,然后做了一个switch循环 判断ascii码的值满足循环条件你所说的以回车作为输入结束一般是用在scanf输入的情况 这里用的是getchar()函数,还是存在差异的
C语言编程题:从键盘输入一串字符,统计其中的数字与字母个数并输出
- #include stdio.hint main(){ char st(char ); char c[20]; gets(c); st(c);}int st(char ){ int i, k=0, o=0, n=0; for(i=0; i20; i++) { if((c[i]a && c[i]z) || (c[i]A && c[i]Z)) k++; else if(c[i]0 && c[i]9) n++; else o++; } printf("数字有%d个n字母有%d个n字符有%d个", k, n, o);}程序的目的 写在题目上了,这个是自己编的,麻烦帮忙看下 不正确的地方 最后在代码旁边 注释上改
- #include stdio.h#include string.hint st(char *c, int len);int main(){ char c[20]; gets(c); int len = strlen(c); st(c, len);}int st(char *c, int len){ int i, k=0, o=0, n=0; for(i=0; ilen; i++) { if((c[i]=a && c[i]=z) || (c[i]=A && c[i]=Z)) k++; else if(c[i]=0 && c[i]=9) n++; else o++; } printf("数字有%d个n字母有%d个n字符有%d个", n, k, o);}修改成这样。
c语言,一串字符统计元音个数,大家看看这两串代码究竟有何不同,第一串会忽视第一个的字符。
- #includestdio.h int main() { int n,s1,s2,s3,s4,s5; int i,j; while(scanf("%d",&n)!=EOF){ getchar(); char str[100]; for(j=0;jn;j++) { gets(str); s1=s2=s3=s4=s5=0; i=0; while(str[i]!=0) { i++; if(str[i]==a)s1++; if(str[i]==e)s2++; if(str[i]==i)s3++; if(str[i]==o)s4++; if(str[i]==u)s5++; } printf("a:%dn",s1); printf("e:%dn",s2); printf("i:%dn",s3); printf("o:%dn",s4); printf("u:%dnn",s5); } } return 0;} 分割线———————————————————————————————————————————————————————————————————————-#includestdio.hint main(){int n;while(scanf("%d",&n)!=EOF){getchar();char str[1111];int i;for(i=1;i=n;i++){gets(str);int a=0,e=0,i=0,o=0,u=0;for(int j=0;str[j]!=0;j++){if(str[j]==a) a++;if(str[j]==e) e++;if(str[j]==i) i++;if(str[j]==o) o++;if(str[j]==u) u++;}printf("a:%dn",a);printf("e:%dn",e);printf("i:%dn",i);printf("o:%dn",o);printf("u:%dnn",u);}}return 0;}
- #includestdio.h int main() { int n,s1,s2,s3,s4,s5; int i,j; while(scanf("%d",&n)!=EOF){ getchar(); char str[100]; for(j=0;jn;j++) { gets(str); s1=s2=s3=s4=s5=0; i=0; while(str[i]!=0) { i++; 先判断,后自增 if(str[i]==a)s1++; if(str[i]==e)s2++; if(str[i]==i)s3++; if(str[i]==o)s4++; if(str[i]==u)s5++; i++; } printf("a:%dn",s1); printf("e:%dn",s2); printf("i:%dn",s3); printf("o:%dn",s4); printf("u:%dnn",s5); } } return 0;}
C语言 循环语句例题 统计从键盘输入一行字符的个数
- #include stdio.hint main(){ int n=0; printf("input a string:n"); while(getchar()!=n); { n++; } printf("%dn", n); return 0;}为什么我输入多少个字符,他都只显示1?
- #include "stdio.h"void main(){ char c[100]; int i; scanf("%s",c); i=printf("%s",c); printf("n %d charsn",i);}