学生成绩管理系统(VS2022)

#include<cstdio>
#include<iostream>
#include<string>

using namespace std;

typedef struct student
{
	int _num;
	string _name;
	int _chinese;
	int _math;
	int _english;
	int _average;
}stu;

void menu() {
	printf("|--------------------------------------------------------------------------------------|\n");
	printf("|                                  学生成绩管理系统                                    |\n");
	printf("|--------------------------------------------------------------------------------------|\n");
	printf("|                                  1——创建成绩单                                     |\n");
	printf("|                                  2——添加学生                                       |\n");
	printf("|                                  3——编辑学生                                       |\n");
	printf("|                                  4——删除学生                                       |\n");
	printf("|                                  5——统计成绩                                       |\n");
	printf("|                                  6——排序成绩单                                     |\n");
	printf("|                                  7——显示成绩                                       |\n");
	printf("|                                  8——从文件读入                                     |\n");
	printf("|                                  9——输出到文件                                     |\n");
	printf("|                                  0——退出                                           |\n");
	printf("|--------------------------------------------------------------------------------------|\n");
}



int main() {
	stu arr[1001];
	int s = 0;

	for (;;) {
		menu();
		printf("请输入选项编号(0~9):");
		int n;
		scanf_s("%d", &n);
		if (n == 1) {

			if (arr[0]._num > 0)
				printf("不可创建\n");
			else {
				printf("您选择了“1——创建成绩单”\n注意:输入的结束标志为学号0!");
				for (int i = 0; i < 1000; i++) {
					printf(" 请输入学号:");
					cin >> arr[i]._num;
					if (arr[i]._num == 0)
					{
						printf("录入结束\n");
						break;
					}
					else {
						s++;
						printf(" 请输入姓名:");
						cin >> arr[i]._name;
						printf(" 请输入语文成绩:");
						cin >> arr[i]._chinese;
						printf(" 请输入数学成绩:");
						cin >> arr[i]._math;
						printf(" 请输入英语成绩:");
						cin >> arr[i]._english;
						arr[i]._average = (arr[i]._chinese + arr[i]._math + arr[i]._english) / 3;
					}
				}
			}

		}
		if (n == 2) {
			printf("您选择了“2——添加学生”\n");
			if (s >= 1000)
				printf("不可添加学生信息\n");
			else {
				
				for (int i = s; i < 1000 && s < 1000; i++) {
					printf(" 请输入学号:");
					cin >> arr[i]._num;
					if (arr[i]._num == 0)
					{
						printf("录入结束\n");
						break;
					}
					else {
						s = s + 1;
						printf(" 请输入姓名:");
						cin >> arr[i]._name;
						printf(" 请输入语文成绩:");
						cin >> arr[i]._chinese;
						printf(" 请输入数学成绩:");
						cin >> arr[i]._math;
						printf(" 请输入英语成绩:");
						cin >> arr[i]._english;
						arr[i]._average = (arr[i]._chinese + arr[i]._math + arr[i]._english) / 3;
					}
					
				}
			}
		}
		if (n == 3) {
			printf("您选择了“3——编辑学生”\n");
			printf("请输入要修改学生的学号:\n");
			int f;
			scanf_s("%d", &f);
			int q = 1;
			for (int i = 0; i < 1000; i++)
				if (arr[i]._num == f) {
					q = 0;
					printf(" 请输入姓名:");
					cin >> arr[i]._name;
					printf(" 请输入语文成绩:");
					cin >> arr[i]._chinese;
					printf(" 请输入数学成绩:");
					cin >> arr[i]._math;
					printf(" 请输入英语成绩:");
					cin >> arr[i]._english;
					arr[i]._average = (arr[i]._chinese + arr[i]._math + arr[i]._english) / 3;
					break;
				}
			if (q == 1)
				printf("查无此人");
		}
		if (n == 4) {
			printf("您选择了“4——删除学生”\n");
			printf("请输入要删除的学生的学号:\n");
			int o;
			scanf_s("%d", &o);
			int ei = 0;
			for (int i = 0; i < 1000; i++)
				if (arr[i]._num == o) {
					ei = 1;
					s--;
					printf("已删除\n");
					for (int b = i; b < 1000; b++) {
						arr[i] = arr[i + 1];
					}
					break;
				}
			if (ei == 0)
				printf("查无此人");
		}
		if (n == 5) {
			printf("您选择了“5——统计成绩”\n");
			if (arr[0]._num > 0) {
				int e = 0;
				for (int i = 0; i < 1000; i++) {
					if (arr[i]._average >= 90)
					{
						e++;
					}
				}
				printf("成绩优秀的学生有%d人\n", e);
			}
			else
				printf("无成绩存在\n");
		}
		if (n == 6) {
			printf("您选择了“6——排序成绩单”\n");
			int j, k;
			stu tmp;
			for (j = 1; j < s; j++) {
				for (k = 0; k < s - j; k++) {
					if (arr[k]._average < arr[k + 1]._average)
					{
						tmp = arr[k];
						arr[k] = arr[k + 1];
						arr[k + 1] = tmp;
					}
				}
			}
		}
		if (n == 7) {
			printf("您选择了“7——显示成绩”\n");
			
				printf("count=%d\n", s);
				printf("number  name  math  chinese  english  average\n");
				if (s == 0)
					printf("用户无成绩存在\n"); 
				else{
					for (int i =0; i < s; i++) {
							printf("%d      %s   %d      %d      %d      %d\n", arr[i]._num, arr[i]._name.c_str(), arr[i]._math, arr[i]._chinese, arr[i]._english, arr[i]._average);	
					}
				}		
		}
		if (n == 8) {
			printf("您选择了“8——从文件读入”\n从文件读入结束!\n");
		}
		if (n == 9) {
			printf("您选择了“9——输出到文件”\n已输出到文件!\n");
		}
		if (n == 0) {
			printf("您选择了“0——退出”\n 按任意键结束");
			break;
		}
		if (n > 9 || n < 0)
			printf("非法输入\n press any key to continue\n");
	}
}

 

 

 

 

  • 5
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
VS2022是指Visual Studio 2022,而MFC是指Microsoft Foundation Classes,是一种用于开发Windows应用程序的框架。在VS2022中使用MFC建造一个成绩管理系统可以分为以下几个步骤。 首先,需要创建一个新的MFC应用程序项目。在VS2022中选择"创建新项目",然后在模板选择器中选择"MFC应用程序"。填写项目名称和保存位置后,点击"确定"按钮。 接下来,需要设计系统的界面。在MFC中,可以使用对话框和控件来构建用户界面。设计一个成绩管理系统的界面可能包括学生姓名、科目、考试分数等信息。通过在对话框中拖放控件来布局界面,并设置相应的属性和样式。 然后,需要编写代码来实现系统的功能。通过双击界面上的控件,可以打开相关的事件处理函数。例如,可以在"保存"按钮的点击事件处理函数中,编写代码将学生的成绩保存到数据库或文本文件中。 还可以通过使用MFC提供的类库来简化开发过程。例如,可以使用CDatabase类来连接数据库,并使用CRecordset类来操作数据记录。可以使用CListBox类来显示学生列表,使用CEdit类来显示和编辑学生的信息等。 最后,需要进行调试和测试。在VS2022中,可以使用调试工具进行程序的调试,并使用输出窗口来查看程序的运行情况。可以通过输入测试数据来测试系统的各个功能,并对程序进行优化和改进。 综上所述,利用VS2022和MFC建造一个成绩管理系统需要创建项目、设计界面、编写代码、使用MFC类库,并进行调试和测试。这样可以通过一个简单的界面和相应的功能来管理学生成绩。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值