做一个成绩管理系统

1、主要功能

1.能够输入学生姓名

2.能够查看全班学生

3.能看单独查看某学生的分数,可以通过学号和姓名查看

4.能够输出班级的总分和平均分

2、代码部分

主函数

int main()
{

	int xt1, xt2;
b: xt_1();
	
	bool selected = false;
	while (!selected) {

		if (choice == 1) {
			system("cls");
			printf("\n**************************************\n");
			printf("\n**       欢迎使用成绩管理系统       **\n");
			printf("\n**------------------******************\n");
			printf("\n**|   1.进入系统   |  0.退出系统    **\n");
			printf("\n**------------------******************\n");
		}
		else {
			system("cls");
			printf("\n**************************************\n");
			printf("\n**       欢迎使用成绩管理系统       **\n");
			printf("\n*******************-----------------**\n");
			printf("\n**    1.进入系统   |  0.退出系统   |**\n");
			printf("\n*******************-----------------**\n");
		}


		char input = _getch(); // 获取键盘输入
		if (input == 75) { // 按下左箭头
			choice = 1;
		}
		else if (input == 77) { // 按下右箭头
			choice = 2;
		}
		else if (input == 49)
		{
			choice = 1;
			goto A;
		}
		else if (input == 48)
		{
			return 0;
		}
		else if (input == 13) { // 按下回车键
A:			selected = true;
			bool selected = false;
			if (choice == 1) {

				xt_2();
				printf("请选择");
				
				while (!selected) {
					displayMenu(choice);

					char input = _getch(); // 获取键盘输入
					
					if (input == 72) { // 按下上箭头
						choice = (choice - 1) > 0 ? (choice - 1) : 7;
						Sleep(10);
					}
					else if (input == 80) { // 按下下箭头
						choice = (choice + 1) <= 7 ? (choice + 1) : 1;
						Sleep(10);
					}
					else if (input == 49)
					{
						choice = 1;
						goto a;
					}
					else if (input == 50)
					{
						choice = 2;
						goto a;

					}
					else if (input == 51)
					{
						choice = 3;
						goto a;

					}
					else if (input == 52)
					{
						choice = 4;
						goto a;

					}
					else if (input == 53)
					{
						choice = 5;
						goto a;

					}
					else if (input == 54)
					{
						choice = 6;
						goto a;

					}
					else if (input == 55)
					{
						choice = 7;
						goto a;

					}

					else if (input == 13) { // 按下回车键
a:						selected = true;
						switch (choice) {
						case 1:
							xt_3();
							break;
						case 2:
							cd2();//完成按学号顺序显示原始成绩功能
							break;
						case 3:
							cd3();//完成显示学号、姓名、总分、平均分功能
							break;
						case 4:
							cd4();//按总分由高到低顺序打印班级成绩单
							break;
						case 5:
							cd5();//查询学生成绩(输入学号或输入姓名,输出该生所有成绩)
							break;
						case 6:
							cd6();//输出每门课的最高分,最低分,平均分,及格率
							break;
						case 7:
							goto b;
						}
					}
				}

			}
			else {
				printf("\n********************\n");
				printf("\n感谢使用,再见!!!\n");
				printf("\n********************\n");
				exit(0);
			}
		}
	}


	return 0;
}

这里面包含了对菜单1的操作

第一个菜单

void xt_1()
{
	system("cls");
	printf("\n************************************\n");
	printf("\n**      欢迎使用成绩管理系统      **\n");
	printf("\n************************************\n");
	printf("\n**  1.进入系统       0.退出系统   **\n");
	printf("\n************************************\n");

}

这就是菜单1的代码

system(“cls“)是用来清屏的

当选择进入的时候我们就要将菜单二显示出来

第二个菜单 

void xt_2()
{
	system("cls");
	printf("\n--------------------------\n");
	printf("\n|  1.输入成绩            |\n");
	printf("\n--------------------------\n");
	printf("\n|  2.显示原始成绩        |\n");
	printf("\n--------------------------\n");
	printf("\n|  3.每个人的总分和平均分|\n");
	printf("\n--------------------------\n");
	printf("\n|  4.打印班级成绩单      |\n");
	printf("\n--------------------------\n");
	printf("\n|  5.查询学生成绩        |\n");
	printf("\n--------------------------\n");
	printf("\n|  6.单科成绩分析        |\n");
	printf("\n--------------------------\n");
	printf("\n|  7.返回上级菜单        |\n");
	printf("\n--------------------------\n");
}

接下来就是对应个选择做出的输出

