| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付赛孚耐:软件保护加密专家
身份认证令牌USB KEY   
共有 97 人关注过本帖
标题:为什么运行结果出错
收藏  订阅  推荐  打印 
xkypp
Rank: 1
等级:新手上路
帖子:1
积分:210
注册:2008-12-1
为什么运行结果出错

cin>>i;
k=new int[i+1];
cout<<"请输入要排序的数字"<<endl;
for(j=1;j<(i+1);j++)
cin>>*(k+j);
cout<<"输入的数字为:"<<endl;
for(j=1;j<(i+1);j++)
cout<<*(k+j)<<" ";
cout<<endl;
for(j=1;j<(i+1);j++)
      {for(j=1;j<(i+1);j++)
        if (*(k+j)>*(k+j+1))
        {
          m=*(k+j);
          *(k+j)=*(k+j+1);
          *(k+j+1)=m;
        }
        for(j=1;j<(i+1);j++)
cout<<*(k+j)<<" ";
cout<<endl;
cout<<m;        
    }

}
运行结果它只做了第一个循环,且最后一个数字已经不对了,
搜索更多相关主题的帖子: 运行  结果  
2008-12-1 14:08
zhangyafei4353
Rank: 1
等级:新手上路
帖子:28
积分:428
注册:2008-11-28
可能楼主粗心,下面程序运行正确,供参考:

#include <iostream>
#include <iomanip>
#include <fstream>
#include <string>
using namespace std;

void main()
{

    int i,j,m,p,*k;
    char m_choice;
    cout<<"请输入要排序数的个数:";    cin>>i;
    k=new int[i+1];

    cout<<"请输入要排序的数字:\n";
    for(j=1;j<(i+1);j++)
     cin>>*(k+j);

    cout<<"输入的数字为:";
    for(j=1;j<(i+1);j++)
    cout<<*(k+j)<<" ";
    cout<<endl;    

    for(p=0;p<i-1;p++)
    {
        for(j=i-1;j>p;j--)
        if (*(k+j)>*(k+j+1))
        {
            m=*(k+j);
            *(k+j)=*(k+j+1);
            *(k+j+1)=m;
        }
    }

    cout<<"排列后的数字为:";
    for(j=1;j<(i+1);j++)
    cout<<*(k+j)<<" ";
    cout<<endl;

    while(m_choice!='Q')
    {    
        cout<<"请选择'Q'退出:"; cin>>m_choice;
    }
}
2008-12-1 16:58
tangwen88
Rank: 1
等级:新手上路
帖子:27
积分:444
注册:2008-11-5

3楼最后忘了delete k;
2008-12-1 18:45
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.061405 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved