| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 538 人关注过本帖
标题:用链队输出杨辉三角,我的程序只能输出两行,请好心的朋友帮我看下我的程序 ...
只看楼主 加入收藏
wxcstc
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2014-3-11
结帖率:66.67%
收藏
已结贴  问题点数:5 回复次数:6 
用链队输出杨辉三角,我的程序只能输出两行,请好心的朋友帮我看下我的程序哪错了
程序代码:
#include<iostream>
using namespace std;
class queue
{
public:
    queue();
    ~queue();
    bool empty() const;
    void append(int);
    int serve();
private:
    queue *front,*rear,*next;
    int data;
};
queue::queue()
{
    front=NULL;
    rear=NULL;
}
bool queue::empty() const
{
    if(front==NULL) return true;
    return false;
}
void queue::append(int x)
{
    queue*s=new queue;
    s->data=x;
    if(front==NULL)
    {
        front=s;
        rear=s;
    }
    else
    {
        rear->next=s;
        rear=s;
        rear->next=NULL;
    }
}
int queue::serve()
{
    int a;
    if(empty())return 0;
    queue*u;
    u=front;
    
    a=front->data;
    front=u->next;
    delete u;
    return a;
}
queue::~queue()
{
    while(!empty())serve();
}
void outnumber(int n)
{        
    int s1,s2,i,j,m=0;
    queue a;
    cout<<1<<endl;
    a.append(1);
    for(i=2;i<=n;i++)
    {
        
        s1=0;
        for(j=1;j<=i-1;j++)
        {
            s2=a.serve();//循环第二次时,这个语句不执行了,原因?
            cout<<s1+s2<<" ";
            a.append(s1+s2);
            s1=s2;
        }
        cout<<1<<endl;
        a.append(1);
    }
}
int main()
{
outnumber(3);
}

无论outnumber里的数怎么改,输出结果一直是
1
1 1
然后跳出一个框,说程序已停止工作
求解答,谢谢
搜索更多相关主题的帖子: 杨辉三角 color 朋友 
2014-03-25 07:55
hubinyes
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:11
帖 子:104
专家分:557
注 册:2014-2-4
收藏
得分:5 
void queue::append(int x)
{
    queue*s=new queue;
    s->data=x;
    if(front==NULL)
    {
        front=s;
        rear=s;
        front->next = rear;// here
    }
    else
    {
        rear->next=s;
        rear=s;
        rear->next=NULL;
    }
}
2014-03-25 10:26
wxcstc
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2014-3-11
收藏
得分:0 
嗯,多谢,的确是这里错了
2014-03-25 14:55
wxcstc
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2014-3-11
收藏
得分:0 
回复 2楼 hubinyes
能不能教下我这里怎么用setw函数使输出的整齐呢?
2014-03-25 15:36
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
以下是引用wxcstc在2014-3-25 15:36:40的发言:

能不能教下我这里怎么用setw函数使输出的整齐呢?

http://zhidao.baidu.com/link?url=uKU_wOJQzs-cH__Bgh0H1vpXbD3a8MIG9k78UI36cOlj4SpnB7Br9uW89Hnd9NYV845msq8nAigVHeHe7udXOq

DO IT YOURSELF !
2014-03-25 16:04
wxcstc
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2014-3-11
收藏
得分:0 
回复 5楼 wp231957
嗯,谢谢
2014-03-25 18:40
wxcstc
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2014-3-11
收藏
得分:0 
回复 2楼 hubinyes
额,我想问下,为什么少了那个就不行?我代入数字去推时没发现有问题啊
2014-03-26 18:21
快速回复:用链队输出杨辉三角,我的程序只能输出两行,请好心的朋友帮我看下我的 ...
数据加载中...
 
   



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

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