void displayMenu(int choice)
{
	system("cls");
	if (choice == 1) {
		printf("\n**************************\n");
		printf("\n*  1.输入成绩            *\n");
		printf("\n**************************\n");
		printf("\n|  2.显示原始成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  3.每个人的总分和平均分|\n");
		printf("\n--------------------------\n");
		printf("\n|  4.打印班级成绩单      |\n");
		printf("\n--------------------------\n");
		printf("\n|  5.查询学生成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  6.单科成绩分析        |\n");
		printf("\n--------------------------\n");
		printf("\n|  7.返回上级菜单        |\n");
		printf("\n--------------------------\n");
	}
	else if (choice == 2) {
		printf("\n--------------------------\n");
		printf("\n|  1.输入成绩            |\n");
		printf("\n**************************\n");
		printf("\n*  2.显示原始成绩        *\n");
		printf("\n**************************\n");
		printf("\n|  3.每个人的总分和平均分|\n");
		printf("\n--------------------------\n");
		printf("\n|  4.打印班级成绩单      |\n");
		printf("\n--------------------------\n");
		printf("\n|  5.查询学生成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  6.单科成绩分析        |\n");
		printf("\n--------------------------\n");
		printf("\n|  7.返回上级菜单        |\n");
		printf("\n--------------------------\n");
	}
	else if (choice == 3) {
		printf("\n--------------------------\n");
		printf("\n|  1.输入成绩            |\n");
		printf("\n--------------------------\n");
		printf("\n|  2.显示原始成绩        |\n");
		printf("\n**************************\n");
		printf("\n*  3.每个人的总分和平均分*\n");
		printf("\n**************************\n");
		printf("\n|  4.打印班级成绩单      |\n");
		printf("\n--------------------------\n");
		printf("\n|  5.查询学生成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  6.单科成绩分析        |\n");
		printf("\n--------------------------\n");
		printf("\n|  7.返回上级菜单        |\n");
		printf("\n--------------------------\n");
	}
	else if (choice == 4 ) {
		printf("\n--------------------------\n");
		printf("\n|  1.输入成绩            |\n");
		printf("\n--------------------------\n");
		printf("\n|  2.显示原始成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  3.每个人的总分和平均分|\n");
		printf("\n**************************\n");
		printf("\n*  4.打印班级成绩单      *\n");
		printf("\n**************************\n");
		printf("\n|  5.查询学生成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  6.单科成绩分析        |\n");
		printf("\n--------------------------\n");
		printf("\n|  7.返回上级菜单        |\n");
		printf("\n--------------------------\n");
	}
	else if (choice == 5 ) {
		printf("\n--------------------------\n");
		printf("\n|  1.输入成绩            |\n");
		printf("\n--------------------------\n");
		printf("\n|  2.显示原始成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  3.每个人的总分和平均分|\n");
		printf("\n--------------------------\n");
		printf("\n|  4.打印班级成绩单      |\n");
		printf("\n**************************\n");
		printf("\n*  5.查询学生成绩        *\n");
		printf("\n**************************\n");
		printf("\n|  6.单科成绩分析        |\n");
		printf("\n--------------------------\n");
		printf("\n|  7.返回上级菜单        |\n");
		printf("\n--------------------------\n");
	}
	else if (choice == 6) {
		printf("\n--------------------------\n");
		printf("\n|  1.输入成绩            |\n");
		printf("\n--------------------------\n");
		printf("\n|  2.显示原始成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  3.每个人的总分和平均分|\n");
		printf("\n--------------------------\n");
		printf("\n|  4.打印班级成绩单      |\n");
		printf("\n--------------------------\n");
		printf("\n|  5.查询学生成绩        |\n");
		printf("\n**************************\n");
		printf("\n*  6.单科成绩分析        *\n");
		printf("\n**************************\n");
		printf("\n|  7.返回上级菜单        |\n");
		printf("\n--------------------------\n");
	}
	else if (choice == 7) {
		printf("\n--------------------------\n");
		printf("\n|  1.输入成绩            |\n");
		printf("\n--------------------------\n");
		printf("\n|  2.显示原始成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  3.每个人的总分和平均分|\n");
		printf("\n--------------------------\n");
		printf("\n|  4.打印班级成绩单      |\n");
		printf("\n--------------------------\n");
		printf("\n|  5.查询学生成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  6.单科成绩分析        |\n");
		printf("\n**************************\n");
		printf("\n*  7.返回上级菜单        *\n");
		printf("\n**************************\n");
	}

}

然后根据选择进入

第一部分

void xt_3()
{
	int i, j;
	system("cls");
	printf("请输入学号、姓名、六门课成绩,中间以空格分开\n");
	for (i = 0; i < m; i++)
	{
		scanf_s("%s", xh[i]);
		scanf_s("%s", name[i]);
		for (j = 0; j < n; j++)
			scanf_s("%d", &fs[i][j]);
	}
}

