|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 wyz20010429 于 2021-9-20 16:17 编辑
#include<stdio.h>
#include<stdlib.h>
struct Student
{
char ID[20];
char name[20];
float grade[3];
float ave;
};
struct Student sax(struct Student stu[])
{
int i,m=0;
for(i=0;i<3;i++)
{
if(stu[i].ave>stu[m].ave)
{
m=i;
}
return stu[m];
}
}
int main()
{
int i,j;
float b;
int num;
printf("请输入学生个数 ");
scanf("%d",&num);
struct Student stu[num];
struct Student stt;
printf("开始输入学生信息!\n");
for(i=0;i<num;i++)
{
printf("请输入第%d个学生的信息\n",i+1);
printf("请输入学生ID!");
scanf("%s",stu[i].ID);
printf("请输入学生姓名:");
scanf("%s",stu[i].name);
printf("请输入三门成绩");
for(j=0;j<3;j++)
{
printf("第%d们成绩是:",j+1);
scanf("%d",stu[i].grade[j+1]);
}
stu[i].ave=(stu[i].grade[1]+stu[i].grade[2]+stu[i].grade[3])/3.0;
}
stt=sax(stu[3]);
return 0;
}
这个我没写完,但函数部分一直出错,求助各位大神这个函数那里出问题了?程序有点长,受累了!图片是运行错误
本帖最后由 jhq999 于 2021-9-20 20:09 编辑
- struct Student stu[num];//动态数组不是这么声明的
复制代码
- struct Student *stu=new struct Student[num]
- //用完了别忘了释放,养成好习惯
- delete[] stu;
复制代码
|
-
|