首页 > 其他分享 >C-学生管理系统

C-学生管理系统

时间:2024-01-08 23:02:20浏览次数:37  
标签:管理系统 int scanf 学生 break num printf 100

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>
typedef struct
{
	int num;
	char name[64];
	char sex;
	float score;
}S;

void menu(void);
int Showeveryone(S s[]);
int Add(S s[]);
int Del(S s[]);
int Find(S s[]);
int Change(S s[]);
S tmp;
S s[100] = { 0 };
void menu(void)
{
	printf("**************学生管理系统*******************\n");
	printf("***1.添加学生                  2.删除学生****\n");
	printf("***3.查找学生                  4.修改学生信息\n");
	printf("***5.显示所有已存在的学生(排序)  0.exit  *****\n");
}

int main()
{
	int n = 0;
	while (1)
	{
		menu();
		printf("请输入您要做的选项\n");
		//again:
		scanf("%d", &n);
		switch (n)
		{
		case 1:Add(s); break;
		case 2:Del(s); break;
		case 3:Find(s); break;
		case 4:Change(s); break;
		case 5:Showeveryone(s); break;
		case 0:return 0;
		default:printf("抱歉输入错误,请重新输入\n");
			//goto again;
		}
	}
	return 0;
}
int Add(S s[])
{
	printf("请输入学生信息\n");
	for (int i = 0; i < 100; i++)
	{
		if (s[i].num == 0)
		{
			int num1 = 0;
			char name1[64];
			char sex1;
			float score1;
		t:
			printf("请输入学号\n");
			scanf("%d", &num1);//学号
			for (int j = 0; j < 100; j++)
			{
				if (s[j].num == num1)
				{
					printf("抱歉,该学号已被占用\n");
					goto t;
				}
			}
			s[i].num = num1;
			printf("请输入名字\n");
			scanf("%s", name1);
			strcpy(s[i].name, name1);//名字
			getchar();
			printf("请输入性别\n");
			scanf("%c", &sex1);
			s[i].sex = sex1;//性别
			getchar();
			printf("请输入成绩\n");
			scanf("%f", &score1);
			s[i].score = score1;//成绩
			printf("\n");
			printf("录入完成\n");
			break;
		}
	}
}
int Del(S s[])
{
	printf("请输入要删除的学生的学号\n");
	int Del1 = 0;
	scanf("%d", &Del1);
	int i = 0;
	for (i = 0; i < 100; i++)
	{
		if (s[i].num == Del1)
		{
			s[i].num = 0;
			strcpy(s[i].name, "0");
			s[i].sex = 0;
			s[i].score = 0;
			printf("删除完成\n");
			break;
		}
	}
	if (i == 100)
	{
		printf("查找不到该学生\n");
	}
}
int Find(S s[])
{
	printf("请输入要查找的学生学号\n");
	int f1 = 0;
	int j = 0;
	scanf("%d", &f1);
	for (j = 0; j < 100; j++)
	{
		if (s[j].num == f1)
		{
			printf("该学生学号为%d\t", s[j].num);
			printf("该学生名字为%s\t", s[j].name);
			printf("该学生性别为%c\t", s[j].sex);
			printf("该学生成绩为%f", s[j].score);
			printf("\n");
			break;
		}
	}
	if (j == 100)
	{
		printf("查找不到该学生\n");
	}
}
int Change(S s[])
{
	printf("请输入要修改的学生学号\n");
	int c1 = 0;
	int c = 0;
	int num2;
	char name2[64];
	char sex2;
	float score2;
	scanf("%d", &c1);
	for (c = 0; c < 100; c++)
	{
		if (s[c].num == c1)
		{
			printf("请输入要修改的\n");
			printf("学号\t名字\t性别\t成绩\n");
			scanf("%d", &num2);
			s[c].num = num2;
			scanf("%s", name2);
			strcpy(s[c].name, name2);
			getchar();
			scanf("%c", &sex2);
			s[c].sex = sex2;
			scanf("%f", &score2);
			s[c].score = score2;
			printf("修改完毕\n");
			break;
		}
	}
	if (c == 100)
	{
		printf("查找不到该学生\n");
	}
}
int Showeveryone(S s[])
{
	for (int i = 0; i < 99; i++)
	{
		for (int j = 0; j < 99 - i; j++)
		{
				if (s[j].score <= s[j + 1].score)
			{
				tmp = s[j];
				s[j]= s[j + 1];
				s[j + 1]= tmp;
			}
		}
	}
	for (int i = 0; i < 100; i++)
	{
		if (s[i].num != 0)
		{
			printf("该学生学号为%d\t", s[i].num);
			printf("该学生名字为%s\t", s[i].name);
			printf("该学生性别为%c\t", s[i].sex);
			printf("该学生成绩为%f", s[i].score);
			printf("\n");
		}
	}
	
}

