注册 登录
编程论坛 C++教室

希望大家帮我看看这个程序、看他错在哪儿了。谢谢,,

小学渣求指教 发布于 2014-03-07 11:12, 673 次点击
# include <iostream>
using namespace std;
struct xs
{
int 学号;
char 姓名[5];
char 性别;
int 成绩[3];
int 总成绩;
};
const int n=3;

int main()
{
    void input(struct xs *s,int n);
    void output(struct xs *s,int n);
    void px(struct xs *s);
    struct xs xsb[3];
    //cout<<"姓名"<<"     "<<"学号"<<"    "<<"性别"<<"    "<<"成绩1"<<"    "<<"成绩2"<<"    "<<"成绩3"<<"    "<<"总成绩"<<endl;
    input(xsb,3);
    cout<<"姓名"<<'\t'<<"学号"<<'\t'<<"性别"<<'\t'<<"成绩1"<<'\t'<<"成绩2"<<'\t'<<"成绩3"<<'\t'<<"总成绩"<<endl;
     px(xsb);
    output(xsb,3);
   
system("pause");
return 0;
}


void input(struct xs *s,int n)
{

for(int i=0;i<n;i++)
{
    cout<<"姓名:";
   cin>>s->姓名;
   cout<<"学号:";
   cin>>s->学号;
   cout<<"性别:";
   cin>>s->性别;
   cout<<"成绩1;";
   cin>>s->成绩[0];
   cout<<"成绩2;";
   cin>>s->成绩[1];
   cout<<"成绩3;";
   cin>>s->成绩[2];
   for(int m=0;m<3;m++)
   {
   s->总成绩=s->成绩[0]+s->成绩[1]+s->成绩[2];
   }
}
}

void px(struct xs *s)
{
for(int y=0;y<n;y++)
    {
    struct xs t;
    struct xs *s;
    int r,c;
    for(r=0;r<n;r++)
    {
    for(c=0;c<n-1-r;c++)
    if(s->总成绩>(s+1)->总成绩)
    {
    t=s[c];
    s[c]=s[c+1];
    s[c+1]=t;
    }
        s++;
    }
    }

}void output(struct xs *s,int n)
{        
for(int i=0;i<n;i++)
{
cout<<s->姓名<<'\t'<<s->学号<<'\t'<<s->性别<<'\t'<<s->成绩[0]<<'\t'<<s->成绩[1]<<'\t'<<s->成绩[2]<<'\t'<<s->总成绩<<endl;
s++;
}
}
8 回复
#2
rjsp2014-03-07 12:20
看看?!看不出来。即使看得出来,也没人愿意浪费时间去看。你还是用个编译器去编译一下吧,编译器会告诉你错在哪儿。

总之,若编译失败,应当贴出编译器给出的错误信息
若运行结果不符合你的预期,应当贴出你的输入信息、期待的输出信息 和 实际的输出信息。
#3
wp2319572014-03-07 12:49
以下是引用rjsp在2014-3-7 12:20:57的发言:

看看?!看不出来。即使看得出来,也没人愿意浪费时间去看。你还是用个编译器去编译一下吧,编译器会告诉你错在哪儿。

总之,若编译失败,应当贴出编译器给出的错误信息
若运行结果不符合你的预期,应当贴出你的输入信息、期待的输出信息 和 实际的输出信息。

顶  可能连编译运行都不晓得吧
反正  类似这样的贴子太多了
#4
peach54602014-03-07 16:18
看了,看不出来...
编译了才知道...
#5
小学渣求指教2014-03-07 20:47
回复 2楼 rjsp
程序是对的。。只是输出结果的时候输不出来,显示不出结果来。
#6
larkin2014-03-07 21:57
贴图,把运行信息粘贴出来就清楚了
#7
black19932014-03-07 22:01
这个不是没错么
#8
小学渣求指教2014-03-08 11:10
回复 6楼 larkin
只有本站会员才能查看附件,请 登录
#9
小学渣求指教2014-03-08 12:03
回复 6楼 larkin
排序的时候就不行了。如果把排序的哪儿注释起来。运行起来就是对的。、
1