成绩管理系统(C语言)

成绩管理系统(C语言)

编写成绩管理程序

1.要求

a) 可以按学号输入高等数学成绩和大学物理成绩,分别存储在2个数组中,之后计算总成绩,保存在另外一个数组中(在3个数组中,元素的下标就是学号)。

b) 可以按学号次序显示学生的成绩;

c) 可以按总分、高等数学或大学物理成绩排序(注意:排序的时候不要改变数据元素在数组的次序,否则学号与成绩就不匹配了。可以使用一个辅助数组存储学生的学号,排序的时候只改变辅助数组的元素次序)。

d) 可以显示排序后的结果。

e) 程序要有简单的菜单。

2. 代码

#include<stdio.h>
#define course 2
#define stud 40
int input(int score[][course],long num[])
{
	int i,j,n;
    printf("\t\t======================================================\n");
    printf("\t\t||                   学生成绩管理系统              ||\n");
    printf("\t\t======================================================\n");
    printf("\t\t>>>输入学生的人数:");
	scanf("%d",&n);
	printf("\t\t请按顺序输入学号,学科成绩,不同项之间用 Tab 隔开:\n");
	printf("学号  高等数学 大学物理 \n");
	for(i=0;i<n;i++)
	{
		scanf("%ld",&num[i]);
		for(j=0;j<course;j++)
		{
			scanf("%d",&score[i][j]);
		}
	}
	return n;
}
void total(int score[][course],int sum[],int n)
{
	int i,j;
	for(i=0;i<n;i++)
	{
		sum[i]=0;
		for(j=0;j<course;j++)
		{
				sum[i]=sum[i]+score[i][j];
		}
		
	}
}
void sort(int score[][course],long num[],int sum[],int n)
{
	int temp,temp1,temp2,temp3;
	int i,j,k;




	for(i=0;i<n-1;i++)
		for(j=i+1;j<n;j++)
			if(sum[j]>sum[i])

			{
				temp=sum[j];
				sum[j]=sum[i];
				sum[i]=temp;

                for(k=0;k<course;k++)
				{
					temp3=score[j][k];
					score[j][k]=score[i][k];
					score[i][k]=temp3;
				}
				temp1=num[j];
				num[j]=num[i];
				num[i]=temp1;
			}
}
void print(int score[][course],long num[],int sum[],int n)
{
	int i,j;
	printf("Result:\n");
	printf("  \t  高等数学 \t  大学物理 \t总分 \n");
	for(i=0;i<n;i++)
	{
		printf("%4ld\t",num[i]);
		for(j=0;j<course;j++)
		{
			printf("%4d\t\t",score[i][j]);
		}
		printf("%5d \n",sum[i]);
	}

}

void main()
{
	int n;
	long num[stud];
	int score[stud][course],sum[stud];
	n=input(score,num);
	total(score,sum,n);
	sort(score,num,sum,n);
	print(score,num,sum,n);

}

3.报告总结

这个设计已经完成,a,b,c,d,e的功能都实现了。本学期开设的《数据结构基础》与c语言课程已经告一段落,现就学习体会进行学习总结.

刚开始学的时候确实有很多地方我很不理解,每次上课时老师都会给我们出不同的设计题目,对于我们一个初学者来说,无疑是一个具大的挑战,撞了几次壁之后,我决定静下心来,仔细去写程序。老师会给我们需要编程的内容一些讲解,顺着老师的思路,来完成自己的设计,我们可以开始运行自己的程序。

猜你喜欢

转载自blog.csdn.net/weixin_44908159/article/details/106892582
今日推荐