qq_58781931 2021-05-30 10:48 采纳率: 0%
浏览 32

求求大佬们救救我这个小白吧😥

有10位学生3门课的成绩如下。分别编写函数实现下列功能:

学号 姓名 高等代数 数学分析 大学英语

101 zhang 77 80 68

102 gu 80 70 50

103 zeng 79 71 54

104 li 70 60 56

105 hong 61 60 66

106 zhao 80 69 85

107 deng 90 79 72

108 he 80 78 81

109 tian 49 52 63

110 liu 67 72 76

(1)编写函数create建立一个有若干名学生数据信息(学号、姓名、成绩(3门课程的成绩))的单向动态链表;

(2)编写函数print输出动态链表,输出:学号、姓名、成绩(三门课程的成绩);(3)编写函数check查找学生信息动态链表中有没有不及格课程的学生,若有就输出该生信息;

(4)编写函数del把有课程不及格的学生信息节点予以删除,并用free函数释放所占动态存储空间。

(5)编写函数insert,用来向动态链表的表尾插入新结点(111,tan,81,71,76)(6)编写主函数,先后调用上面的函数,用来实现学生信息链表的建立及输出、删除及输出、插入及输出。

  • 写回答

3条回答 默认 最新

  • 关注
    #include "stdio.h"
    
    #define N 2
    struct Student
    {
    	//学号
    	int		num; //成员变量或者一个数据项
    	//姓名
    	char	name[20];
    	//性别
    	char	sex; //M,F
    	//成绩
    	float	html;	
    	float	ppt;
    	float	cyuyan;
    	float	sum;
    }st[N];
    void input();
    void display();
    void main()
    {
        input();
        display();
    }
    //输入函数
    void input()
    {
    	int i;
    	for(i=0;i<N;i++)
    	{
    		printf("请输入第%d个学生的学号,姓名,性别,html,ppt,cyuyan:",i+1);
    		scanf("%d",&st[i].num);
    		scanf("%s ",st[i].name);
    		scanf("%c ",&st[i].sex);
    		scanf("%f",&st[i].html);
    		scanf("%f",&st[i].ppt);
    		scanf("%f",&st[i].cyuyan);
    		st[i].sum = st[i].html+st[i].ppt+st[i].cyuyan;
    	}
    		
    }
    //输出
    void display()
    {
    	int i;
    	printf("学号\t姓名\t\t性别\thtml\tppt\tC语言\t总分\t平均分\n");	
    	for(i=0;i<N;i++)
    	{
    		printf("%d\t%s\t%c\t%0.2f\t%0.2f\t%0.2f\t%0.2f\t%0.2f\n",st[i].num,st[i].name,st[i].sex,st[i].html,st[i].ppt,st[i].cyuyan,st[i].sum,st[i].sum/3);
    	}	
    }
    评论

报告相同问题?

悬赏问题

  • ¥15 一道python难题2
  • ¥15 一道python难题
  • ¥15 用matlab 设计一个不动点迭代法求解非线性方程组的代码
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备