求助小甲鱼C语言课后作业S1E15动动手的第0题
我的代码是这样的:#include<stdio.h>
int main()
{
int a,e,i,o,u;
char ch;
a=e=i=o=u=0;
printf("请输入一段英文句子:");
while(ch=getchar() != '\n')
{
if(ch=='a')
{
a++;
}
else if(ch=='e')
{
e++;
}
else if(ch=='i')
{
i++;
}
else if(ch=='o')
{
o++;
}
else if(ch=='u')
{
u++;
}
}
printf("a有%d个",a);
printf("e有%d个",e);
printf("i有%d个",i);
printf("o有%d个",o);
printf("u有%d个",u);
return 0;
}
输入句子之后所有元音打印出来都是0个,不知道哪错了
我看答案用的是switch语句,如果想用if语句该怎么改? 本帖最后由 jackz007 于 2022-9-26 18:24 编辑
#include <stdio.h>
int main(void)
{
char ch , e = {'a' , 'e' , 'i' , 'o' , 'u'} ;
int d = {0} , i , j , k , n ;
printf("请输入一段英文句子:") ;
for(i = 0 ; i < 5 ; i ++) d = 0 ;
for(; (ch = getchar()) !='\n' ;) {
for(i = 0 ; i < 5 ; i ++) if(ch == e || ch == e - 32) d ++ ;
}
for(i = 0 ; i < 5 ; i ++) {
if(d) printf("%c(%c)有 %d 个\n" , e , e - 32 , d) ;
}
}
编译、运行实况:
D:\\C>g++ -o x x.c
D:\\C>x
请输入一段英文句子:I'm a programmer !
a(A)有 2 个
e(E)有 1 个
i(I)有 1 个
o(O)有 1 个
D:\\C>
页:
[1]