菜鸟问题C++程序报错帮忙看下错在哪?怎么改?

#definenum10#include<iostream>usingnamespacestd;intmain(){inti;inta[num];for(i=0;i<10... #define num 10
#include<iostream>
using namespace std;
int main()
{
int i;
int a[num];
for(i=0;i<10;i++)
{
cout<<"请输入第"<<i+1<<"名学生成绩"<<endl;
cin>>a[i];
}
sort(a[num]);
return 0;
}

void sort(int a[])
{
int i,j,t;
for(j=0;j<num;j++)
{
for(i=0;i<num-j;i++)
{
if(a[i>a[i+1]])
{
t=a[i+1];
a[i+1]=a[i];
a[i]=t;
}
}
}
for(i=0;i<num;i++)
{
cout<<a[i]<<endl;
}
}
展开
 我来答
Sangoly
2012-04-08 · TA获得超过108个赞
知道答主
回答量:81
采纳率:100%
帮助的人:80.4万
展开全部
#define num 10
#include<iostream>
using namespace std;
void sort(int a[]);
int main()
{
int i;
int a[num];
for(i=0;i<10;i++)
{
cout<<"请输入第"<<i+1<<"名学生成绩"<<endl;
cin>>a[i];
}
sort(a);//建议用指针操作,否则还要复制数组
return 0;
}

void sort(int* a)//指针操作
{
int i,j,t;
for(j=0;j<num;j++)
{
for(i=0;i<num-j;i++)
{
if(a[i]>a[i+1])//数组写错了
{
t=a[i+1];
a[i+1]=a[i];
a[i]=t;
}
}
}
cout<<"The result :"<<endl;
for(i=0;i<num;i++)
{
cout<<a[i]<<endl;
}
}
追问
哦,谢谢你的修改,我还想问下sort函数的形参设置为指针那把这个数组传递到函数中去不用取地址符吗?
追答
数组的名字是默认为指向此数组每一个元素的指针的
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式