标签:管理系统,int,scanf,学生,break,num,printf,100
From: https://blog.51cto.com/u_16425777/9151811

相关文章

  • 珠海盈致浅析MES生产管理系统的优点
    MES系统是用于管理和控制制造过程的信息化系统.它具有许多优点:生产过程可视化:MES系统提供实时的生产过程监控和数据收集,使管理人员能够清晰地了解生产线上的各个环节,包括设备状态、生产进度、质量指标等.这使得管理人员能够作出准确的决策并快速响应变化.生产资源优化:MES系统可......
  • 基于SSM的旅行社管理系统的设计与实现
    现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本旅行社管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功倍......
  • 基于web的药品管理系统
    互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。针对药品信息管理混乱,出错率高,信息安全性差,劳动强度大,费时费力等问题,采用药品管理系统可以有效管理,使信息管理能够更加科学......
  • 基于SSM的药房药品采购集中管理系统
    互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。针对药房药品采购信息管理混乱,出错率高,信息安全性差,劳动强度大,费时费力等问题,采用药房药品采购集中管理系统可以有效管理,使......
  • 基于SSM的固定资产管理系统
    一、本课题国内外状况,说明选题依据和意义1、 课题意义随着当前经济社会快速发展以及互联网技术的不断突破,作为我国企业的重要战略资产和经济命脉,资产能够使得企业在竞争情况下获得最佳的业绩和目标。作为横跨管理科学和计算机技术两门学科的交界产业,资产管理促进了知识管理,知......
  • 基于ssm的实验室考勤管理系统
    现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本实验室考勤管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半......
  • 基于ssm的物质管理系统
    1.研究背景 面对来势汹汹的新型冠状肺炎疫情,我国秉持人类命运共同体理念,既对本国人民生命安全和身体健康负责,也对全球公共安全卫生事业尽责,采取了最全面、最彻底、最严格的防控举措。据不同人群的问卷调查结果显示:绝大多人流密集场所没有疫情物资管理系统,但所有的场所都储备了......
  • 基于SSM的学院学生论坛的设计与实现
    网络的覆盖,电脑手机的普及使得人们的交流上升到网络信息化的层面上来,论坛系统就是在这样的环境下就诞生了,而且深受用户喜爱。本学院学生论坛系统应用Java技术,MYSQL数据库存储数据,基于SSM+Vue框架开发。在网站的整个开发过程中,首先对系统进行了需求分析,设计出系统的主要功能模块,其......
  • 基于Java的学生信息管理系统
    现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本学生信息管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功......
  • 第三届陕西省大学生网络安全技能大赛部分WriteUp
    Geek精神战队WriteUp(撰写完成后导出为pdf文件提交至平台)微信公众号:Geek_Team网络建设与运维-网络安全信息安全管理与评估这次的CTF题目还是有点难度的,也没有拿到特别好的成绩(最后半小时被冲烂了),此WP仅供学习参考,大佬勿喷。排名战队名称:第27名解题思路WEBEzRCE<?phperr......