杭电oj2027

标签:

编程初期大一篇

 

 

 

【BestCoder Round #2 来了!】7月27号19:00~21:00(赛前30分钟停止注册比赛)
 

统计元音
Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 36449    Accepted Submission(s): 15030

 

Problem Description     统计每个元音字母在字符串中出现的次数。
Input    输入数据首先包括一个整数n,表示测试实例的个数,然后是n行长度不超过100的字符串.


Output对于每个测试实例输出5行,格式如下:
a:num1
e:num2
i:num3
o:num4
u:num5
多个测试实例之间由一个空行隔开。

请特别注意:最后一块输出后面没有空行:
 Sample Input

2
    aeiou
 Sample Output

a:1
e:1
i:1
o:1
u:1

a:2
e:1
i:3
o:0
u:1
 my name is ignatius
 做这道题时,思路很清晰,但犯了一个错误,致使提交了一天也总是AC不过,下面是我原始的代码。

#include
int main()
{
   int j,n,a,e,i,o,u;
   char c[110],*p;
   while(scanf("%d",&n)!=EOF)
       {
           getchar();

           for(j=0;j
           gets(c);
           a=0;
           e=0;
           i=0;
           o=0;
           u=0;
          for(p=c;*p!='\0';p++)
           {
               if(*p=='a')
                     a=a+1;
               if(*p=='e')
                      e=e+1;
              if(*p=='i')
                      i=i+1;
             if(*p=='o')
                    o=o+1;
             if(*p=='u')
                    u=u+1;
             

       printf("a:%d\n",a);
       printf("e:%d\n",e);
       printf("i:%d\n",i);
       printf("o:%d\n",o);
       printf("u:%d\n",u);
       if(j
          printf("\n");
        }
   return 0; 
}
发现代码错误,改正时只是添加了一个花括号,AC!下面是改正后的代码。
#include
int main()
{
      int j,n,a,e,i,o,u;
      char c[110],*p;

      while(scanf("%d",&n)!=EOF)
              {
                      getchar();
                     for(j=0;j
                       
                            gets(c);
                             a=0;
                             e=0;
                             i=0;
                             o=0;
                             u=0;
                          for(p=c;*p!='\0';p++)
                                {
                                      if(*p=='a')
                                             a=a+1;
                                      if(*p=='e')
                                              e=e+1;
                                      if(*p=='i')
                                              i=i+1;
                                      if(*p=='o')
                                             o=o+1;
                                     if(*p=='u')
                                             u=u+1;
                                         }
                               printf("a:%d\n",a);
                               printf("e:%d\n",e);
                               printf("i:%d\n",i);
                               printf("o:%d\n",o);
                               printf("u:%d\n",u);
                               if(j
                                    printf("\n");
                              
                    }
                           return 0; 
     }图片
                错误代码的调试运行结果。
图片                   
                                 
改正后的代码的调试运行结果。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值