首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

请教一下这个程序的算法有什么有关问题?新手,编译没有有关问题,执行结果异常

2012-06-15 
请问一下这个程序的算法有什么问题?新手,编译没有问题,执行结果错误不知道算法有什么问题?请问一下。。只是

请问一下这个程序的算法有什么问题?新手,编译没有问题,执行结果错误
不知道算法有什么问题?请问一下。。
只是一个按年龄排名输出的小程序。
#include <iostream>
using namespace std;
class stu{
char name;
int age;
public:
void getname(){cin>>name;}
void getage(){cin>>age;}
int outage(){return age;}
};
void main()
{
stu ss[5];
cout<<"请输入数据"<<endl;
for (int i=0;i<5;i++)
{
ss[i].getage();
cout<<"输入姓名"<<endl;
ss[i].getname();
}
int i,j;
for(i=4;i>0;i--)
{
stu sss;
for(j=0;j<=i;j++)
{
if(ss[j].outage()>ss[j+1].outage())
{
sss=ss[j];
ss[j]=ss[j+1];
ss[j+1]=sss;
}
}
cout<<ss[i].outage()<<endl;
}



}

[解决办法]

C/C++ code
#include <iostream>using namespace std;class stu{    char name;    int age;public:    void getname(){cin>>name;}    void getage(){cin>>age;}    int outage(){return age;}};void main(){    stu ss[5];    cout<<"请输入数据"<<endl;    for (int i=0;i<5;i++)    {        ss[i].getage();        cout<<"输入姓名"<<endl;        ss[i].getname();    }    int i,j;    for(i=4;i>0;i--)    {            stu sss;        for(j=0;j<i;j++)        {            if(ss[j].outage()>ss[j+1].outage())            {                sss=ss[j];                ss[j]=ss[j+1];                ss[j+1]=sss;            }        }        cout<<ss[i].outage()<<endl;    }}
[解决办法]
C/C++ code
#include <iostream>using namespace std;class stu{    char name;    int age;public:    void getname(){cin>>name;}    void getage(){cin>>age;}    int outage(){return age;}};void main(){    stu ss[5];    cout<<"请输入数据"<<endl;    for (int i=0;i<5;i++)    {        ss[i].getage();        cout<<"输入姓名"<<endl;        ss[i].getname();    }    int i,j;    for(i=4;i>0;i--)    {            stu sss;        for(j=0;j<i;j++)        {            if(ss[j].outage()>ss[j+1].outage())            {                sss=ss[j];                ss[j]=ss[j+1];                ss[j+1]=sss;            }        }        cout<<ss[i].outage()<<endl;    }}
[解决办法]
#include <iostream>
using namespace std;
class stu
{
char name;
int age;
public:
void getname(){cin>>name;}
void getage(){cin>>age;}
int outage(){return age;}
};
void main()
{
stu ss[5];
cout<<"请输入数据"<<endl;
int i,j;
for ( i=0;i<5;i++)
{
cout<<"请输入年龄";
ss[i].getage();
cout<<"输入姓名"<<endl;
ss[i].getname();
}

for(i=4;i>0;i--)

stu sss;
for(j=0;j<=i;j++)
{
if(ss[j].outage()>ss[j+1].outage())
{
sss=ss[j];
ss[j]=ss[j+1];
ss[j+1]=sss;
}
}
cout<<ss[i].outage()<<endl;
}
}


用这个,可以从大到小排序

热点排行
Bad Request.