| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 701 人关注过本帖
标题:很简单的题,不知哪里出了问题
只看楼主 加入收藏
yshx88
Rank: 2
等 级:论坛游民
帖 子:57
专家分:68
注 册:2013-10-20
结帖率:100%
收藏
已结贴  问题点数:16 回复次数:11 
很简单的题,不知哪里出了问题
输入格式
输入为每行两个数:a,b,以EOF结束。
输出
输出所有a+b的值
样例输入
1 2
3 4
5 6
样例输出
3
7
11
程序如下:

#include<stdio.h>
void main()
{
    int a,b,n;
     while(scanf("%d",&n)!=EOF)
     {
        scanf("%d%d",&a,&b);
        printf("%d\n",a+b);
   
     }
}
哪里错了,为什么结果不对!
2013-10-27 14:05
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:4 
看看书上怎么说
2013-10-27 14:18
loveClangage
Rank: 8Rank: 8
来 自:广东云浮
等 级:蝙蝠侠
帖 子:326
专家分:891
注 册:2013-8-23
收藏
得分:4 
你思路错了,应该是先把所有数据输入,再输出嘛,我简单写了这个给你参考,
程序代码:
#include "stdafx.h"
int main()
{
    int n=0,a,b,i=0,j;
    int num[100]={0};
    printf("请输入测试组数:");
    scanf("%d",&n);
    for(int m=0;m<n;m++)
    {for(int u=1;u>=0;u--)
            {scanf("%d",&a);
             num[i]+=a; }
        i++;
        printf("\n");
    }
    for(j=0;j<i;j++)
        printf("%d\n",num[j]);
    scanf("%d",&b);
    return 0;
}

编写的程序,不能改变世界,却可以改变自己...
2013-10-27 15:46
Red_stone
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:32
专家分:120
注 册:2013-3-11
收藏
得分:4 
我来回答你吧:
你的程序有三个输入,a,b,n,输入n后再输入a,b,实现的是a+b,n无用。例如输入1 2 3(回车),得到的是5(2+3)。例如输入1 2 3 4 5 6(回车),得到的是5(2+3),11(5+6)。逻辑错了。
如果想得到你的输出要求,稍微改一下程序就可以了,如下:
#include<stdio.h>
void main()
{
    int a,b;
     while(scanf("%d",&a)!=EOF)
     {
        scanf("%d",&b);
        printf("%d\n",a+b);
   
     }
}
希望你能接纳我的回答。
2013-10-27 16:54
Red_stone
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:32
专家分:120
注 册:2013-3-11
收藏
得分:0 
我来回答你吧:
你的程序有三个输入,a,b,n,输入n后再输入a,b,实现的是a+b,n无用。例如输入1 2 3(回车),得到的是5(2+3)。例如输入1 2 3 4 5 6(回车),得到的是5(2+3),11(5+6)。逻辑错了。
如果想得到你的输出要求,稍微改一下程序就可以了,如下:
#include<stdio.h>
void main()
{
    int a,b;
     while(scanf("%d",&a)!=EOF)
     {
        scanf("%d",&b);
        printf("%d\n",a+b);
   
     }
}
希望你能接纳我的回答。
2013-10-27 16:57
Red_stone
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:32
专家分:120
注 册:2013-3-11
收藏
得分:0 
我来回答你吧:
你的程序有三个输入,a,b,n,输入n后再输入a,b,实现的是a+b,n无用。例如输入1 2 3(回车),得到的是5(2+3)。例如输入1 2 3 4 5 6(回车),得到的是5(2+3),11(5+6)。逻辑错了。
如果想得到你的输出要求,稍微改一下程序就可以了,如下:
#include<stdio.h>
void main()
{
    int a,b;
     while(scanf("%d",&a)!=EOF)
     {
        scanf("%d",&b);
        printf("%d\n",a+b);
   
     }
}
希望你能接纳我的回答。
2013-10-27 16:57
Red_stone
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:32
专家分:120
注 册:2013-3-11
收藏
得分:0 
我来回答你吧:
你的程序有三个输入,a,b,n,输入n后再输入a,b,实现的是a+b,n无用。例如输入1 2 3(回车),得到的是5(2+3)。例如输入1 2 3 4 5 6(回车),得到的是5(2+3),11(5+6)。逻辑错了。
如果想得到你的输出要求,稍微改一下程序就可以了,如下:
#include<stdio.h>
void main()
{
    int a,b;
     while(scanf("%d",&a)!=EOF)
     {
        scanf("%d",&b);
        printf("%d\n",a+b);
   
     }
}
希望你能接纳我的回答。
2013-10-27 16:57
那个人
Rank: 2
等 级:论坛游民
帖 子:20
专家分:32
注 册:2013-1-25
收藏
得分:4 
#include<stdio.h>

int main()
{
    int a,b,n;
    while(1)
    {
        printf("请输入两个数,中间用空格隔开\n");
        scanf("%d %d",&a,&b);
        printf("%d\n",n=a+b);
    }

    return 0;
}
用那么麻烦吗?这样不就行了
2013-10-27 20:18
那个人
Rank: 2
等 级:论坛游民
帖 子:20
专家分:32
注 册:2013-1-25
收藏
得分:0 
三楼的程序是啥意思,用的是什么编译器?
2013-10-27 20:19
yshx88
Rank: 2
等 级:论坛游民
帖 子:57
专家分:68
注 册:2013-10-20
收藏
得分:0 
回复 8楼 那个人
这样也对,可是你这是死循环,题中是以EOF为结束。

我的世界每天开出一朵花
2013-10-27 21:05
快速回复:很简单的题,不知哪里出了问题
数据加载中...
 
   



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

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