| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2227 人关注过本帖, 3 人收藏
标题:帮忙看一下,哪里错了,谢谢!
取消只看楼主 加入收藏
当当
Rank: 1
等 级:新手上路
帖 子:235
专家分:0
注 册:2004-4-30
收藏(3)
 问题点数:0 回复次数:4 
帮忙看一下,哪里错了,谢谢!

/*编写一个程序,计算一行字母中的元音个数及辅音个数.*/ #include <stdio.h> #include <string.h> void main() { char x[20]; int y=0,f=0,i=0; printf("input wold:\n"); scanf("%s",x); for(i=0;i<20;i++) { switch(strlen(x[y])) { case 'a': case 'e': case 'i': case 'o': case 'u': case 'A': case 'E': case 'I': case 'O': case 'U': y++; break; default: f++; break; } } printf("y=%d f=%d",y,f); }

运行出错,一时又不知道出错在哪里,请大家批评指正.

[此贴子已经被作者于2004-06-01 22:38:01编辑过]

搜索更多相关主题的帖子: case wold include 
2004-06-01 22:18
当当
Rank: 1
等 级:新手上路
帖 子:235
专家分:0
注 册:2004-4-30
收藏
得分:0 

方法二:也有问题,请帮忙看一下.

#include <stdio.h> void main() { char x[80]; int f=0,i=0; printf("input wold:\n"); scanf("%s",x); for(i=0;'x[i]'!='\0';i++) { if(x[i]=='a'||x[i]=='e'||x[i]=='i'||x[i]=='o'||x[i]=='u' ||x[i]=='A'||x[i]=='E'||x[i]=='I'||x[i]=='O'||x[i]=='U') i++; else f++; } printf("元音=%d 辅音=%d\n",i,f); }

晕自己,那天在学校里还做得挺好的,一回家就搞忘记了,烦燥!请指点一下.谢谢

[此贴子已经被作者于2004-06-01 22:47:46编辑过]


学好编程就能编出自己的未来! 加油!自信!努力!奋斗!
2004-06-01 22:35
当当
Rank: 1
等 级:新手上路
帖 子:235
专家分:0
注 册:2004-4-30
收藏
得分:0 

还是不行啊.改成下面的格式了, #include <stdio.h> void main() { char x[80]; int y=0,f=0; printf("input wold:\n"); scanf("%s",x); for(y=0;x[y]!='\0';y++) { if(x[y]=='a'||x[y]=='e'||x[y]=='i'||x[y]=='o'||x[y]=='u' ||x[y]=='A'||x[y]=='E'||x[y]=='I'||x[y]=='O'||x[y]=='U') y++; else f++; } printf("y=%d f=%d \n",y,f); } 我输入zhanghaidangwangxuelian,出来的是y=23,f=11,我用了VC,Dev,C-Free三个编辑器都是一样的结果.

晕,得改成这样才行,还得定义一个变量: #include <stdio.h> void main() { char x[80]; int y=0,f=0,i=0; printf("input wold:\n"); scanf("%s",x); for(i=0;x[i]!='\0';i++) { if(x[i]=='a'||x[i]=='e'||x[i]=='i'||x[i]=='o'||x[i]=='u' ||x[i]=='A'||x[i]=='E'||x[i]=='I'||x[i]=='O'||x[i]=='U') y++; else f++; } printf("y=%d f=%d \n",y,f); } 晕自己,总算搞清楚了,谢谢版主啊,

[此贴子已经被作者于2004-06-02 18:40:11编辑过]


学好编程就能编出自己的未来! 加油!自信!努力!奋斗!
2004-06-02 18:19
当当
Rank: 1
等 级:新手上路
帖 子:235
专家分:0
注 册:2004-4-30
收藏
得分:0 
这个也是一样的,还是有问题,我改成这样了:
#include &lt;stdio.h&gt;
void main()
{
   char x[80];
   int y=0,f=0,i=0;
   printf("input wold:\n");
   scanf("%s",x);
   for(i=0;i&lt;80;i++)
   {
       switch(x[i])
       {
          case 'a':
          case 'e':
          case 'i':
          case 'o':
          case 'u':
          case 'A':
          case 'E':
          case 'I':
          case 'O':
          case 'U':
             y++;
             break;
           default:
             f++;
             break;
       }
   }
   printf("y=%d f=%d \n",y,f);
}
还是输入zhanghaidangwangxuelian,y=9这个算对了,但是f=71,它直接用80-9了,难道我非得输入80个字符吗?

学好编程就能编出自己的未来! 加油!自信!努力!奋斗!
2004-06-02 18:34
当当
Rank: 1
等 级:新手上路
帖 子:235
专家分:0
注 册:2004-4-30
收藏
得分:0 

谢谢版主,终于两种方法都搞清楚了,


学好编程就能编出自己的未来! 加油!自信!努力!奋斗!
2004-06-02 20:44
快速回复:帮忙看一下,哪里错了,谢谢!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031685 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved