rt3 发表于 2020-2-24 14:21:14

简单的a+b

题目

题目描述

输入两个整数a和b,计算a+b的和

注意此题是多组测试数据
输入

输入两个整数A和B

范围不超过2^10
输出

求A+B
样例输入

1 1
10 20

样例输出

2
30


我的答案

#include <stdio.h>

void main() {
    long x=0,y=0;
   
    while(1){
    scanf("%ld %ld",&x,&y);
    printf("%ld",x+y);
    }
}

提交后系统报错
输出超限

谢谢

te___amo 发表于 2020-2-24 14:21:15

#include <stdio.h>

void main() {
        intx = 0, y = 0;

        while (1) {
                scanf("%d %d", &x, &y);
                printf("%d", x + y);
        }
}


会不会是数据类型超出了限制 还是说那个提交网页不支持无限循环

chxchxkkk 发表于 2020-2-24 15:05:18

本帖最后由 chxchxkkk 于 2020-2-24 15:10 编辑

win10+Devc++5.11运行你这段代码没问题,没出现你说的情况。可能是编译器的问题吧
另外根据题意,应该这样写

#include <stdio.h>

int main()
{
        long x=0, y=0, c=0, d=0;
       
        while(1)
        {
                scanf("%ld %ld",&x, &y);
                scanf("%ld%ld", &c,&d);
                printf("%ld %ld\n",x+y,c+d);
               
        }
        return 0;
}

rt3 发表于 2020-2-24 15:37:29

chxchxkkk 发表于 2020-2-24 15:05
win10+Devc++5.11运行你这段代码没问题,没出现你说的情况。可能是编译器的问题吧
另外根据题意,应该这样 ...

我知道代码能通过编译,我说的报错是dotcpp的报错,这个题是dotcpp的练习题
2L答案提交上去也是一样的报错

te___amo 发表于 2020-2-24 15:40:50

把报错的内容截图看一下还有用的是什么编译器

小笨笨难得糊涂 发表于 2020-2-24 17:15:02

可以试试这个,把输入放到while的条件里,当输入结束时,完成输出,程序结束,就不会无限循环了。
#include<stdio.h>
int main()
{
    int a,b;
    while(~scanf("%d%d", &a, &b))printf("%d\n",a+b);
    return 0;
}

rt3 发表于 2020-2-24 21:14:33

小笨笨难得糊涂 发表于 2020-2-24 17:15
可以试试这个,把输入放到while的条件里,当输入结束时,完成输出,程序结束,就不会无限循环了。
#includ ...

这个答案能通过,但是在你回帖前我已经采纳了,不好意思
页: [1]
查看完整版本: 简单的a+b