第二部分

void cd2()
{
	int i, j;
	system("cls");
	printf("———————————————学生四门课成绩如下:———————————\n");
	printf("|  学号  |  姓名  |  语文  |  数学  |电子电工| C语言  | 计算机 |  英语  |\n");
	printf("————————————————————————————————————\n");
	for (i = 0; i < m; i++)
	{
		printf("|%-5s|", xh[i]);
		printf(" %-7s|", name[i]);
		for (j = 0; j < n; j++)

			printf("   %-5d|", fs[i][j]);
		printf("\n————————————————————————————————————\n");



	}
	system("pause");
	main();

}

第三部分

void cd3()
{
	int i, j;
	int sum;
	system("cls");
	printf("---------------------------------\n");
	printf("|学号  |  姓名  |  总分 | 平均分|\n");
	printf("---------------------------------\n");
	for (j = 0; j < m; j++)
	{
		sum = 0;
		for (i = 0; i < n; i++)

			sum = sum + fs[j][i];
		zf[j] = sum;
		pjf[j] = sum / n;
		printf("%-9s", xh[j]);
		printf("%-9s", name[j]);
		printf("%-6d", zf[j]);
		printf("%-6.1f", pjf[j]);
		printf("\n");

	}
	system("pause");
	main();
}

第四部分

void cd4()
{
	system("cls");
	int i, j, k;

	float t, sum;
	char p[9];
	for (j = 0; j < m; j++)
	{
		sum = 0;
		for (i = 0; i < n; i++)
			sum = sum + fs[j][i];
		zf[j] = sum;
		pjf[j] = sum / n;
	}
	for (i = 0; i < m - 1; i++)

		for (j = 0; j < m - 1 - i; j++)
			if (zf[j] < zf[j + 1])
			{
				strcpy_s(p, name[j]);
				strcpy_s(name[j], name[j + 1]);
				strcpy_s(name[j + 1], p);
				strcpy_s(p, xh[j]);
				strcpy_s(xh[j], xh[j + 1]);
				strcpy_s(xh[j + 1], p);
				for (k = 0; k < n; k++)
				{
					t = fs[j + 1][k];
					fs[j + 1][k] = fs[j][k];
					fs[j][k] = t;
				}
				t = zf[j];
				zf[j] = zf[j + 1];
				zf[j + 1] = t;
				t = pjf[j];
				pjf[j] = pjf[j + 1];
				pjf[j + 1] = t;
			}
	printf("------------------------------------------------------------------------------------------------------------------------\n");
	printf("|                                                    班级成绩单                                                        |\n");
	printf("------------------------------------------------------------------------------------------------------------------------\n");
	printf("|   学号   |   姓名   |    语文    |    数学    |  电子电工  |   c语言    |   计算机   |    英语    |   总分  | 平均分 |\n");
	printf("------------------------------------------------------------------------------------------------------------------------\n");
	for (i = 0; i < m; i++)
	{
		if (i >= 1)
		{
			printf("------------------------------------------------------------------------------------------------------------------------\n");
		}
		printf("| %-9s|", xh[i]);
		printf("  %-8s|", name[i]);
		for (j = 0; j < n; j++)
			printf("    %-8d|", fs[i][j]);
		printf("   %-6d|", zf[i]);
		printf("  %-6.1f|\n", pjf[i]);
	}
	printf("------------------------------------------------------------------------------------------------------------------------\n");
	system("pause");
	main();
}

第五部分

