求大神帮编写一个C语言结构体的程序,题目如下:

建立学生信息表有n个学生(学生个数自己定义),每个学生包含的信息有学号(num),姓名(name[20]),性别(sex),年龄(age),2门课的成绩(score[2]... 建立学生信息表
有n个学生(学生个数自己定义),每个学生包含的信息有学号(num),姓名(name[20]),性别(sex),年龄(age),2门课的成绩(score[2]),要求从键盘输入这n个同学的所有数据,然后调用一个函数(以数组名作为函数的参数),用来计算每个学生的总分和平均分,并且输出每个学生的所有数据。
展开
 我来答
梦醒南天
2019-01-12 · 学习乃进步之根本,创作是快乐的源泉
梦醒南天
采纳数:109 获赞数:361

向TA提问 私信TA
展开全部
#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int n = 0;

struct student{
    int num;
    char name[20];
    char sex[10];
    int age;
    float score[2];
    float sum;
    float average;
};

int InputAndOutput(struct student *stu)
{
    int i = 0;
    for(i=0; i<n; i++)
    {
        printf("请输入第 %d 个学生的信息: \n",i+1);
        printf("姓名: ");
        scanf("%s", stu[i].name);
        printf("性别: ");
        scanf("%s",stu[i].sex);
        printf("依次输入其他信息,格式为: 学号,年龄,成绩1,成绩2 \n");
        scanf("%d,%d,%f,%f", &(stu[i].num),&(stu[i].age),&(stu[i].score[0]),&(stu[i].score[1]));
        stu[i].sum = stu[i].score[0] + stu[i].score[1];
        stu[i].average = (float)stu[i].sum / 2;
    }

    printf("学生信息统计完毕: \n");
    for(i=0; i<n; i++)
    {
        printf("姓名: %s, 性别: %s, 学号: %d, 年龄: %d, 成绩1: %.2f, 成绩2: %.2f, 总分: %.2f, 平均分: %.2f \n",
               stu[i].name,stu[i].sex,stu[i].num,stu[i].age,stu[i].score[0],stu[i].score[1], stu[i].sum, stu[i].average);
    }

    return 0;
}


int main()
{
printf("请输入学生的人数: \n");
scanf("%d",&n);
struct student *students;

int size = n*sizeof(struct student);
students = (struct student *)malloc(size);
memset(students, 0, size);
    InputAndOutput(students);
    printf("\n");

return 0;
}

kongcup
2019-01-12 · TA获得超过442个赞
知道小有建树答主
回答量:149
采纳率:62%
帮助的人:81.1万
展开全部

根据问题描述,学生对应的结构体,可以定义如下:

	struct Student
{
int num;
char name[20];
int sex;
int age;
int score[2];
};
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
180******97
2019-01-12
知道答主
回答量:25
采纳率:0%
帮助的人:1.8万
展开全部
他的客户哦对突袭日语系第一自然以及虽然他G8虽然吓人好像也有游戏人间人呀显然又咋叫他东西好呀惊喜人机容易西京学院认认真真一日看小图看图吃鸡呀昨天的作业鸡肉卷小渔村太卡才痛苦惊喜天然卷发有
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式