欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C语言 学生信息管理系统

程序员文章站 2022-03-04 19:43:34
...

前文是楼主的一些经历,给大家分享一下,希望能够帮到大家。文中有不足的地方还请指出,我们一同探讨,或者可以直接看正文(恩~第一次在这儿发帖确实有点小激动O(∩_∩)O~)。

 

|前文|

 

我是一名职高学生,入校选择专业时毫不犹豫选择了计算机,只因对此拥有浓厚的兴趣(哈哈,可能是很早接触计算机有关吧!)。楼主对于C语言也是情有独钟(这是真爱啊、)。自学的阶段总是迷茫的,尤其对于初学者。  对于初学者提升兴趣的方法就是成功,当你认真去写一个程序并且能够载入计算机内存成功运行,这种感觉是之前未有过的。  楼主开始学的时候也是一头雾水,不知从何开始,从刚开始到现在已经有一个学期了,记得刚开始的时候最多就是写个hello world!学了许久只是简单了解基本数据类型定义,还是停留在懵逼的状态,慢慢的通过老师的讲解可以做一些简单的数据处理了,这是一个良好的开端,不要小看这些数据处理,它就犹如是一个“零件”,“零件”运用多了,才能熟练,将这些小型的零件拼接到一起就构成了一个大型的系统。这样方能做到“知其然知其所以然”。  “百度”一个非常好的搜索引擎,里面有很多相关的资料,这是一个很高效的网络学习方法,最重要的还是自己要努力。  学习C语言本就是枯燥乏味的,我觉得计算机专业学生不应该只停留在软件应用上(那是业余人干的),应该要偏重学习程序开发。有人就说了:“恩,我觉得开发这东西不适合我,而且我基础不太好,不学!”。这不是借口,只能说明自己懒,懒得编写,懒得想,每个人的起步都是一样的,没有什么天才,只有付诸行动,才能有收获,学习C语言要经常写代码,代码写多了自然就理解了     其实呢,学习编程语言最重要的还是要掌握编程的思想,从计算机的角度去思考问题,自然迎刃而解!!!

 

|正文|

 

上图:

C语言 学生信息管理系统

 

C语言 学生信息管理系统

 

C语言 学生信息管理系统

----------------------------------------------------------------------------------------------------------------------------------------------------------

