下面这道编程题怎么做?
输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数。(分别使用while语句和do while语句实现) 展开
代码:
#include <stdio.h>
void main()
{
int letter=0,space=0,digit=0,other=0;
char c;
while((c=getchar())!='\n')
{
if('a'<=c && c<='z' || 'A'<=c && c<='Z')
letter++;
else if(c==' ')
space++;
else if('0'<=c && c<='9')
digit++;
else
other++;
}
printf("英文字母:%d\n",letter);
printf("空格:%d\n",space);
printf("数字:%d\n",digit);
printf("其它字符:%d\n",other);
}
简介:
编程,是让计算机为解决某个问题,而使用某种程序设计语言编写程序代码,并最终得到结果的过程。为了使计算机能够理解人的意图,人类就必须要将需解决的问题的思路、方法、和手段通过计算机能够理解的形式告诉计算机,使得计算机能够根据人的指令一步一步去工作,完成某种特定的任务。这种人和计算机之间交流的过程就是编程。
随计算机语言的种类非常多,可分成机器语言,汇编语言,高级语言三大类。计算机对除机器语言以外的源程序不能直接识别、理解和执行,都必须通过某种方式转换为计算机能够直接执行的。程序设计语言编写的源程序转换到机器目标程序有:解释方式和编译方式两种。
1.while
#include<stdio.h>
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'){
char_num++;
}else if(ch==' '){
kongge_num++;
} else if(ch>='0'&&ch<='9') {
int_num++;
} else{
other_num++;
}
}
printf("字母= %d,空格= %d,数字= %d,其他= %d\n",char_num,kongge_num,int_num,other_num);
return 0;
}
2 .do while:
#include<stdio.h>
int main(void)
{
char ch;
int char_num=0,kongge_num=0,int_num=0,other_num=0;
do{
if(ch>='a'&&ch<='z'||ch<='z'&&ch>='a'){
char_num++;
}else if(ch==' '){
kongge_num++;
}else if(ch>='0'&&ch<='9'){
int_num++;
}else{
other_num++;
}
} while((ch=getchar())!='\n')
printf("字母= %d,空格= %d,数字= %d,其它= %d\n",char_num,kongge_num,int_num,other_num);
return 0;
}