学生成绩管理系统半成品

发布时间:2024年01月04日

? ? ? ? C语言的老师在给我们讲指针的时候,讲的并不深入,她用了一个学生成绩管理系统来引入指针这个东西并给我们讲解,但我觉得她的管理系统功能有一些不足,并且不是很美观,所以说心血来潮,自己也动手写了一个学生成绩管理系统,但很遗憾,目前还是半成品,并且没用结构体和文件(都还没有掌握),所以说是纯纯的半成品,先发出来给大家看看:

#define _CRT_SECURE_NO_WARNINGS
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<windows.h>
#include<stdlib.h>
#define _CRT_SECURE_NO_WARNINGS
void menu(void)
{
	printf("                                             欢迎使用学生成绩管理系统\n");
	printf("                                                   1.输出成绩\n");
	printf("                                                   2.找 极 值\n");
	printf("                                                   3.进行排序\n");
	printf("                                                   4.添加成绩\n");
	printf("                                                   5.........\n");
	printf("                                                   0.退出系统\n");

}
void output(int arr[], int n)
{
	int i = 0;
	for (i = 0; i < n; i++)
	{
		printf("第%d个输入的成绩是%d\n", i + 1, arr[i]);
		Sleep(500);
	}
}
void find(int arr[], int n)
{
	int max, min;
	max = arr[0];
	min = arr[0];
	int i = 0;
	for (i = 0; i < n; i++)
	{
		if (arr[i + 1] > max)
		{
			max = arr[i + 1];
		}
	}
	printf("成绩中的最大值是%d\n", max);
	for (i = 0; i < n; i++)
	{
		if (arr[i] < min)
		{
			min = arr[i];
		}
	}
	printf("成绩中的最小值是%d\n", min);
}
void semenu(void)
{
	printf("                                 1.升序 2.降序\n");
}
void sort(int arr[], int n)
{
	output(arr, n);
flag:
	semenu();
	int ch;
	scanf("%d", &ch);
	switch (ch)
	{
	case 1:
	{
		int i, j;
		for (i = 0; i < n - 1; i++)
		{
			for (j = 0; j < n - 1 - i; j++)
			{
				if (arr[j] > arr[j + 1])
				{
					int temp = arr[j + 1];
					arr[j + 1] = arr[j];
					arr[j] = temp;
				}
			}
		}
		for (i = 0; i < n; i++)
		{
			printf("%d ", arr[i]);
		}
		break;
	}
	case 2:
	{
		int i, j;
		for (i = 0; i < n - 1; i++)
		{
			for (j = 0; j < n - 1 - i; j++)
			{
				if (arr[j] < arr[j + 1])
				{
					int temp = arr[j + 1];
					arr[j + 1] = arr[j];
					arr[j] = temp;
				}
			}
		}
		for (i = 0; i < n; i++)
		{
			printf("%d ", arr[i]);
		}
		break;
	}
	default:
	{
		printf("请重新选择!\n");
		Sleep(500);
		goto flag;
		break;
	}
	}

}
int main()
{
	int input;
	int arr[100] = { 0 };
	printf("输入你要录入的成绩个数\n");
	int n;
	printf("请输入--->\n");
	scanf("%d", &n);
	int i = 0;
	for (i = 0; i < n; i++)
	{
		scanf("%d", &arr[i]);
	}
	Sleep(1000);
	system("cls");
	do
	{
		menu();
		printf("请通过输入来选择功能--->");
		printf("\n");
		scanf("%d", &input);
		switch (input)
		{
		case 1:
		{
			system("cls");
			output(arr, n);
			printf("按任意键继续--->\n");
			getch();
			system("cls");
			break;
		}
		case 2:
		{
			system("cls");
			output(arr, n);
			printf("\n\n\n");
			find(arr, n);
			printf("按任意键继续--->\n");
			getch();
			system("cls");
			break;
		}
		case 3:
		{
			system("cls");
			sort(arr, n);
			printf("按任意键继续--->\n");
			getch();
			system("cls");
			break;
		}
		case 4:
		{
			printf("还在开发中\n");
			break;
		}
		case 5:
		{
			printf(".......\n");
			break;
		}
		case 0:
		{
			system("cls");
			Sleep(2000);
			printf("系统退出\n");
			break;
		}
		default:
		{
			Sleep(1000);
			system("cls");
			printf("                                         选择错误,未能识别,请重新选择\n");
			Sleep(2000);
			system("cls");
		}
		}
	} while (input);
	return 0;
}

? ? ? ? 大概就是这样,目前只有输入、输出、求极值和排序的功能,等日后功能更完善了我在给大家进行讲解,先展示一下半成品(我的我的)。?

文章来源:https://blog.csdn.net/Aishangyuwen/article/details/135397931
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。