#includestdio.h
10年的南票网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整南票建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联从事“南票网站设计”,“南票网站推广”以来,每个客户项目都认真落实执行。
float score[3][2];
int i,j,xs=1,kc=1;
float pj(int i)
{float ping;
ping=(score[i][0]+score[i][1])/2;
return(ping);
}
float zuigao()
{
float max=0;
for(i=0;i3;i++)
for(j=0;j2;j++)
if(maxscore[i][j])
{
max=score[i][j];
xs=i;
kc=j;
}
return(max);
}
float zuidi()
{
float min=10000.0f; /*这里min初始化的值必须设置为一个大数,而不是0*/
for(i=0;i3;i++)
for(j=0;j2;j++)
if(minscore[i][j])
{
min=score[i][j];
xs=i;
kc=j;
}
return(min);
}
void main()
{
float max=0,min=10000.0f; /*这里min初始化的值必须设置为一个大数,而不是0*/
printf("请输入3个学生的成绩,按照课程顺序依次输入:\n");
for(i=0;i3;i++)
{ printf("第%d个学生",i+1);
for(j=0;j2;j++)
{ printf("第%d门课的成绩:\n",j+1);
scanf("%f",score[i][j]);
}
}
for(i=0;i3;i++)
printf("第%d个学生的平均分为:%.2f\n",i+1,pj(i));
printf("\n");
min=zuidi();
printf("6个分数中最低的分数是第%d个学生的第%d门课,分数为:%.2f\n",xs+1,kc+1,min);
max=zuigao();
printf("6个分数中最高的分数是第%d个学生的第%d门课,分数为:%.2f\n",xs+1,kc+1,max);
}
修改后:
#includestdio.h
void change(int b[],int a[],int n) // 这里要传入a,b,才能把a逆序到b中
{
int i;
for(i=0;in;i++)// 这里要逆序n个,不是n/2
b[i]=a[(n-(i+1))];/
}
int main()
{
int i,b[5],a[5]={1,2,3,4,5};
change(b,a,5);//这里调用也要修改一下
for(i=0;i5;i++)
printf("%d ",b[i]);
printf("\n");
return 0;
}
在vs中,stdlib.h中定义了max()宏,你的函数max与之重名了,导致函数名max被当做宏展开了,进而引发了语法错误。将你的函数改为其他名称,例如my_max即可。
函数定义的时候参数的数组 不可以带值的这样定义的
也就是 比如 void AA(a[],b) 但是 如果 []里面再放上内容就错了
可以定义成
void GS (float a[][],float b[],int eps, int n,int N)//
然后在函数内部 定义 i和j
也可以定义成指针型式
函数调用的时候 直接调用名字 什么都不加([])就可以了
除了主函数以外的三个函数的返回类型都是void,但是函数体内部却有返回值,所以错了,把void改成int就可以了。