void cd5()
{
	int i, j, k, xt3, x;
	int sum;
	char a[9];
	char b[9];
	caidan3();
	for (x = 0; x < m; x++)
	{
		sum = 0;
		for (i = 0; i < n; i++)
			sum = sum + fs[x][i];
		zf[x] = sum;
		pjf[x] = sum / n;

	}
	bool selected = false;
	while (!selected) {

		if (choice == 1) {
			system("cls");
			printf("\n--------------------------------------------\n");
			printf("\n|               查询学生成绩               |\n");
			printf("\n****************----------------------------\n");
			printf("\n* 1.按学号查询 * 2.按姓名查询 | 3.返回主页 |\n");
			printf("\n****************----------------------------\n");
		}
		else
			if (choice == 2) {
				system("cls");
				printf("\n--------------------------------------------\n");
				printf("\n|               查询学生成绩               |\n");
				printf("\n-------------- **************** ------------\n");
				printf("\n| 1.按学号查询 * 2.按姓名查询 * 3.返回主页 |\n");
				printf("\n-------------- **************** ------------\n");
			}
			else
				if(choice==3)
			{
				system("cls");
				printf("\n--------------------------------------------\n");
				printf("\n|               查询学生成绩               |\n");
				printf("\n------------------------------**************\n");
				printf("\n| 1.按学号查询 | 2.按姓名查询 * 3.返回主页 *\n");
				printf("\n------------------------------**************\n");
			}
		char input = _getch(); // 获取键盘输入
		if (input == 75) { // 按下左箭头
			choice = (choice - 1) > 0 ? (choice - 1) : 3;
		}
		else if (input == 77) { // 按下右箭头
			choice = (choice + 1) <= 3 ? (choice + 1) : 1;
		}
		else if (input == 49)
		{
			choice = 1;
			goto c;
		}
		else if (input == 50)
		{
			choice = 2;
			goto d;
		}
		else if (input == 51)
		{
			choice = 3;
			main();
		}
		else if (input == 13) { // 按下回车键
			selected = true;
			if (choice == 1) {
c:				
					printf("请输入学号:");
				scanf_s("%c", &a);
				for (i = 0; i < m; i++)
					if (strcmp(xh[i], a) == 0)
					{
						j = i;
						break;
					}
				if (i < m)
				{
					printf("学号   姓名   语文   数学   电子电工   c语言   计算机   英语   总分   平均分\n");
					printf("%-9s", xh[j]);
					printf("%-9s", name[j]);
					for (i = 0; i < n; i++)
						printf("%-8d", fs[j][i]);
					printf("%-6.0d", zf[j]);
					printf("%-8.1f", pjf[j]);
					printf("\n");
				}
				else
					printf("******查无此人******\n");
			}
			else
				if (choice == 2)
				{
d:					
					printf("请输入姓名:");
					scanf_s("%c", b);
					for (i = 0; i < m; i++)
						if (strcmp(name[i], b) == 0)
						{
							j = i;
							break;
						}
					if (i < m)
					{
						printf("学号   姓名   语文   数学   电子电工   c语言   计算机   英语   总分   平均分\n");
						printf("%-9s", xh[j]);
						printf("%-9s", name[j]);
						for (i = 0; i < n; i++)
							printf("%-8d", fs[j][i]);
						printf("%-6.0d", zf[j]);
						printf("%-8.1f", pjf[j]);
						printf("\n");
					}
					else
						printf("******查无此人******\n");
				}
			system("pause");
		}
	}
	main();
}

与第二部分相对应的菜单

void caidan3()
{
	system("cls");
	printf("\n--------------------------------------------\n");
	printf("\n|               查询学生成绩               |\n");
	printf("\n--------------------------------------------\n");
	printf("\n| 1.按学号查询 | 2.按姓名查询 | 3.返回主页 |\n");
	printf("\n--------------------------------------------\n");

}

第六部分

void  cd6()
{
	int i, j, a, sum[n], max[n], min[n], c[3] = { 60,30,90 };
	float ave[n], jgl[n], cfl[n], yfl[n], x, y, z;
	system("cls");
	caidan4();
	scanf_s("%d", &a);
	for (j = 0; j < n; j++)
	{
		sum[j] = 0;
		z = y = x = 0;
		max[j] = min[j] = fs[0][j];
		for (i = 0; i < m; i++)
		{
			sum[j] = sum[j] + fs[i][j];
			if (fs[i][j] > 60)
				x++;
			if (fs[i][j] > 30)
				y++;
			if (fs[i][j] > 90)
				z++;
			if (fs[i][j] > max[j])
				max[j] = fs[i][j];
			if (fs[i][j] > min[j])
				min[j] = fs[i][j];
		}
		ave[j] = sum[j] / m;
		jgl[j] = x / m;
		cfl[j] = y / m;
		yfl[j] = z / m;
	}
	printf("学科   班级   应考人数   实考人数   总分   总均分   最高分   最低分   及格率   差分率   优分率\n");
	printf("%-6s", sub[a - 1]);
	printf("202233");
	printf("     10        10       ");
	printf("%-8d", sum[a - 1]);
	printf("%-8.1f", ave[a - 1]);
	printf("%-10d", max[a - 1]);
	printf("%-10d", min[a - 1]);
	printf("%-9.1f", jgl[a - 1]);
	printf("%-10.1f", cfl[a - 1]);
	printf("%-6.1f", yfl[a - 1]);
	printf("\n");
	system("pause");
	main();
}

第六部分匹配的菜单

void caidan4()
{
	printf("\n************************************************************\n");
	printf("\n*******************   各 科 成 绩 分 析 :******************\n");
	printf("\n************************************************************\n");
	printf("\n   1.语文 2.数学 3.电子电工 4.c语言 5.计算机 6.英语 7.返回  \n");
	printf("\n************************************************************\n");
	printf("\n请选择学科序号:");
}

7、定义部分

