『壹』 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的内容。

『贰』 (C语言)关于统计一行数字字符中每个数字字符出现的次数。

大部分错误都集在中stat方法中,如下:

voidstat(char*s,int*num){
inti;
charch;
ch=s[i];//你上面只是定义了i,从未赋值,i的值就是一个随机数
while((ch=getchar())!=' '){//你前面的indata就已经读入数据到s中了,这里只应该从s中读取并比较它是不是就可以了,而不应该是getchar
if(ch>='0'&&ch<='9')
num[ch-'0']+=1;
}
}
另外一个很重要的错误,你的num数组在使用前也并未初始化,会导至num中的数字也全部是随机的

修改如下

#include<stdio.h>
#defineM10
#defineN10
voidindata(char*s){
inti;
for(i=0;i<M;i++)
s[i]=getchar();
}
voidstat(char*s,int*num){
inti=0;
charch;
ch=s[i];//取第一个元素
for(;i<N;i++)num[i]=0;//num初始化
i=0;
while(ch!=''){
if(ch>='0'&&ch<='9')
num[ch-'0']++;
ch=s[++i];//取下一元素
}
}
voidoutdata(int*num){
inti;
for(i=0;i<N;i++)
printf("%d:%d ",i,num[i]);
}
main(){
intnum[N];
chars[M];
indata(s);
stat(s,num);
printf("Outputtheresult: ");
outdata(num);
}

//当然stat也可以进一步简化,变为
voidstat(char*s,int*num){
inti=0;
charch;
for(;i<N;i++)num[i]=0;
i=0;
while((ch=s[i++])!=''){
if(ch>='0'&&ch<='9')
num[ch-'0']++;
}
}

『叁』 c语言输入数据统计数字个数

这个简单,只要变抄量字符串,判断袭每个字符是否是数字(str[i]>='0' && str[i] <=9就是数字)。如果当前位不是数字,但前一个字符是数字,就说明前面有过一个数字了(数字计数+1).

//比如:
#include<stdio.h>
intmain()
{
ini,cnt=0;
charstr[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 "cnt);
return0;
}

注意保存字符串的数组,多定义一位,最后一个元素必须是0(也就是结束符合‘’);比如上面
我写的常量"ab12cd34dd",只有10个字符,实际内存中有11个字符,最后一个字符就是‘’,
所以数组我定义11位,循环也是11位

『肆』 c语言字符数组中数字字符的统计

#include<stdio.h>
#include<string.h>

intmain(void)
{
intn,count,i,k,j,w;
chara[100];
scanf("%d",&n);
w=n;//先把n存起来n是一个用户输入的常量最好不要修改就算修改也要知道原始值
intb[100]={0};

while(n>0)
{
count=0;
scanf("%s",a);
k=strlen(a);

for(i=0;i<k;i++)
{
if(a[i]<='9'&&a[i]>='0')
{
count++;
}
}
b[n-1]=count;
n--;
}

//这时n已经等于0了!!!
//for(j=n-1;j>=0;j--)
for(j=w-1;j>=0;j--)
{
printf("%d ",b[j]);
}
return0;
}

『伍』 统计字符串中数字的个数并输出用C语言写出

#include <stdio.h>
#include <string.h>
int main()
{
char a[100];
unsigned int i,count=0;
printf("输入一字符串\n");
gets(a);
for(i=0;i<=strlen(a)-1;i++)
if(a[i]>='0'&&a[i]<='9')
count++;
printf("字符串中数字的个内数容是%d\n",count);
return 0;
}

『陆』 C语言中求输入若干字符统计其中字母及数字字符的个数

用下面的循环加判断就可以统计其中的字母和数字的个数:专
int i,zm=0,sz=0;
char s[200];
gets(s);
for(i=0;s[i];i++)
{
if(s[i]>='A'&&s[i]<='Z'||s[i]>='a'&&s[i]='z')zm++;
else if(s[i]>='0'&&s[i]='9')sz++;
}
printf("共有字属母%d 数字%d\n",zm,sz);

『柒』 C语言统计字符个数问题

两处错误:
1.
算符
优先级:
while(c=getchar()!='\n')
改成:内
while((c=getchar())!='\n')
2.拼写错误容:
if((c>='A')&&(c<='z')||(c>='a')&&(c<='z'))
改成:
if((c>='A')&&(c<='Z')||(c>='a')&&(c<='z'))

『捌』 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;

}

(8)c语言统计数字字符个数扩展阅读:

printf()函数函数

printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出信息。在编写程序时经常会用到此函数。函数的原型为:

int printf(const char *format, ...);

函数返回值为整型。若成功则返回输出的字符数,输出出错则返回负值,printf()函数的调用格式为:

printf("<格式化字符串>", <参量表>);

while语句的一般表达式为:while(表达式){循环体}。

『玖』 在c语言中怎么统计数字字符字母个数

#include <stdio.h>

int 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:%d\n", cnt); //打印出英文字母总数

return cnt; //计数结果返回
}

int main()
{
char *str = "gkdial9-1.;J19D-=-=YdlUImf"; //实例字符串
count_letter(str); //调用计数函数
return 0;
}

『拾』 C语言统计字符串中字母、数字的个数 以下是我的代码。

# include <stdio.h>int i,z=0,s=0,q=0;
void f1(char str[100],char str1[100],char str2[100],char str3[100]); //全局变量
int main ()
{
char str[100],str1[100],str2[100],str3[100];
printf ("input string:\n");
gets(str);
f1(str,str1,str2,str3);
printf ("字母数: %d %s\n",z,str1);
printf ("数字个数:%d %s\n",s,str2);
printf ("其他字符:%d %s\n",q,str3);
return 0;
}
void f1(char str[100],char str1[100],char str2[100],char str3[100])
{
for (i=0; str[i] != '\0'; i++)
if ((str[i] >= 'A') && (str[i] <= 'Z') || (str[i] >= 'a') && (str[i] <= 'z'))
{
str1[z++] = str[i];

}
else if (str[i] >= '0' && str[i] <= '9')
{
str2[s++] = str[i];

}
else
{
str3[q++] = str[i];

} str1[z] = '\0';
str2[s] = '\0';
str3[q] = '\0'; //全放在这里

}