C语言实现学生信息管理系统

先看效果

录入学生信息

C语言实现学生信息管理系统

浏览学生信息

C语言实现学生信息管理系统

以学号查询学生信息

C语言实现学生信息管理系统

以姓名查询学生信息

C语言实现学生信息管理系统

修改学生信息

C语言实现学生信息管理系统
C语言实现学生信息管理系统

删除学生信息

C语言实现学生信息管理系统

头文件 text1.h

#include<stdio.h>
#include<string.h>
struct meeting
{
	int num;//学生学号 

	char name[20];//学生姓名 
	char sex[20];//学生性别
	char classroom[100];//学生班级 
	char date[20];//学生出生日期
	char contact[20];//学生联系方式
	char address[20];//学生家庭住址
};

void add();//添加学生信息函数 
void scan();//浏览学生信息函数 
void inquire();//查询学生信息函数 
void change();//修改学生信息函数 
void deletel();//删除学生信息函数 

函数文件 test1.cpp

#include<stdio.h>
#include<string.h>
#include"test1.h"

int n = 0;
struct meeting met[100];
struct meeting *p;  //定义指针变量指向结构体类型 

void add()/*添加函数*/
{
	int y;
	if (n == 0)
		p = met;  //使指针指向结构体变量 
	do
	{
		printf("\t\t\t----现在开始进行学生信息的的添加!------\n");
		printf("\t\t\t现在输入学生学号:");
		scanf_s("%d", &p->num);
		printf("\t\t\t然后输入学生姓名:");
		scanf_s("%s", &p->name,20);
		printf("\t\t\t然后输入学生性别:");
		scanf_s("%s", &p->sex,10);
		printf("\t\t\t然后输入学生班级:");
		scanf_s("%s", &p->classroom,20);
		printf("\t\t\t再输入学生出生日期:");
		scanf_s("%s", &p->date,20);
		printf("\t\t\t再再输入学生联系方式:");
		scanf_s("%s", &p->contact,20);
		printf("\t\t\t最后输入学生家庭住址:");
		scanf_s("%s", &p->address,20);

		n++;
		p++;
		printf("\n\t\t\t1.有趣!我要继续输入.\n\t\t\t0.累了累了,输入完毕.\n");
		printf("\t\t\t请选择:");
		scanf_s("%d", &y);
	} while (y == 1);
	printf("\t\t\t总共输入%d个学生信息!\n", n);

}

void scan()/*浏览函数*/
{
	int i, j;
	if (n != 0)
	{
		printf("\n");
		printf("\t\t\t学生总数:%d\n", n);
		printf("\n学生学号\t学生姓名\t学生性别\t学生班级\t学生出生日期\t学生联系方式\t学生家庭住址\n");
		printf("-----------------------------------------------------------------------------------------------------------\n");
		for (i = 0; i < n; i++)
			printf("%d\t\t%s\t\t%s\t\t%s\t%s\t%s\t%s\n", met[i].num, met[i].name, met[i].sex, met[i].classroom, met[i].date, met[i].contact, met[i].address);
	}
	else printf("\t\t\t报告,找不到学生信息,您得先输入信息啊!");
}

void inquire()/*查询函数*/
{
	int c;
	int w, i, j = 0;
	char name[20];
	if (n != 0)
	{
		do {
			printf("\n");
			printf("\t\t\t+---您有两种方式可以查询-----+\n");
			printf("\t\t\t| 按学生学号查询  请按 1 |\n");
			printf("\t\t\t| 按学生姓名查询  请按 2 |\n");
			printf("\t\t\t| 不查了!        请按 0 |\n");
			printf("\t\t\t+--------------------+\n");
			printf("\t\t\t请输入您的选择:");
			scanf_s("%d", &c);
			switch (c)
			{
			case 0:break;
			case 1:
				printf("\t\t\t请输入学生学号;");
				scanf_s("%d", &w);
				printf("\n");
				for (i = 0; i < n; i++)
					if (met[i].num == w)
					{
						printf("\n学生学号\t学生姓名\t学生性别\t学生班级\t学生出生日期\t学生联系方式\t学生家庭住址\n");
						printf("%d\t\t%s\t\t%s\t\t%s\t%s\t%s\t%s\n", met[i].num, met[i].name, met[i].sex, met[i].classroom, met[i].date, met[i].contact, met[i].address);
						j = 1;
					}
				if (j == 0)
					printf("\t\t\t您是不是搞错了,没有该学生学号的信息啊。。。");
				break;
			case 2:
				printf("\t\t\t请输入学生姓名:");
				scanf_s("%s", name,10);
				printf("\n");
				for (i = 0; i < n; i++)
					if (strcmp(name, met[i].name) == 0)
					{
						printf("\n学生学号\t学生姓名\t学生性别\t学生班级\t学生出生日期\t学生联系方式\t学生家庭住址\n");
						j = 1;
						printf("%d\t\t%s\t\t%s\t\t%s\t%s\t%s\t%s\n", met[i].num, met[i].name, met[i].sex, met[i].classroom, met[i].date, met[i].contact, met[i].address);
					}
				if (j == 0)
					printf("\t\t\t您是不是搞错了,没有该名称的学生信息啊。。。");
				break;
			default:
				printf("\n\t\t\t不好意思,目前只能通过这两种方式查询喔!");
				break;
			}

		} while (c != 0);
	}
	else  printf("\t\t\t您要先输入学生信息才可以查询喔!");
	return;
}