float pjf[m];
int zf[m];
char xh[m][9];
int fs[m][n];
char name[m][10];
char sub[n][14];
int choice = 1;

3、注意

一定要声明,除非定义部分在调用前

4、完整代码

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include <conio.h> 
#include<Windows.h>
#define m 10
#define n 6

void xt_1();
void xt_2();
void xt_3();
void cd2();
void cd3();
void cd4();
void cd5();
void cd6();
void caidan3();
void caidan4();
void displayMenu(int choice);
float pjf[m];
int zf[m];
char xh[m][9];
int fs[m][n];
char name[m][10];
char sub[n][14];
int choice = 1;

int main()
{

	int xt1, xt2;
b: xt_1();
	
	bool selected = false;
	while (!selected) {

		if (choice == 1) {
			system("cls");
			printf("\n**************************************\n");
			printf("\n**       欢迎使用成绩管理系统       **\n");
			printf("\n**------------------******************\n");
			printf("\n**|   1.进入系统   |  0.退出系统    **\n");
			printf("\n**------------------******************\n");
		}
		else {
			system("cls");
			printf("\n**************************************\n");
			printf("\n**       欢迎使用成绩管理系统       **\n");
			printf("\n*******************-----------------**\n");
			printf("\n**    1.进入系统   |  0.退出系统   |**\n");
			printf("\n*******************-----------------**\n");
		}


		char input = _getch(); // 获取键盘输入
		if (input == 75) { // 按下左箭头
			choice = 1;
		}
		else if (input == 77) { // 按下右箭头
			choice = 2;
		}
		else if (input == 49)
		{
			choice = 1;
			goto A;
		}
		else if (input == 48)
		{
			return 0;
		}
		else if (input == 13) { // 按下回车键
A:			selected = true;
			bool selected = false;
			if (choice == 1) {

				xt_2();
				printf("请选择");
				
				while (!selected) {
					displayMenu(choice);

					char input = _getch(); // 获取键盘输入
					
					if (input == 72) { // 按下上箭头
						choice = (choice - 1) > 0 ? (choice - 1) : 7;
						Sleep(10);
					}
					else if (input == 80) { // 按下下箭头
						choice = (choice + 1) <= 7 ? (choice + 1) : 1;
						Sleep(10);
					}
					else if (input == 49)
					{
						choice = 1;
						goto a;
					}
					else if (input == 50)
					{
						choice = 2;
						goto a;

					}
					else if (input == 51)
					{
						choice = 3;
						goto a;

					}
					else if (input == 52)
					{
						choice = 4;
						goto a;

					}
					else if (input == 53)
					{
						choice = 5;
						goto a;

					}
					else if (input == 54)
					{
						choice = 6;
						goto a;

					}
					else if (input == 55)
					{
						choice = 7;
						goto a;

					}

					else if (input == 13) { // 按下回车键
a:						selected = true;
						switch (choice) {
						case 1:
							xt_3();
							break;
						case 2:
							cd2();//完成按学号顺序显示原始成绩功能
							break;
						case 3:
							cd3();//完成显示学号、姓名、总分、平均分功能
							break;
						case 4:
							cd4();//按总分由高到低顺序打印班级成绩单
							break;
						case 5:
							cd5();//查询学生成绩(输入学号或输入姓名,输出该生所有成绩)
							break;
						case 6:
							cd6();//输出每门课的最高分,最低分,平均分,及格率
							break;
						case 7:
							goto b;
						}
					}
				}

			}
			else {
				printf("\n********************\n");
				printf("\n感谢使用,再见!!!\n");
				printf("\n********************\n");
				exit(0);
			}
		}
	}


	return 0;
}
void xt_1()
{
	system("cls");
	printf("\n************************************\n");
	printf("\n**      欢迎使用成绩管理系统      **\n");
	printf("\n************************************\n");
	printf("\n**  1.进入系统       0.退出系统   **\n");
	printf("\n************************************\n");

}
void xt_2()
{
	system("cls");
	printf("\n--------------------------\n");
	printf("\n|  1.输入成绩            |\n");
	printf("\n--------------------------\n");
	printf("\n|  2.显示原始成绩        |\n");
	printf("\n--------------------------\n");
	printf("\n|  3.每个人的总分和平均分|\n");
	printf("\n--------------------------\n");
	printf("\n|  4.打印班级成绩单      |\n");
	printf("\n--------------------------\n");
	printf("\n|  5.查询学生成绩        |\n");
	printf("\n--------------------------\n");
	printf("\n|  6.单科成绩分析        |\n");
	printf("\n--------------------------\n");
	printf("\n|  7.返回上级菜单        |\n");
	printf("\n--------------------------\n");
}
void xt_3()
{
	int i, j;
	system("cls");
	printf("请输入学号、姓名、六门课成绩,中间以空格分开\n");
	for (i = 0; i < m; i++)
	{
		scanf_s("%s", xh[i]);
		scanf_s("%s", name[i]);
		for (j = 0; j < n; j++)
			scanf_s("%d", &fs[i][j]);
	}
}
void cd2()
{
	int i, j;
	system("cls");
	printf("———————————————学生四门课成绩如下:———————————\n");
	printf("|  学号  |  姓名  |  语文  |  数学  |电子电工| C语言  | 计算机 |  英语  |\n");
	printf("————————————————————————————————————\n");
	for (i = 0; i < m; i++)
	{
		printf("|%-5s|", xh[i]);
		printf(" %-7s|", name[i]);
		for (j = 0; j < n; j++)

			printf("   %-5d|", fs[i][j]);
		printf("\n————————————————————————————————————\n");



	}
	system("pause");
	main();

}
void cd3()
{
	int i, j;
	int sum;
	system("cls");
	printf("---------------------------------\n");
	printf("|学号  |  姓名  |  总分 | 平均分|\n");
	printf("---------------------------------\n");
	for (j = 0; j < m; j++)
	{
		sum = 0;
		for (i = 0; i < n; i++)

			sum = sum + fs[j][i];
		zf[j] = sum;
		pjf[j] = sum / n;
		printf("%-9s", xh[j]);
		printf("%-9s", name[j]);
		printf("%-6d", zf[j]);
		printf("%-6.1f", pjf[j]);
		printf("\n");

	}
	system("pause");
	main();
}
void cd4()
{
	system("cls");
	int i, j, k;

	float t, sum;
	char p[9];
	for (j = 0; j < m; j++)
	{
		sum = 0;
		for (i = 0; i < n; i++)
			sum = sum + fs[j][i];
		zf[j] = sum;
		pjf[j] = sum / n;
	}
	for (i = 0; i < m - 1; i++)

		for (j = 0; j < m - 1 - i; j++)
			if (zf[j] < zf[j + 1])
			{
				strcpy_s(p, name[j]);
				strcpy_s(name[j], name[j + 1]);
				strcpy_s(name[j + 1], p);
				strcpy_s(p, xh[j]);
				strcpy_s(xh[j], xh[j + 1]);
				strcpy_s(xh[j + 1], p);
				for (k = 0; k < n; k++)
				{
					t = fs[j + 1][k];
					fs[j + 1][k] = fs[j][k];
					fs[j][k] = t;
				}
				t = zf[j];
				zf[j] = zf[j + 1];
				zf[j + 1] = t;
				t = pjf[j];
				pjf[j] = pjf[j + 1];
				pjf[j + 1] = t;
			}
	printf("------------------------------------------------------------------------------------------------------------------------\n");
	printf("|                                                    班级成绩单                                                        |\n");
	printf("------------------------------------------------------------------------------------------------------------------------\n");
	printf("|   学号   |   姓名   |    语文    |    数学    |  电子电工  |   c语言    |   计算机   |    英语    |   总分  | 平均分 |\n");
	printf("------------------------------------------------------------------------------------------------------------------------\n");
	for (i = 0; i < m; i++)
	{
		if (i >= 1)
		{
			printf("------------------------------------------------------------------------------------------------------------------------\n");
		}
		printf("| %-9s|", xh[i]);
		printf("  %-8s|", name[i]);
		for (j = 0; j < n; j++)
			printf("    %-8d|", fs[i][j]);
		printf("   %-6d|", zf[i]);
		printf("  %-6.1f|\n", pjf[i]);
	}
	printf("------------------------------------------------------------------------------------------------------------------------\n");
	system("pause");
	main();
}
void cd5()
{
	int i, j, k, xt3, x;
	int sum;
	char a[9];
	char b[9];
	caidan3();
	for (x = 0; x < m; x++)
	{
		sum = 0;
		for (i = 0; i < n; i++)
			sum = sum + fs[x][i];
		zf[x] = sum;
		pjf[x] = sum / n;

	}
	bool selected = false;
	while (!selected) {

		if (choice == 1) {
			system("cls");
			printf("\n--------------------------------------------\n");
			printf("\n|               查询学生成绩               |\n");
			printf("\n****************----------------------------\n");
			printf("\n* 1.按学号查询 * 2.按姓名查询 | 3.返回主页 |\n");
			printf("\n****************----------------------------\n");
		}
		else
			if (choice == 2) {
				system("cls");
				printf("\n--------------------------------------------\n");
				printf("\n|               查询学生成绩               |\n");
				printf("\n-------------- **************** ------------\n");
				printf("\n| 1.按学号查询 * 2.按姓名查询 * 3.返回主页 |\n");
				printf("\n-------------- **************** ------------\n");
			}
			else
				if(choice==3)
			{
				system("cls");
				printf("\n--------------------------------------------\n");
				printf("\n|               查询学生成绩               |\n");
				printf("\n------------------------------**************\n");
				printf("\n| 1.按学号查询 | 2.按姓名查询 * 3.返回主页 *\n");
				printf("\n------------------------------**************\n");
			}
		char input = _getch(); // 获取键盘输入
		if (input == 75) { // 按下左箭头
			choice = (choice - 1) > 0 ? (choice - 1) : 3;
		}
		else if (input == 77) { // 按下右箭头
			choice = (choice + 1) <= 3 ? (choice + 1) : 1;
		}
		else if (input == 49)
		{
			choice = 1;
			goto c;
		}
		else if (input == 50)
		{
			choice = 2;
			goto d;
		}
		else if (input == 51)
		{
			choice = 3;
			main();
		}
		else if (input == 13) { // 按下回车键
			selected = true;
			if (choice == 1) {
c:				
					printf("请输入学号:");
				scanf_s("%c", &a);
				for (i = 0; i < m; i++)
					if (strcmp(xh[i], a) == 0)
					{
						j = i;
						break;
					}
				if (i < m)
				{
					printf("学号   姓名   语文   数学   电子电工   c语言   计算机   英语   总分   平均分\n");
					printf("%-9s", xh[j]);
					printf("%-9s", name[j]);
					for (i = 0; i < n; i++)
						printf("%-8d", fs[j][i]);
					printf("%-6.0d", zf[j]);
					printf("%-8.1f", pjf[j]);
					printf("\n");
				}
				else
					printf("******查无此人******\n");
			}
			else
				if (choice == 2)
				{
d:					
					printf("请输入姓名:");
					scanf_s("%c", b);
					for (i = 0; i < m; i++)
						if (strcmp(name[i], b) == 0)
						{
							j = i;
							break;
						}
					if (i < m)
					{
						printf("学号   姓名   语文   数学   电子电工   c语言   计算机   英语   总分   平均分\n");
						printf("%-9s", xh[j]);
						printf("%-9s", name[j]);
						for (i = 0; i < n; i++)
							printf("%-8d", fs[j][i]);
						printf("%-6.0d", zf[j]);
						printf("%-8.1f", pjf[j]);
						printf("\n");
					}
					else
						printf("******查无此人******\n");
				}
			system("pause");
		}
	}
	main();
}
void caidan3()
{
	system("cls");
	printf("\n--------------------------------------------\n");
	printf("\n|               查询学生成绩               |\n");
	printf("\n--------------------------------------------\n");
	printf("\n| 1.按学号查询 | 2.按姓名查询 | 3.返回主页 |\n");
	printf("\n--------------------------------------------\n");

}
void  cd6()
{
	int i, j, a, sum[n], max[n], min[n], c[3] = { 60,30,90 };
	float ave[n], jgl[n], cfl[n], yfl[n], x, y, z;
	system("cls");
	caidan4();
	scanf_s("%d", &a);
	for (j = 0; j < n; j++)
	{
		sum[j] = 0;
		z = y = x = 0;
		max[j] = min[j] = fs[0][j];
		for (i = 0; i < m; i++)
		{
			sum[j] = sum[j] + fs[i][j];
			if (fs[i][j] > 60)
				x++;
			if (fs[i][j] > 30)
				y++;
			if (fs[i][j] > 90)
				z++;
			if (fs[i][j] > max[j])
				max[j] = fs[i][j];
			if (fs[i][j] > min[j])
				min[j] = fs[i][j];
		}
		ave[j] = sum[j] / m;
		jgl[j] = x / m;
		cfl[j] = y / m;
		yfl[j] = z / m;
	}
	printf("学科   班级   应考人数   实考人数   总分   总均分   最高分   最低分   及格率   差分率   优分率\n");
	printf("%-6s", sub[a - 1]);
	printf("202233");
	printf("     10        10       ");
	printf("%-8d", sum[a - 1]);
	printf("%-8.1f", ave[a - 1]);
	printf("%-10d", max[a - 1]);
	printf("%-10d", min[a - 1]);
	printf("%-9.1f", jgl[a - 1]);
	printf("%-10.1f", cfl[a - 1]);
	printf("%-6.1f", yfl[a - 1]);
	printf("\n");
	system("pause");
	main();
}
void caidan4()
{
	printf("\n************************************************************\n");
	printf("\n*******************   各 科 成 绩 分 析 :******************\n");
	printf("\n************************************************************\n");
	printf("\n   1.语文 2.数学 3.电子电工 4.c语言 5.计算机 6.英语 7.返回  \n");
	printf("\n************************************************************\n");
	printf("\n请选择学科序号:");
}
void displayMenu(int choice)
{
	system("cls");
	if (choice == 1) {
		printf("\n**************************\n");
		printf("\n*  1.输入成绩            *\n");
		printf("\n**************************\n");
		printf("\n|  2.显示原始成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  3.每个人的总分和平均分|\n");
		printf("\n--------------------------\n");
		printf("\n|  4.打印班级成绩单      |\n");
		printf("\n--------------------------\n");
		printf("\n|  5.查询学生成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  6.单科成绩分析        |\n");
		printf("\n--------------------------\n");
		printf("\n|  7.返回上级菜单        |\n");
		printf("\n--------------------------\n");
	}
	else if (choice == 2) {
		printf("\n--------------------------\n");
		printf("\n|  1.输入成绩            |\n");
		printf("\n**************************\n");
		printf("\n*  2.显示原始成绩        *\n");
		printf("\n**************************\n");
		printf("\n|  3.每个人的总分和平均分|\n");
		printf("\n--------------------------\n");
		printf("\n|  4.打印班级成绩单      |\n");
		printf("\n--------------------------\n");
		printf("\n|  5.查询学生成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  6.单科成绩分析        |\n");
		printf("\n--------------------------\n");
		printf("\n|  7.返回上级菜单        |\n");
		printf("\n--------------------------\n");
	}
	else if (choice == 3) {
		printf("\n--------------------------\n");
		printf("\n|  1.输入成绩            |\n");
		printf("\n--------------------------\n");
		printf("\n|  2.显示原始成绩        |\n");
		printf("\n**************************\n");
		printf("\n*  3.每个人的总分和平均分*\n");
		printf("\n**************************\n");
		printf("\n|  4.打印班级成绩单      |\n");
		printf("\n--------------------------\n");
		printf("\n|  5.查询学生成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  6.单科成绩分析        |\n");
		printf("\n--------------------------\n");
		printf("\n|  7.返回上级菜单        |\n");
		printf("\n--------------------------\n");
	}
	else if (choice == 4 ) {
		printf("\n--------------------------\n");
		printf("\n|  1.输入成绩            |\n");
		printf("\n--------------------------\n");
		printf("\n|  2.显示原始成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  3.每个人的总分和平均分|\n");
		printf("\n**************************\n");
		printf("\n*  4.打印班级成绩单      *\n");
		printf("\n**************************\n");
		printf("\n|  5.查询学生成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  6.单科成绩分析        |\n");
		printf("\n--------------------------\n");
		printf("\n|  7.返回上级菜单        |\n");
		printf("\n--------------------------\n");
	}
	else if (choice == 5 ) {
		printf("\n--------------------------\n");
		printf("\n|  1.输入成绩            |\n");
		printf("\n--------------------------\n");
		printf("\n|  2.显示原始成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  3.每个人的总分和平均分|\n");
		printf("\n--------------------------\n");
		printf("\n|  4.打印班级成绩单      |\n");
		printf("\n**************************\n");
		printf("\n*  5.查询学生成绩        *\n");
		printf("\n**************************\n");
		printf("\n|  6.单科成绩分析        |\n");
		printf("\n--------------------------\n");
		printf("\n|  7.返回上级菜单        |\n");
		printf("\n--------------------------\n");
	}
	else if (choice == 6) {
		printf("\n--------------------------\n");
		printf("\n|  1.输入成绩            |\n");
		printf("\n--------------------------\n");
		printf("\n|  2.显示原始成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  3.每个人的总分和平均分|\n");
		printf("\n--------------------------\n");
		printf("\n|  4.打印班级成绩单      |\n");
		printf("\n--------------------------\n");
		printf("\n|  5.查询学生成绩        |\n");
		printf("\n**************************\n");
		printf("\n*  6.单科成绩分析        *\n");
		printf("\n**************************\n");
		printf("\n|  7.返回上级菜单        |\n");
		printf("\n--------------------------\n");
	}
	else if (choice == 7) {
		printf("\n--------------------------\n");
		printf("\n|  1.输入成绩            |\n");
		printf("\n--------------------------\n");
		printf("\n|  2.显示原始成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  3.每个人的总分和平均分|\n");
		printf("\n--------------------------\n");
		printf("\n|  4.打印班级成绩单      |\n");
		printf("\n--------------------------\n");
		printf("\n|  5.查询学生成绩        |\n");
		printf("\n--------------------------\n");
		printf("\n|  6.单科成绩分析        |\n");
		printf("\n**************************\n");
		printf("\n*  7.返回上级菜单        *\n");
		printf("\n**************************\n");
	}

}

  • 14
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值