小白问题 结构体数组返回

 

你在结构体那块创建一个全局的对象,就可以全局共享来。

不能这么干,全局变量也并不是好主意。你的代码问题比较多,给你改一改

#include <stdio.h>
typedef struct _student
{
	int num;
	char name[10];
	int cj;
}student;

void input_stu(student *pStu,int n)
{
	for(int i=0;i<n;i++)
	{
		printf("NO:%d:学号 姓名 成绩:",i+1);
		scanf("%d %s %d",&pStu[i].num,pStu[i].name,&pStu[i].cj);
	}
}

void output_stu(student *pStu,int n)
{
	printf("\n学号		姓名		成绩\n");
	for(int i=0;i<n;i++)
		printf("%d\t%s\t%d\n",pStu[i].num,pStu[i].name,pStu[i].cj);
}

void main()
{
	int n;
	printf("请输入学生人数:");
	scanf("%d",&n);
	student *pStu = new student[n];
	input_stu(pStu,n);
	output_stu(pStu,n);
	int cj = 0;
	for(int i=0;i<n;i++)
		cj += pStu[i].cj;
	float f = cj*1.0/n;
	printf("\n平均成绩=%.1f\n",f);
	delete []pStu;
}

 

alt

您的问题已经有小伙伴解答了,请点击【采纳】按钮,采纳帮您提供解决思路的答案,给回答的人一些鼓励哦~~

ps:开通问答VIP,享受5次/月 有问必答服务,了解详情↓↓↓

【电脑端】戳>>>  https://vip.csdn.net/askvip?utm_source=1146287632
【APP 】  戳>>>  https://mall.csdn.net/item/52471?utm_source=1146287632