| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 847 人关注过本帖, 1 人收藏
标题:帮我看一下为什么没有答案输出(程序没错!)
只看楼主 加入收藏
ku_klox
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2010-4-3
结帖率:91.67%
收藏(1)
已结贴  问题点数:10 回复次数:9 
帮我看一下为什么没有答案输出(程序没错!)
#include <iostream.h>
int main(void)
{
    int a[1000];
    int n=0;
    while(cin>>a[n])
    {
        n++;
    }
    int sum=0;
    for(int i=0;i<n;i++)
    {
        sum=sum+a[i];
    }
    cout<<sum<<endl;
    return 0;
}
搜索更多相关主题的帖子: 输出 
2010-06-12 21:36
冰点小爱
Rank: 2
来 自:吉林长春
等 级:论坛游民
帖 子:39
专家分:49
注 册:2010-3-2
收藏
得分:1 
程序代码:
#include <iostream.h>
int main(void)
{
    int a[1000];
    int n;
    cout<<"要输入几个数:"<<endl;
    cin>>n;
    cout<<"输入要加和的数:"<<endl;
    for(int j=0;j<n;j++)
    {
        cin>>a[j];
    }
   
    int sum=0;
    for(int i=0;i<n;i++)
    {
        sum+=a[i];
    }
    cout<<"sum="<<sum<<endl;
    return 0;
} 

无耐,我写不出来,按你那个。我只有改一下了。反正功能一样。
2010-06-12 22:04
南国利剑
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:29
帖 子:1165
专家分:3536
注 册:2010-4-12
收藏
得分:1 
回复 楼主 ku_klox
你写的while循环是一个死循环,即使输入0,也无法跳出循环。
我按你的意思改了一下,你看看。
程序代码:
#include <iostream.h>
int main(void)
{
    int a[1000];
    int n=0;
    cin>>a[n];
    while(a[n])
    {
        n++;
        cin>>a[n];
    }
    int sum=0;
    for(int i=0;i<n;i++)
    {
        sum=sum+a[i];
    }
    cout<<sum<<endl;
    return 0;
} 

 

南国利剑
2010-06-12 23:06
Isilendil
Rank: 2
来 自:广东省广州市
等 级:论坛游民
帖 子:13
专家分:42
注 册:2010-6-2
收藏
得分:1 
其实没错的,关键是那句
while(cin >> a[n])
这种语句很多教材都使用的
要是想结束的话,按下Ctrl+Z,再enter,强制结束输入,就可以了
2010-06-13 01:10
ku_klox
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2010-4-3
收藏
得分:0 
回复 3楼 南国利剑
#include <iostream.h>
int main(void)
{
    int a[1000];
    int n=0;
    while(cin>>a[n],a[n])
    {
        n++;
    }
    int sum=0;
    for(int i=0;i<n;i++)
    {
        sum=sum+a[i];
    }
    cout<<sum<<endl;
    return 0;
}


我自己刚刚做出来了,这样可以输出了~
2010-06-13 01:52
lucky563591
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:4
帖 子:765
专家分:2103
注 册:2009-11-18
收藏
得分:1 
没有print或无限循环吗
2010-06-13 06:19
ekisstherain
Rank: 1
等 级:新手上路
帖 子:4
专家分:1
注 册:2010-3-1
收藏
得分:1 
以下是引用ku_klox在2010-6-13 01:52:09的发言:

#include
int main(void)
{
    int a[1000];
    int n=0;
    while(cin>>a[n],a[n])
    {
        n++;
    }
    int sum=0;
    for(int i=0;i


嗯,很好...
2010-06-13 10:08
gaoce227
Rank: 4
来 自:山东
等 级:业余侠客
帖 子:134
专家分:218
注 册:2008-4-5
收藏
得分:1 
回复 5楼 ku_klox
你while括号的是什么意思?
2010-06-13 11:59
lintaoyn
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:4
帖 子:606
专家分:2499
注 册:2009-4-8
收藏
得分:1 
赞成四楼的说法。
#include <iostream.h>
int main(void)
{
    int a[1000];
    int n=0;
    while(cin>>a[n])
    {
        n++;
        if(n==1000)break;//输入1000个数跳出循环,提前跳出就按四楼说的做。
    }
    int sum=0;
    for(int i=0;i<n;i++)
    {
        sum=sum+a[i];
    }
    cout<<sum<<endl;
    return 0;
}
while(cin>>a[n],a[n])//按这样写。那我1,0,2这三个数要什么输入?把0去掉可能是个办法。

迭代的是人,递归的是神。
2010-06-13 12:07
autumn2779
Rank: 1
等 级:新手上路
帖 子:11
专家分:7
注 册:2010-6-5
收藏
得分:1 
那个while像个无限循环
2010-06-13 15:25
快速回复:帮我看一下为什么没有答案输出(程序没错!)
数据加载中...
 
   



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

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