c++代码 我是初学者,高手帮我看看,指导一下,谢谢啦!

来源:百度知道 编辑:UC知道 时间:2024/06/22 21:57:47
函数排序好像不对,如果用指针接收参数应该怎么做呀?

#include <stdio.h>
void paixu(int a[100][100],int c);
void main()
{
int i,j,c,n[100],student[100][100];
c=0;
for(i=0;i<100;i++)
{
c++;
printf("学号%d学生的考试成绩:\n");
for(j=0;j<3;j++)
{
scanf("%d",&student[i][j]);
}
}
printf("\n\n各学员本次考试成绩按数学成绩由高到低为"); //排序函数
paixu(student,c);
printf("\n数学\t语文\t英语\n");
for(i=0;i<c;i++)
{
for(j=0;j<3;j++)
printf("%d\t",student[i][j]);
}

}
void paixu(int a[100][100],int c)
{
int i,t;
for(i=0;i<c-1;i++)
{
if(a[i][0]<a[i+1][0])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
}
}

paixu(student,c);
改为paixu(student,&c)
void paixu(int a[100][100],int c)
改为(int *s,int *c)

if(a[i][0]<a[i+1][0])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
改为
if(a[i][0]<a[i+1][0])
{
t=*(a+i);
*(a+i)=*(a+1)
*(a+1)=t;
}

向你推荐一个C++高手,QQ:283269572