咯咯哒1 发表于 2020-10-26 22:36:01

关于课后作业计算元音数程序的问题

0. 写一个程序,统计用户输入的字符串中,各个元音字母出现的次数(包含大小写的 a、e、i、o、u)。

#include<stdio.h>
int main()
{
    int a,e,i,o,u ;
    char h;
      a = 0;
      e = 0;
      i = 0;
      o = 0;
      u = 0;
    printf("请输入一个英文句子:");
    while((h = getchar()) != '\n')
    {
      if( h!=1)

      {
            if(h==a)

      {
            a = a+1;
            continue;
      }
         else if(h==e)
      {
            e = e+1;
             continue;
      }
         else if(h==i)
      {
            i = i+1;
             continue;
      }
         else if(h==o)
      {
            o = o+1;
             continue;
      }
         else if(h==u)
          {
            u = u+1;
             continue;
      }

      }

      else

      {
            break;
      }
    }
    printf("您输入的句子中,包含元音字母%d个",a+e+i+o+u);
    printf("其中:a(%d),e(%d),i(%d),o(%d),u(%d)",a,e,i,o,u);
    return 0;
}


为什么自己编写的这个程序为什么无论输入什么英文句子,最后输出的元音数全都是0呢?

昨非 发表于 2020-10-26 22:36:02

把每次判断里的aeiou都改成字符型就可以了
不然是你用来计数的整型,会出错的

昨非 发表于 2020-10-26 22:58:16

本帖最后由 昨非 于 2020-10-26 23:15 编辑

能别再发一鱼币的悬赏了吗? 磕碜不磕碜???

最近突然好多人拿一个鱼币发布悬赏贴子的
https://fishc.com.cn/thread-181062-1-1.html
(出处: 鱼C论坛)

建议帖子左下角【编辑】->左上角选择【帖子类型】->【求助帖】
改成普通问题再结帖,这样既不会扣除你的鱼币
我们也能得到更多奖励

昨非 发表于 2020-10-26 22:58:49

#include<stdio.h>
int main()
{
        int a, e, i, o, u;
        char h;
        a = 0;
        e = 0;
        i = 0;
        o = 0;
        u = 0;
        printf("请输入一个英文句子:");
        while ((h = getchar()) != '\n')
        {
                if (h != 1)

                {
                        if (h == 'a')

                        {
                                a = a + 1;
                                continue;
                        }
                        else if (h == 'e')
                        {
                                e = e + 1;
                                continue;
                        }
                        else if (h == 'i')
                        {
                                i = i + 1;
                                continue;
                        }
                        else if (h == 'o')
                        {
                                o = o + 1;
                                continue;
                        }
                        else if (h == 'u')
                        {
                                u = u + 1;
                                continue;
                        }

                }

        }
        printf("您输入的句子中,包含元音字母%d个", a + e + i + o + u);
        printf("其中:a(%d),e(%d),i(%d),o(%d),u(%d)", a, e, i, o, u);
        return 0;
}
页: [1]
查看完整版本: 关于课后作业计算元音数程序的问题