学生成绩管理系统半成品

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

cs 复制代码
#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;
}

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

相关推荐
Dlrb121127 分钟前
C语言-函数传参
c语言·数据结构·算法
InfinteJustice11 小时前
踩坑分享C 语言文件操作全攻略:从基础读写到随机访问与缓冲区原理
c语言·开发语言·microsoft
瑶池酒剑仙16 小时前
C++类和对象完全指南:从封装继承多态到内存布局的面向对象宝典(雨夜论道)
c语言·开发语言·c++·visual studio
三品吉他手会点灯16 小时前
C语言学习笔记 - 27.C编程预备计算机专业知识 - 什么是字节
c语言·开发语言·笔记·学习
邪修king20 小时前
C++ 继承超全详解:核心语法、作用域、默认函数、菱形继承与避坑指南
c语言·c++
djarmy20 小时前
C 标准库 `<stdio.h>` 完整函数清单(官方标准 + 常用全部函数)
c语言·c++·算法
handler011 天前
速通蓝桥杯省一: 前缀和&差分(附经典例题)
c语言·c++·笔记·职场和发展·蓝桥杯
谙弆悕博士1 天前
快速学C语言——第 11 章:指针与数组
服务器·c语言·开发语言·学习方法·业界资讯·指针·数组
薇茗1 天前
【初阶数据结构】 左右逢源的分支诗律 二叉树3
c语言·数据结构·二叉树·经典oj面试题
袁雅倩19971 天前
当吸尘器、筋膜枪都用上Type-C,供电方案该怎么选?浅谈PD取电芯片ECP5702的应用
c语言·开发语言·支持向量机·动态规划·推荐算法·最小二乘法·图搜索算法