标题:新手,程序结果是对的,但不理解为什么会超时,师兄给的答案看不懂
取消只看楼主
肖逸凡
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2013-10-23
结帖率:0
已结贴  问题点数:15 回复次数:0 
新手,程序结果是对的,但不理解为什么会超时,师兄给的答案看不懂
输入包含多组数据,每组数据第一行为一个数字n,表示有n个字符(保证没有空格)。接下来一行n个字符。

Output
输出所有字符的ASCII码之和

Sample Input
5 ABCDE
Sample Output
335
我的答案(超时的,就是不知道为什么
#include<stdio.h>
int main()

{
int num,total,i;
char ch;

while(scanf("%d",&num)!=EOF)
{
    i=0;
    total=0;
    getchar;

    do
    {
        ch=getchar();
        total+=ch;
        i++;
    }
    while (i!=num);
printf("%d\n",total);
}

   
return 0;
}
师兄的正确答案(accepted)
#include<stdio.h>

int main()
{
int total,i;
int n;
char c;
while(scanf("%d",&n)!=EOF)
{
getchar();
total=0;
while(n--)
{
scanf("%c",&c);
{
total+=c;
}
}
printf("%d\n",total);
}
return 0;
}


怎么办?我不理解,看不明白。求大侠相助,
搜索更多相关主题的帖子: include 
2013-10-23 00:17



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-422366-1-1.html




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

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