大小写字母怎么区别,求助!!!谢谢
分别用while、do-while语句编写程序实现:输入一串字符,以“#”结束,输出其中小写字母个数、大写字母个数以及数字个数。 #include <stdio.h>int main(void)
{
char x ;
int a , b , c ;
a = b = c = 0 ;
while((x = getchar()) != '#' ) {
if(x >= 'a' && x <= 'z') a ++ ;
else if(x >= 'A' && x <= 'Z') b ++ ;
else if(x >= '0' && x <= '9') c ++ ;
}
printf("小写字母 : %d 个,大写字母:%d 个,数字字符:%d 个\n" , a , b , c) ;
}
#include <stdio.h>
int main(void)
{
char x ;
int a , b , c ;
a = b = c = 0 ;
do {
x = getchar() ;
if(x >= 'a' && x <= 'z') a ++ ;
else if(x >= 'A' && x <= 'Z') b ++ ;
else if(x >= '0' && x <= '9') c ++ ;
} while (x != '#') ;
printf("小写字母 : %d 个,大写字母:%d 个,数字字符:%d 个\n" , a , b , c) ;
} jackz007 发表于 2022-4-2 22:53
//第一种
#include <stdio.h>
void main()
{
char x;
x=getchar();
int a=0,b=0,c=0;
while(x!='#')
{
if(x>='a'&&x<='z')
a++;
else if(x>='A'&&x<='Z')
b++;
else if(x>='0'&&x<='9')
c++;
}
printf("小写字母个数:%d大写字母个数:%d数字个数:%d",a,b,c);
}
//第二种
/*#include <stdio.h>
void main()
{
char x;
int a=0,b=0,c=0;
while((x=getchar())!='#')
{
if(x>='a'&&x<='z')
a++;
else if(x>='A'&&x<='Z')
b++;
else if(x>='0'&&x<='9')
c++;
}
printf("小写字母个数:%d,大写字母个数:%d,数字个数:%d",a,b,c);
}*/
第二种x=getchar()放在表达式里面可以运行。
但是为什么第一种的x=getchar()放在char x;后面就会出错?
显示如下:
Compiling...
54456.c
D:\cYUYAN\Microsoft Visual Studio\c++\45446\54456.c(21) : error C2143: syntax error : missing ';' before 'type'
D:\cYUYAN\Microsoft Visual Studio\c++\45446\54456.c(25) : error C2065: 'a' : undeclared identifier
D:\cYUYAN\Microsoft Visual Studio\c++\45446\54456.c(27) : error C2065: 'b' : undeclared identifier
D:\cYUYAN\Microsoft Visual Studio\c++\45446\54456.c(29) : error C2065: 'c' : undeclared identifier
执行 cl.exe 时出错.
54456.obj - 1 error(s), 0 warning(s) 牛肉我刚开始 发表于 2022-4-3 13:25
//第一种
#include
void main()
应该是 char x 语句最后的分号被丢掉了。
页:
[1]