| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 760 人关注过本帖
标题:数组问题,我写的程序运行出的结果不对?
取消只看楼主 加入收藏
jiawan007
Rank: 1
等 级:新手上路
帖 子:45
专家分:2
注 册:2009-8-1
结帖率:90.91%
收藏
已结贴  问题点数:10 回复次数:2 
数组问题,我写的程序运行出的结果不对?
题目要求输入以回车符结束的字符串(少于80个字符),统计其中大写的辅音字母(除了AEIOU这5个字母的辅音字母)。
我写的程序如下:
#include<stdio.h>
int main(void)
{
    int count=0,i=0,j=0;
    char str[80];
    char a[6]={'A','E','I','O','U','\0'};
    printf("Enter a string:");
    while((str[i]=getchar())!='\n')
        i++;
    str[i]='\0';
    for(i=0;str[i]!='\0';i++)
    for(j=0;a[j]!='\0';j++)
        if(str[i]>='A'&&str[i]<='Z'&&str[i]!=a[j])
            count++;
        printf("count=%d\n",count);
        return 0;
}
但是却运行不出正确结果,比如我输入AEIOU,count应该为0,但结果却是20,请问一下哪里错了,谢谢!
搜索更多相关主题的帖子: 运行 结果 
2009-12-23 13:52
jiawan007
Rank: 1
等 级:新手上路
帖 子:45
专家分:2
注 册:2009-8-1
收藏
得分:0 
回复 6楼 liangwenbc
请问一下最后的那个getch()有什么用?
2009-12-23 21:51
jiawan007
Rank: 1
等 级:新手上路
帖 子:45
专家分:2
注 册:2009-8-1
收藏
得分:0 
回复 6楼 liangwenbc
这个程序还是有问题,并没有排除小写字母。
我在你的基础上又修改了一下,已经可以运行出正确结果了。
程序如下:
#include<stdio.h>
int main(void)
{
    int count=0,i=0,j=0;
    char str[80];
    char a[6]={'A','E','I','O','U','\0'};
    printf("Enter a string:");
    while((str[i]=getchar())!='\n')
        i++;
    str[i]='\0';
    for(i=0;str[i]!='\0';i++){
    for(j=0;a[j]!='\0';j++)
        if(str[i]>='A'&&str[i]<='Z'&&str[i]==a[j]) break;
        if(str[i]>='A'&&str[i]<='Z'&&j==5) count++;
    }
        printf("count=%d\n",count);
        return 0;
}
非常感谢你给我启发!
2009-12-24 18:09
快速回复:数组问题,我写的程序运行出的结果不对?
数据加载中...
 
   



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

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