C语言实践大作业

本文介绍了使用C语言编写一个班级学生成绩管理系统的实践作业。系统能输入并存储学生数据,按学号排序,并打印各科成绩表及总分最高分的学生详细信息。通过控制台函数控制,代码实现较为直接,适合初学者学习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目:一个班的学生(不超过50人),每个人的数据包括学号,姓名,五门课(英语、高数、马哲、计算机、电子技术)的成绩,要求从键盘输入此项数据,按学号从小到大的顺序打印出每门课程的成绩表以及总分最高分的学生的数据(包括学号、姓名、各门课的成绩、平均分数)

分析:刚开始作者在想如何能够利用循环输出每个成绩的成绩表,但是比较困难,那我们不妨想得简单点,先输入储存学生的数据,然后再总体输出每一项课程的成绩表,这样虽然繁琐,但比较简单,这些都是基于一个控制台函数的控制下完成的,在我们写C语言时,有时候用总控函数会获得奇效。

注意:每次选择程序后都要重新选择执行的程序

废话不多说,直接贴代码

#include<stdio.h>
struct stu         //结构体储存学生的信息
{
	int xuehao;   //学号
	char name[50];//姓名
	double en;    //英语
	double shuxue;//高数
	double mazhe; //马哲
	double jisuanji;//计算机
	double dianzi;//电子技术
	double sum;
}s[50];
int n = 0;          //记学生的数字 
void input();        //输入信息 
void PrintScore();   //输出各科学科学生信息 
void kongzhitai();   //控制台程序 
int max();    //寻找最高分学生信息       
int main()
{
	int i;
	kongzhitai();
	i =max();
	printf("最高分学生信息:\n");
	printf("学号\t\t姓名\t\t英语\t\t高数\t\t马哲\t\t计算机\t\t电子技术\t总分\n");
	printf("%d\t%s\t\t\t%0.1lf\t\t\t%0.1lf\t\t\t%0.1lf\t\t\t%0.1lf\t\t\t%0.1lf\t\t\t%0.1lf\n",s[i].xuehao,s[i].name,s[i].en,s[i].shuxue,s[i].mazhe,s[i].jisuanji,s[i].dianzi,s[i].sum);
	return 0;
}
void kongzhitai()
{  
    printf("***************底层码农Gn***********\n");
    printf("*****欢迎使用学生信息管理控制台系统*******\n");
    printf("*输入1模式为输入数据模式******************\n");
    printf("*输入2模式为打印学生成绩******************\n");
    printf("输入3模式为退出程序***********************\n");
    printf("请选择你要执行的模式:\n");
    while(1)
    {
	int x;
	scanf("%d",&x);
	if(x==1)
	{
		input();
	}
	else if(x==2)
	{
		PrintScore();
	}
	else if(x==3)
	{
		return;
	}
	else 
	{
		printf("输入错误,无法进行!\n");
	}
	printf("请选择你要执行的模式:");
    }
}

void input()
{
	    printf("请输入学号:");//一个一个对应数据输入 
		scanf("%d",&s[n].xuehao);
		printf("请输入姓名:");	
		n++;//对应相应的学生人数数 
		scanf("%s",s[n].name);
		printf("请输入英语成绩:");
		scanf("%lf",&s[n].en);
		printf("请输入高数成绩:");
		scanf("%lf&
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值