A. 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())!=' ')
{
if((c>='a'&&c<='z')||(c>='A'&&c<='Z'))
{
letters++;
}
else if(''==c)
{
space++;
}
else if(c>='0'&&c<='9')
{
digit++;
}
else
{
other++;
}
}
printf("字母的个数:>%d 空格的个数:>%d
数字的个数:>%d 其他字符的个数:>%d ",
letters,space,digit,other);
system("pause");
return 0;
}
(1)c语言输入一串字符统计数字个数扩展阅读:
include用法:
#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。
插入头文件的内容
#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:
1、#include<文件名>
2、#include"文件名"
如果需要包含标准库头文件或者实现版本所提供的头文件,应该使用第一种格式。如下例所示:
#include<math.h>//一些数学函数的原型,以及相关的类型和宏
如果需要包含针对程序所开发的源文件,则应该使用第二种格式。
采用#include命令所插入的文件,通常文件扩展名是.h,文件包括函数原型、宏定义和类型定义。只要使用#include命令,这些定义就可被任何源文件使用。如下例所示:
#include"myproject.h"//用在当前项目中的函数原型、类型定义和宏
你可以在#include命令中使用宏。如果使用宏,该宏的取代结果必须确保生成正确的#include命令。例1展示了这样的#include命令。
【例1】在#include命令中的宏
#ifdef _DEBUG_
#define MY_HEADER"myProject_dbg.h"
#else
#define MY_HEADER"myProject.h"
#endif
#include MY_HEADER
当上述程序代码进入预处理时,如果_DEBUG_宏已被定义,那么预处理器会插入myProject_dbg.h的内容;如果还没定义,则插入myProject.h的内容。
B. C语言编程题 统计数字字符个数
#include<stdio.h>
int main()
{
int i, n = 0;
char s[256];
printf("Please input a string:\n");
scanf("%s",&s);
for (i = 0; s[i]; i++)
if (s[i] >= '0' && s[i] <= '9')
n++;
printf("%d\n", n);
return 0;
}
C. c语言 从键盘输入一行字符,分别统计其中数字字符,字母字符和其他字符的个数
可以参考下面的代码:
#include <stdio.h>
intmain()
{
inta,b,c,ch;
a=b=c=0;//计数器初始化为0.
while((ch=getchar())!=' ')//循环读取字符,到换行结束。
{
if(ch>='0' && ch<='9')//数字
a++;
else if((ch>='a' && ch<='z')||(ch>='A' && ch<='Z'))//字母
b++;
else//其它
c++;
}
printf("%d%d%d ",a,b,c);//输出结果。
return0;
}
(3)c语言输入一串字符统计数字个数扩展阅读:
printf()函数函数
printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出信息。在编写程序时经常会用到此函数。函数的原型为:
int printf(const char *format, ...);
函数返回值为整型。若成功则返回输出的字符数,输出出错则返回负值,printf()函数的调用格式为:
printf("<格式化字符串>", <参量表>);
while语句的一般表达式为:while(表达式){循环体}。
D. C语言 从键盘读入一个字符串,统计其中的数字出现的个数
可以定义一个字符数组用来保存字符串
然后通过一次扫描来判断数组中每个变量是否为'0'-'9'(包括'0'和'9')
如果是则进行统计
当然也可以使用isdigit来判断是否有数字
下面是一个简单的代码
#include<stdio.h>
intmain(intargc,char**argv)
{
charbuf[20];
inti;
intcount=0;
printf("请输入一个字符串:");
scanf("%s",buf);
for(i=0;buf[i];++i)
{
if(isdigit(buf[i]))
++count;
}
printf("字符串:%s中有%d个数字! ",buf,count);
return0;
}
E. c语言输入字符串统计数字字符的个数,用换行符结束循环
#include<stdio.h>
intmain()
{
charch;
intdigit=0;
printf("输入字符串:");
while((ch=getchar())!=' ')
{
if(ch>='0'&&ch<='9')
digit++;
}
printf("数字字符个数=%d ",digit);
return0;
}
示例运行结果:
输入字符串: abcdg12459650klj546.
数字字符个数= 11
F. c语言输入数据统计数字个数
这个简单,只要变量字符串,判断每个字符是否是数字(str[i]>='0'
&&
str[i]
<=9就是数字)。如果当前位不是数字,但前一个字符是数字,就说明前面有过一个数字了(数字计数+1).
//比如:
#include<stdio.h>
int main()
{
in i,cnt=0;
char str[11]="ab12cd34dd";
for(i=1;i<11;i++)
if((str[i]<'0' || str[i]>'9') && (str[i-1]>='0' && str[i-1] <=9))
cnt++;
printf("个数%d\n"cnt);
return 0;
}
注意保存字符串的数组,多定义一位,最后一个元素必须是0(也就是结束符合‘\0’);比如上面
我写的常量"ab12cd34dd",只有10个字符,实际内存中有11个字符,最后一个字符就是‘\0’,
所以数组我定义11位,循环也是11位
G. C语言编程题:从键盘输入一串字符,统计其中的数字与字母个数并输出
#include<stdio.h>
int main()
{
char a[100];
char b[24];
int s[100] = { 0 };//用于存储字符的个数
gets(a);//输入字符
//开始比较
for (int x = 0; x < 24; x++)
{
int c = 0;//记录每个字符个数
b[x] = x + 97;//为了让b[0]是a,b[1]是b依次类推
for (int i = 0; i < 100; i++)
{
if (b[x] == a[i])
{
++c;
s[x] = c;
}
}
if (s[x]>=1)//只输出输入中有的字母 的个数
{
printf("%c %d ", b[x], s[x]);
}
}
getchar();
return 0;
}
(7)c语言输入一串字符统计数字个数扩展阅读:
gets()用法:
gets()函数用来从标准输入设备(键盘)读取字符串直到回车结束,但回车符
不属于这个字符串。其调用格式为:
gets(s);
其中s为字符串变量(字符串数组名或字符串指针)。
gets(s)函数与scanf("%s",s)相似,但不完全相同,使用scanf("%s",s)
函数输入字符串时存在一个问题,就是如果输入了空格会认为输入字符串结束,
空格后的字符将作为下一个输入项处理,但gets()函数将接收输入的整个字符
串直到回车为止。
示例:
#include<stdio.h>
int main()
{
char s[20];
printf("What's your name? ");
gets(s);
printf("%s ",s);
return 0;
}
当输入a bde回车的时候,会输出a bde。
H. C语言:输入一行字符,统计出其中数字字符的个数
#include <stdio.h>
int main()
{
int i,n=0;
char s[256];
fgets(s,256,stdin);
for(i=0;s[i];i++)
if(s[i]>='0'&&s[i]<='9')
n++;
printf("%d",n);
return 0;
}