输入一行字符分别统计其中英文字母空格数字以及其他的字符的个数,要求用指针
#include
#define N 20
void count_char(char *p) ;
int main(void)
{
char string[N], *sp ;
int i ;
printf("please input a string:
") ;
gets(string) ; //这里改了,scanf遇空格就结束,gets遇回车才结束
sp = string ;
count_char(sp) ;
return 0 ;
}
/*分别统计出其中英文字母、空格、数字和其它字符的个数。*/
void count_char(char *p)
{
int count, num, space, another ;
count = 0 ;
num = 0 ;
space = 0 ;
another = 0 ;
while (*p != '\0') //改了,字符串存储时的结束标志是空字符而不是回车符;且不能判断后就p++,因为此时*p的内容还未统计
{
if (((*p >= 'a')&&(*p = 'A')&&(*p <= 'Z')))
count++ ;
else if((*p >= '0')&&(*p <= '9'))
num++ ;
else if(*p == ' ')
space++;
else
another++;
p++;
}
printf("a-z and A-Z is %d
", count) ;
printf("0-9 is %d
", num) ;
printf("space is %d
", space) ;
printf("another is %d
", another) ;
}
哪里错了?
#include <stdio.h>
#include <string.h>
int main()
{
int a, b, c, d;
char line[128];
char *p = line;
a = b = c = d = 0;//计数器初始化为0.
gets(line);
while (*p != '\0')//循环读取字符,到字符串结束标记结束。
{
if (*p >= '0' && *p <= '9')//数字
a++;
else if ((*p >= 'a' && *p <= 'z') || (*p >= 'A' && *p <= 'Z'))//字母
b++;
else if (*p == ' ')//空格
c++;
else //其它
d++;
p++;//指针后移
}
printf("%d %d %d %d
", a, b, c, d);//输出结果。
return 0;
}
输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数...
【答案】:程序分析:利用while语句,条件为输入的字符不为’\\n’。程序源代码如下。include"stdio.h"main(){ char c;int letters=0,space=0,digit=0,others=0;printf("please input some characters\\n");while((c=getchar())!='\\n'){ if(c>='a'&&c<='Z'||c>='A'&&c<=...
编程题: 输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个...
int main(void) { \/\/输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。char ch;int char_num=0,kongge_num=0,int_num=0,other_num=0;while((ch=getchar())!='\\n')\/\/回车键结束输入,并且回车符不计入 { if(ch>='a'&&ch<='z'||ch<='z'&&ch>='a') { cha...
输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数
程序首先定义了四个整型变量,分别表示四种类型的字符计数:letters(英文字母)、spaces(空格)、digits(数字)和others(其他字符)。然后通过一个while循环,用户输入一串字符,程序会逐个检查每个字符,根据其ASCII值进行分类计数。当输入的是大写或小写字母(ASCII值为65到90或97到122),就增加letters计...
输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数
includestdio.h intmain(){ charc;intletters=0,spaces=0,digits=0,others=0;printf(请输入一串任意的字符:\\n);while((c=getchar())!=\\n){ if((c=ac=z)||(c=Ac=Z))letters++;elseif(c=0c=9)digits++;elseif(c==)spaces++;else others++;} printf(字母有%d个,数字有%d个,空...
python 输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个...
)==1)))空格个数=len(list(i for i in 输入一行字符 if i==" "))其他个数=len(输入一行字符)-数字个数-中英文字母个数-空格个数print("{0}中有{1}个数字,{2}个中英文字母,{3}个空格个数,{4}个其他".format(输入一行字符,数字个数,中英文字母个数,空格个数,其他个数))...
输入一行字符,分别统计出其中的英文字母、空格、数字、和其他字符的个...
由于在ASCII码中,数字,大写字母,小写字母分别连续,所以可以根据边界值判断类型。二、算法设计:1、读入字符,直到遇到换行结束。2、对于每个字符,判断是字母还是数字,或者空格,或者是其它字符。3、对于每个字符判断后,对应类别计数器自加。4、最终输出结果。三、参考代码:include <stdio.h>int main...
C语言:输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个...
include <stdio.h>void main(){ int letter, space, digit, other; char ch; letter = space = digit = other = 0; while ((ch = getchar ()) != '\\n') { if (ch>='a' && ch <= 'z' || ch>='A'&&ch<='Z') letter++; else if (ch>='0' && ch <='9')...
raptor编程:输入一行字符,分别统计出其中英文字母、空格、数字和其他字...
在编程语言中,raptor编程是一种图形化编程环境,它使得编程变得直观和易于理解。为了实现一个简单的功能,即统计用户输入的一行字符中的英文字母、空格、数字和其他字符的数量,我们可以使用raptor的逻辑和流程图元素来构建一个程序。这个程序的目标是分析输入的文本,然后输出每个类别字符的数量。下面是一个...
用C语言编程:输入一行字符,分别统计出其中英文字母、空格、数字和其他字...
void main(){ char line[30];int i,count1=0,count2=0,count3=0,count4=0;printf("\\n请输入一行字符: ");gets(line);i=0;while(line[i]!='\\0'){ if(((line[i]>=97) && (line[i]<=122))||((line[i]>=65) && (line[i]<=90))){ count1++;} else if(line[i]==...
输入一行字符,分别统计出其中英文字母空格数字和其他字符个数的编程
int a=0,b=0,c=0,d=0;char e;printf("输入一串字符(回车结束):\\n");while((e=getch())!=13){ printf("%c",e);if((e>='a'&&e<='z')||(e>='A'&&e<='Z'))a++;else if(e>='0'&&e<='9')b++;else if(e==' ')c++;else d++;} printf("\\n英文字母:%d个...