void change()/*修改函数*/
{
	int num;
	int i, j, c;
	if (n != 0)
	{
		printf("\t\t\t请输入您要修改的学生学号:");
		scanf_s("%d", &num);
		printf("\n");
		for (i = 0; i < n; i++)
			if (met[i].num == num)
				j = i;
		do {
			printf("\t\t\t请问想修改哪个学生的信息呢:\n");
			printf("\t\t\t+----------------------+\n");

			printf("\t\t\t| 学生姓名          请按 1 |\n");
			printf("\t\t\t| 学生性别          请按 2 |\n");
			printf("\t\t\t| 学生班级          请按 3 |\n");
			printf("\t\t\t| 学生出生日期      请按 4 |\n");
			printf("\t\t\t| 学生联系方式      请按 5 |\n");
			printf("\t\t\t| 学生家庭住址      请按 6 |\n");
			printf("\t\t\t| 取消              请按 0 |\n");
			printf("\t\t\t+----------------------+\n");
			printf("\t\t\t请输入您的选择:");
			scanf_s("%d", &c);
			printf("\n");
			switch (c)
			{
			case 0:break;

			case 1:printf("\t\t\t请输入新的学生姓名:");
				scanf_s("%s", met[j].name,20);
				break;
			case 2:printf("\t\t\t请输入新的学生性别:");
				scanf_s("%s", met[j].sex,20);
				break;
			case 3:printf("\t\t\t请输入新的学生班级:");
				scanf_s("%s", met[j].classroom,20);
				break;
			case 4:printf("\t\t\t请输入新的学生出生日期:");
				scanf_s("%s", met[j].date,20);
				break;
			case 5:printf("\t\t\t请输入新的学生联系方式:");
				scanf_s("%s", met[j].contact,20);
				break;
			case 6:printf("\t\t\t请输入新的学生家庭住址:");
				scanf_s("%s", met[j].address,20);
				break;
			default:
				printf("\n\t\t\t请按正确编号选择!!");
				break;
			}

		} while (c != 0);
	}
	else   printf("\t\t\t提示:您得先输入学生信息才可以修改呀!");
}

void deletel()/*删除函数*/
{
	long int num;
	int i, j, e;
	if (n != 0)
	{
		printf("\n学生学号\t学生姓名\t学生性别\t学生班级\t学生出生日期\t学生联系方式\t学生家庭住址\n");
		printf("------------------------------------------------------------------------------------------------------\n");
		for (i = 0; i < n; i++)
			printf("%d\t\t%s\t\t%s\t\t%s\t%s\t\%s\t%s\n", met[i].num, met[i].name, met[i].sex, met[i].classroom, met[i].date, met[i].contact, met[i].address);
		printf("\t\t\t请输入想删除的学生编号:");
		scanf_s("%d", &num);
		printf("\n");
		for (i = 0; i < n; i++)
			if (num == met[i].num)
				j = i;
		if (j != (n - 1))
		{
			for (e = i - 1; e < n; e++, j++)
			{
				met[j].num = met[j + 1].num;
				strcpy_s(met[j].name, met[j + 1].name);
				strcpy_s(met[j].sex, met[j + 1].sex);
				strcpy_s(met[j].classroom, met[j + 1].classroom);
				strcpy_s(met[j].date, met[j + 1].date);
				strcpy_s(met[j].contact, met[j + 1].contact);
				strcpy_s(met[j].address, met[j + 1].address);
				n--;
			}
		}
		else { n--; }
		printf("\t\t\t提示:删除完毕!");
	}
	else    printf("需要先输入学生信息才可以删除喔!");
}

主页面 test2.cpp

#include<stdio.h>
#include<stdlib.h>
#include"test1.h"

int main() //主界面 
{
	int z;
	printf("\t\t\t*********************************\n");
	printf("\t\t\t-》  欢迎来到学生信息管理系统 《-\n");
	printf("\t\t\t*********************************\n");
	printf("\t\t\t温馨提醒:请根据操作提示进行选择,让程序顺利执行,谢谢!【o。o】\n");
	do
	{
		printf("\n\t\t\t--------------------------------\n");
		printf("\t\t\t*        学生信息管理主菜单            |\n");
		printf("\t\t\t--------------------------------\n");
		printf("\t\t\t*    (1)----录入学生信息       |\n");
		printf("\t\t\t*    (2)----浏览学生信息       |\n");
		printf("\t\t\t*    (3)----查询学生信息       |\n");
		printf("\t\t\t*    (4)----删除学生信息       |\n");
		printf("\t\t\t*    (5)----修改学生信息       |\n");
		printf("\t\t\t*    (0)----退出系统           |\n");
		printf("\t\t\t--------------------------------\n");
		printf("\t\t\t请输入想要进行操作的编号:");
		scanf_s("%d", &z);
		switch (z)
		{
		case 0:    break;
		case 1:add(); break;
		case 2:scan(); break;
		case 3:inquire(); break;
		case 4:deletel(); break;
		case 5:change(); break;
		default:printf("\n\t\t\t请不要调皮,没有该选项喔!");
		}
	} while (z != 0);
}
上一篇:Android混淆打包


下一篇:微光二维码对接c#met