​​​
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<Windows.h>
struct students
{
	int id;
	int age;
	char name[10];
	char xin[10];
	int yu,shu,yin,com,sum;
}stu[100];
int i=0,j=0;     //i循环添加信息变量  j显示全部信息循环变量 
int menu(void)    //主界面 
{
	int a;
	printf("\t***   ╭□════■□■□══╮ ***\n");
	printf("\t*    │ 学生信息管理系统       │  *\n");
	printf("\t*    ╰═■□■□══════■╯  *\n");
	printf("\t*    ┌───────────┐    *\n");
	printf("\t*    │1.添加信息  2.修改信息│    *\n");
	printf("\t*    │                      │    *\n");
	printf("\t*    │3.查询信息  4.删除信息│    *\n");
	printf("\t*    │                      │    *\n");
	printf("\t*    │5.数据排序  6.保存读取│    *\n");
	printf("\t*    │                      │    *\n");
	printf("\t*    │7.退出系统            │    *\n");
	printf("\t*    └───────────┘    *\n");
	printf("\t************************************\n");
	printf("\t请输入你的选择(1~7):");
	scanf("%d", &a);
	while (a<1 || a>7)
	{
		printf("\t输入范围为1~7:");
		scanf("%d", &a);
	}
	if (a == 1)
		ID();
	if (a == 2)
		xiugai();
	if (a == 3)
		chaxun();
	if (a == 4)
		shanchu();
	if (a == 5)
		paixu();
	if (a == 6)
		menufile();
	if (a == 7)
		printf("\n\t\t\t\t退出系统中...");
	Sleep(3000);
	exit(0);
	return 0;
}
//**********************
//**********************
//**********************
int ID(void)     //添加信息 
{
	int a,k,j,x,one;
	do
	{
		printf("\n----------------------------------------------------\n");
		printf("\t      ———添加信息———\n\n");
		fflush(stdin);
		printf("学号:");
		scanf("%d", &x);
		while ( x<1 || x>100)
		{
			printf("输入范围为1~100:");
			scanf("%d", &x);
		}
		one=0;
		for(j=0;j<i;j++)
		{
			if(x==stu[j].id)
			{
				one=1;
				printf("\n记录中已有此人!不得重复添加...");
				getch();
				system("cls");
				menu();
			}
		}
		if(one==0)
		{
			stu[i].id=x;
		}
		printf("姓名:");
		getchar();
		gets(stu[i].name);
		printf("性别:");
		gets(stu[i].xin);
		while (strcmp(stu[i].xin,"男") != 0 && strcmp(stu[i].xin, "女") != 0)
		{
			printf("性别只限男女:");
			gets(stu[i].xin);
		}
		printf("年龄:");
		scanf("%d", &stu[i].age);
		while (stu[i].age <= 0 || stu[i].age>100)
		{
			printf("年龄只限1~100:");
			scanf("%d", &stu[i].age);
		}
		printf("语文:");
		scanf("%d", &stu[i].yu);
		while (stu[i].yu<0 || stu[i].yu>100)
		{
			printf("输入只限0~100:");
			scanf("%d", &stu[i].yu);
		}
		printf("数学:");
		scanf("%d", &stu[i].shu);
		while (stu[i].shu<0 || stu[i].shu>100)
		{
			printf("输入只限0~100:");
			scanf("%d", &stu[i].shu);
		}
		printf("英语:");
		scanf("%d", &stu[i].yin);
		while (stu[i].yin<0 || stu[i].yin>100)
		{
			printf("输入只限0~100:");
			scanf("%d", &stu[i].yin);
		}
		printf("专业:");
		scanf("%d", &stu[i].com);
		while (stu[i].com<0 || stu[i].com>100)
		{
			printf("输入只限1~100:");
			scanf("%d", &stu[i].com);
		}
		stu[i].sum=0;
		stu[i].sum = stu[i].yu + stu[i].shu + stu[i].yin + stu[i].com;
		i++;
		printf("\n添加完毕!  目前共有%d名学生!\n按1回到主界面!按2继续添加信息!按其他键退出程序!  ",i);
		scanf("%d", &a);
	}while(a==2);
	if (a == 1)
	{
		system("cls");
		menu();
	}
	if (a != 1)
	{
		printf("\n退出系统中...");
		Sleep(3000);
		exit(0);
	}
	return 0;
}
//*********************
//*********************
//*********************
int xiugai(void)      //修改信息 
{
	int a;
	printf("\n----------------------------------------------------\n");
	printf("\t      ───修改信息───\n\n");
	printf("\t        ┌──────┐\n");
	printf("\t        │1.按学号修改│\n");
	printf("\t        │            │\n");
	printf("\t        │2.按姓名修改│\n");
	printf("\t        │            │\n");
	printf("\t        │3.返回      │\n");
	printf("\t        └──────┘\n");
	printf("\t  请选择修改方式:");
	scanf("%d", &a);
	while (a<1 || a>3)
	{
		printf("输入错误~请重新输入:");
		scanf("%d", &a);
	}
	if (a == 1)
	{
		idxiugai();   //按学号方式修改 
	}
	if (a == 2)
	{
		namexiugai();   //按姓名方式修改 
	}
	if (a == 3)
	{
		system("cls");   
		menu();
	}
	return 0;
}
//**************************
//**************************
//**************************
int chaxun(void)   //查询信息
{
	int a;
	printf("----------------------------------------------------\n");
	printf("\t      ───查询信息───\n");
	printf("\t  ┌─────────────┐ \n");
	printf("\t  │1.按学号查询  2.按姓名查询│ \n");
	printf("\t  │                          │ \n");
	printf("\t  │3.全部显示    4.返回      │ \n");
	printf("\t  └─────────────┘ \n");
	printf("\t  请输入你的选择:");
	scanf("%d", &a);
	while(a<1||a>3)
	{
		printf("\t  请输入你的选择:");
		scanf("%d",&a);
	} 
	if (a == 1)
	{
		idchaxun();    //按学号方式查询 
	}
	if (a == 2)
	{
		namechaxun();  //按姓名方式查询 
	}
	if (a == 3)
	{
		quanbuxianshi();  //全部显示 
	}
	if (a == 4)
	{
		system("cls");
		menu();
	}
}
//******************************
//******************************
//******************************
int idchaxun(void)    //按学号查询
{
	int i,j,a;
	printf("\t  请输入需要查询的学号:");
	scanf("%d",&a);
	j=0;
	for(i=0;i<100;i++)
	{
		if(stu[i].id==a)
		{
			j=1;        //节点 
			printf("^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n");
			printf(" 学号\t姓名\t性别\t年龄\t语文\t数学\t英语\t专业\t总分\n");
			printf("^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n");
			printf("  %d\t %s\t %s\t %d\t %d\t %d\t %d\t %d\t %d\n", stu[i].id, stu[i].name, stu[i].xin, stu[i].age,
			stu[i].yu, stu[i].shu, stu[i].yin, stu[i].com, stu[i].sum);
			printf("\n\n   输入1返回主界面,按其他键退出程序! ");
			break; 
		}
	}
	if(j==0)   //节点没变说明没有查询到结果 
	{
		printf("\t  对不起,记录中没有此人!\n");
		printf("\n\n   输入1返回主界面,按其他键退出程序! ");
	}
	scanf("%d",&a);
	if(a==1)
	{
		system("cls");
		menu();
	}
	if(a!=1)
	{
		printf("\n\t\t\t\t退出系统中...");
		Sleep(3000);
		exit(0);
	}
	return 0;
}
//******************************
//******************************
//******************************
int namechaxun(void)  //按姓名查询
{
	char num[10];
	int i,j,a;
	printf("\t  请输入需要查询的姓名:");
	scanf("%s",num);
	j=0;
	for(i=0;i<10;i++)
	{
		if(strcmp(num,stu[i].name)==0)
		{
			j=1;
			printf("^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n");
			printf(" 学号\t姓名\t性别\t年龄\t语文\t数学\t英语\t专业\t总分\n");
			printf("^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n");
			printf("  %d\t %s\t %s\t %d\t %d\t %d\t %d\t %d\t %d\n", stu[i].id, stu[i].name, stu[i].xin, stu[i].age,
			stu[i].yu, stu[i].shu, stu[i].yin, stu[i].com, stu[i].sum);
			printf("\n\n   输入1返回主界面,按其他键退出程序! ");
			break;
		}
	}
	if(j==0)
	{
		printf("\t  对不起,记录中没有此人!");
		printf("\n\n  输入1返回主界面,按其他键退出程序!  ");
	}
	scanf("%d",&a);
	if(a!=1)
	{
		printf("\n\t\t\t\t退出程序中...");
		Sleep(3000);
		exit(0);
	}
	if(a==1)
	{
		system("cls");
		menu();
	}
	return 0;
}
//******************************
//******************************
//******************************
int quanbuxianshi(void)  //全部显示
{
	int a;
	printf("\n");
	printf("^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n");
	printf(" 学号\t姓名\t性别\t年龄\t语文\t数学\t英语\t专业\t总分\n");
	printf("^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n");
	for(j=0;j<i;j++)
	{
		printf("  %d\t %s\t %s\t %d\t %d\t %d\t %d\t %d\t %d\n", stu[j].id, stu[j].name, stu[j].xin, stu[j].age,
		stu[j].yu, stu[j].shu, stu[j].yin, stu[j].com, stu[j].sum);
	}
	printf("\n\n   输入1返回主界面,按其他键退出程序! ");
	scanf("%d", &a);
	if (a == 1)
	{
		system("cls");
		menu();
	}
	if (a != 1)
	{
		printf("\n\t\t\t\t\t退出程序中...");
		Sleep(3000);
		exit(0);
	}
	return 0;
}
//**************************
//**************************
//**************************
int idxiugai(void)  //按学号修改
{
	int i,a,j;
	printf("\t  请输入需要修改的学号信息:");
	scanf("%d",&a);
	while(a>100&&a<1)
	{
		printf("\t  输入范围为1~100:");
		scanf("%d",&a);
	}
	j=0;
	for(i=0;i<100;i++)
	{
		if(a==stu[i].id)
		{
			j=1;
			printf("请输入修改后新的信息:\n");
			printf("学号:");
			scanf("%d", &stu[i].id);
			while (stu[i].id<1 || stu[i].id>100)
			{
				printf("输入范围为1~100:");
				scanf("%d", &stu[i].id);
			}
			printf("姓名:");
			getchar();
			gets(stu[i].name);
			printf("性别:");
			gets(stu[i].xin);
			while (strcmp(stu[i].xin,"男") != 0 && strcmp(stu[i].xin, "女") != 0)
			{
				printf("性别只限男女:");
				gets(stu[i].xin);
			}
			printf("年龄:");
			scanf("%d", &stu[i].age);
			while (stu[i].age <= 0 || stu[i].age>100)
			{
				printf("年龄只限1~100:");
				scanf("%d", &stu[i].age);
			}
			printf("语文:");
			scanf("%d", &stu[i].yu);
			while (stu[i].yu<0 || stu[i].yu>100)
			{
				printf("输入只限0~100:");
				scanf("%d", &stu[i].yu);
			}
			printf("数学:");
			scanf("%d", &stu[i].shu);
			while (stu[i].shu<0 || stu[i].shu>100)
			{
				printf("输入只限0~100:");
				scanf("%d", &stu[i].shu);
			}
			printf("英语:");
			scanf("%d", &stu[i].yin);
			while (stu[i].yin<0 || stu[i].yin>100)
			{
				printf("输入只限0~100:");
				scanf("%d", &stu[i].yin);
			}
			printf("专业:");
			scanf("%d", &stu[i].com);
			while (stu[i].com<0 || stu[i].com>100)
			{
				printf("输入只限1~100:");
				scanf("%d", &stu[i].com);
			}
			stu[i].sum=0;
			stu[i].sum = stu[i].yu + stu[i].shu + stu[i].yin + stu[i].com;
			printf("\n修改完毕!\n\n按1返回主界面,按其他键退出程序!  ");
		}
	}
	if(j==0)
	{
		printf("\t  对不起,记录中没有此人!");
		printf("\n\n按1返回主界面,按其他键退出程序!  ");
	}
	scanf("%d",&a);
	if(a==1)
	{
		system("cls");
		menu();
	}
	if(a!=1)
	{
		printf("\n\t\t\t\t退出程序中...");
		Sleep(3000);
		exit(0);
	}
	return 0;
}
//**************************
//**************************
//**************************
int namexiugai(void)  //按姓名修改
{
	int a,i,j;
	char num[10];
	printf("\t  请输入需要修改的名称信息:");
	scanf("%s",num);
	j=0;
	for(i=0;i<100;i++)
	{
		if(strcmp(num,stu[i].name)==0)
		{
			j=1;
			printf("请输入修改后新的信息:\n");
			printf("学号:");
			scanf("%d", &stu[i].id);

	。。。。。。。。
    。。。。。。。。
    。。。。。。。。
    如果需要全部代码,那么请添加 qq:1294604252
    如果不好用  当我啥也没说 →_→ →_→

​

 

 


 

 

 

 

 

相关标签: C语言