一、代码
1.主函数
#include<stdio.h> #include <stdlib.h> #include <string.h> struct students { //定义结构体 char name[20]; char num[15]; char sex[10]; char Class[10]; char score[10]; }; //定义一个结构题数组用来存放学生信息 void begin();//用来展示首页面的一个自定义函数 void sever();//用来展示功能界面的自定义函数 void add_to();//录入学生信息 void query();//查询 int main() { begin();//调用首页面函数 sever();//调用功能菜单页面函数 printf("请选择您需要的业务\n"); int sever; part1: scanf("%d", &sever); switch(sever) { case 1: add_to();break; case 2: query();break; case 0: break; default:{ printf("请输入正确的序号\n"); goto part1; break; } } }
2.begin函数(调出主页面)
void begin()//主页面函数 { system("color E0"); printf("\n\n\n"); printf("\t\t★☆★☆----------------------------------------------★☆★☆\n"); printf("\t\t★☆★☆----------------------------------------------★☆★☆\n"); printf("\t\t★☆★☆-----------------欢迎使用---------------------★☆★☆\n"); printf("\t\t★☆★☆ 学生信息管理系统 ★☆★☆\n"); printf("\t\t★☆★☆----------------------------------------------★☆★☆\n"); printf("\t\t★☆★☆ ★☆★☆\n"); printf("\t\t★☆★☆ ★☆★☆\n"); printf("\n\n\n"); system("pause");//窗口冻结 }
3.sever函数(调出业务选择)
void sever() //业务选择界面 { system("cls");//实现清屏操作 printf("\n\n\n"); printf("\t\t★☆★☆----------------------------------------------★☆★☆\n"); printf("\t\t★☆★☆ | 功能菜单 | ★☆★☆\n"); printf("\t\t★☆★☆----------------------------------------------★☆★☆\n"); printf("\t\t★☆★☆ ★☆★☆\n"); printf("\t\t★☆★☆ [1]添加学生信息 ★☆★☆\n"); printf("\t\t★☆★☆ [2]查询学生信息 ★☆★☆\n"); printf("\t\t★☆★☆ [0] 退出系统 ★☆★☆\n"); printf("\t\t★☆★☆ ★☆★☆\n"); printf("\t\t★☆★☆----------------------------------------------★☆★☆\n"); printf("\n\n\n"); system("pause");//实现窗口冻结 }
4.录入函数
void add_to()//录入学生信息 { system("cls");//实现清屏操作 char name1[10][20]; char name2[10][20]; char sex[10]; char num[15]; char Class[10]; char score[10]; int n; struct students a[100]; FILE* fp; printf("需要添加添加的学生人数:\n"); scanf("%d", &n); printf(" 姓名 学号 性别 班级 线代成绩\n"); for (int i = 0; i < n; i++) { printf("\n"); printf(" "); scanf("%s", name1[i]);//输入姓名 /* strcpy(name2[i], name1[i]);*///待删除 strcat(name1[i], ".txt");//将txt文件用名字命名 FILE* fp; if ((fp = fopen(name1[i], "w+")) == NULL) { printf("File open error!\n"); exit(0); }//检查打开是否出错 scanf("%s %s %s %s", &a[i].num,&a[i]. sex,&a[i].Class, &a[i].score); fprintf(fp, "%s %s %s %s", &a[i].num, &a[i].sex, &a[i].Class, &a[i].score);//将数据存入文本文档 if (fclose(fp)) { printf("Can not close the file!\n"); exit(0); } } printf("\n 添加成功!\n");//提示添加成功 exit(0); }
4.查询函数
void query()//查询服务 { system("cls"); char name1[20]; char name2[20]; /* char sex[10]; char num[15]; char Class[10]; char score[10];*/ int i; printf("请输入查询个数:"); scanf("%d", &i); struct students a[500]; FILE* fp; printf("请输入姓名:"); while (i > 0) { scanf("%s", name1); strcpy(name2,name1); strcat(name1, ".txt"); if ((fp = fopen(name1, "r")) == NULL) { printf("Failed to open file\n"); } fscanf(fp, "%s %s %s %s", &a[i].num, &a[i].sex, &a[i].Class, &a[i].score);//从文件中读取数据 printf(" 姓名 学号 性别 班级 线代成绩\n"); printf(" %s %s %s %s %s", name2, a[i].num, a[i].sex, a[i].Class, a[i].score); fclose(fp); i--; } system("pause");//暂停页面,防止退出 exit(1); }
二、运行截图
任务一
任务二
任务三
运行截图
三、system函数
1.system("pause"):暂停界面,可以停留仔细查看信息。
2.system(“cls”)清除界面,是界面信息更直观简洁。
3.system(“date”)显示使用时间。
4.system("color 0A"); 其中color后面的0是背景色代号,A是前景色代号。各颜色代码如下:
0=黑色 1=蓝色 2=绿色 3=湖蓝色 4=红色 5=紫色 6=黄色 7=白色 8=灰色 9=淡蓝色 A=淡绿色 B=淡浅绿色 C=淡红色 D=淡紫色 E=淡黄色 F=亮白色