C语言大作业——学生信息管理系统
学生信息管理系统c语言代码

#include<stdio.h>#include<stdlib.h>#include<string.h>#define LEN 15#define N 100struct record //定义结构体{char code[LEN];char name[LEN];int age;char sex[3];char time[LEN];char add[30];char tel[LEN];char mail[30];}stu[N];int k=1,n,m; //引用void readfile();void seek();void modify();void insert();void del();void display();void save();void menu();int main(){while(k)menu();system("pause");return 0;}void help(){printf("\n0.欢迎使用系统帮助!\n");printf("\n1.进入系统后,先刷新学生信息,再查询;\n");printf("\n2.按照菜单提示键入数字代号;\n");printf("\n3.增加学生信息后,切记保存按;\n");printf("\n4.谢谢您的使用!\n");}void readfile()//建立信息{char *p="student.txt";FILE *fp;int i=0;if ((fp=fopen("C:\\Users\\86139\\Desktop\\student.txt","r+"))==NULL){printf("Open file %s error! Strike any key to exit!",p);system("pause");//暂停的意思,等待用户信号exit(0);}while(fscanf(fp,"%s %s %d %s %s %s %s %s",stu[i].code,stu[i].name,&stu[i].age,stu[i].sex,stu[i].time,s tu[i].add,stu[i].tel,stu[i].mail)==8){i++;i=i;}fclose(fp);n=i;printf("录入完毕!\n");}void seek() //查找信息{int i,item,flag;char s1[21];printf("------------------\n");printf("-----1.按学号查询-----\n");printf("-----2.按姓名查询-----\n");printf("-----3.退出本菜单-----\n");printf("------------------\n");while(1){printf("请选择子菜单编号:");scanf("%d",&item);flag=0;switch(item){case 1:printf("请输入要查询的学生的学号:\n");scanf("%s",s1);for(i=0;i<n;i++)if(strcmp(stu[i].code,s1)==0)//{flag=1;printf("学生学号学生姓名年龄性别出生年月地址电话E-mail\n");printf("--------------------------------------------------------------------\n");printf("%6s %7s %6d %5s %9s %8s %10s %14s\n",stu[i].code,stu[i].name,stu[i].age,stu[i].sex,st u[i].time,stu[i].add,stu[i].tel,stu[i].mail);if(flag==0){printf("该学号不存在!\n");}}break;case 2:printf("请输入要查询的学生的姓名:\n");scanf("%s",s1);for(i=0;i<n;i++)if(strcmp(stu[i].name,s1)==0){flag=1;printf("学生学号学生姓名年龄性别出生年月地址电话E-mail\n");printf("--------------------------------------------------------------------\n");printf("%6s %7s %6d %5s %9s %8s %10s %14s\n",stu[i].code,stu[i].name,stu[i].age,stu[i].sex,st u[i].time,stu[i].add,stu[i].tel,stu[i].mail);}if(flag==0)printf("该姓名不存在!\n"); break;case 3:return;default:printf("请在1-3之间选择\n");}}}void modify() //修改信息{int i,item,num;char sex1[3],s1[LEN],s2[LEN];printf("请输入要要修改的学生的学号:\n");scanf("%s",s1);for(i=0;i<n;i++)if(strcmp(stu[i].code,s1)==0){num=i;printf("------------------\n");printf("1.修改姓名\n");printf("2.修改年龄\n");printf("3.修改性别\n");printf("4.修改出生年月\n");printf("5.修改地址\n");printf("6.修改电话号码\n");printf("7.修改E-mail地址\n");printf("8.退出本菜单\n");printf("------------------\n");}while(1){printf("请选择子菜单编号:");scanf("%d",&item);switch(item){case 1:printf("请输入新的姓名:\n");scanf("%s",s2);strcpy(stu[num].name,s2); break;case 2:printf("请输入新的年龄:\n");scanf("%d",&stu[num].age);break;case 3:printf("请输入新的性别:\n");scanf("%s",sex1);strcpy(stu[num].sex,sex1); break;case 4:printf("请输入新的出生年月:\n");scanf("%s",s2);strcpy(stu[num].time,s2); break;case 5:printf("请输入新的地址:\n");scanf("%s",s2);strcpy(stu[num].add,s2); break;case 6:printf("请输入新的电话号码:\n");scanf("%s",s2);strcpy(stu[num].tel,s2); break;case 7:printf("请输入新的E-mail地址:\n");scanf("%s",s2);strcpy(stu[num].mail,s2); break;case 8:return;default:printf("请在1-8之间选择\n");}}}void sort()//排序{int i,j,*p,*q,s;char temp[10];for(i=0;i<n-1;i++){for(j=n-1;j>i;j--)if(strcmp(stu[j-1].code,stu[j].code)>0)//比较学号的大小{strcpy(temp,stu[j-1].code); //交换学号以及以下的信息(冒泡排序)strcpy(stu[j-1].code,stu[j].code);strcpy(stu[j].code,temp);strcpy(temp,stu[j-1].name);strcpy(stu[j-1].name,stu[j].name);strcpy(stu[j].name,temp);strcpy(temp,stu[j-1].sex);strcpy(stu[j-1].sex,stu[j].sex);strcpy(stu[j].sex,temp);strcpy(temp,stu[j-1].time);strcpy(stu[j-1].time,stu[j].time);strcpy(stu[j].time,temp);strcpy(temp,stu[j-1].add);strcpy(stu[j-1].add,stu[j].add);strcpy(stu[j].add,temp);strcpy(temp,stu[j-1].tel);strcpy(stu[j-1].tel,stu[j].tel);strcpy(stu[j].tel,temp);strcpy(temp,stu[j-1].mail);strcpy(stu[j-1].mail,stu[j].mail);strcpy(stu[j].mail,temp);p=&stu[j-1].age;q=&stu[j].age;s=*q;*q=*p;*p=s;}}}void insert()//插入函数{int i=n,j,flag;printf("请输入待增加的学生数:\n");scanf("%d",&m);do{flag=1;while(flag){flag=0;printf("请输入第%d 个学生的学号:\n",i+1);scanf("%s",stu[i].code);for(j=0;j<i;j++)if(strcmp(stu[i].code,stu[j].code)==0){printf("已有该学号,请检查后重新录入!\n");flag=1;break;}}printf("请输入第%d 个学生的姓名:\n",i+1);scanf("%s",stu[i].name);printf("请输入第%d 个学生的年龄:\n",i+1);scanf("%d",&stu[i].age);printf("请输入第%d 个学生的性别:\n",i+1);scanf("%s",stu[i].sex);printf("请输入第%d 个学生的出生年月:(格式:年.月)\n",i+1);scanf("%s",stu[i].time);printf("请输入第%d 个学生的地址:\n",i+1);scanf("%s",stu[i].add);printf("请输入第%d 个学生的电话:\n",i+1);scanf("%s",stu[i].tel);printf("请输入第%d 个学生的E-mail:\n",i+1);scanf("%s",stu[i].mail);if(flag==0){i=i;i++;}}while(i<n+m);n+=m;printf("录入完毕!\n\n");sort();}void del()//删除信息{int i,j,flag=0;char s1[LEN+1];printf("请输入要删除学生的学号:\n");scanf("%s",s1);for(i=0;i<n;i++)if(strcmp(stu[i].code,s1)==0){flag=1;for(j=i;j<n-1;j++)stu[j]=stu[j+1];}if(flag==0)printf("该学号不存在!\n");if(flag==1){printf("删除成功,显示结果请选择菜单\n");n--;}}void display() //浏览信息{int i;printf("所有学生的信息为:\n");printf("学生学号学生姓名年龄性别出生年月地址电话E-mail\n");printf("--------------------------------------------------------------------\n");for(i=0;i<n;i++){printf("%6s %7s %5d %5s %9s %8s %10s %14s\n",stu[i].code,stu[i].name,stu[i].age,stu[i].sex,stu[i].ti me,stu[i].add,stu[i].tel,stu[i].mail);}}void save() // 保存{int i;FILE *fp;fp=fopen("C:\\Users\\86139\\Desktop\\student.txt","a");for(i=0;i<n;i++){fprintf(fp,"%s %s %d %s %s %s %s %s\n",stu[i].code,stu[i].name,stu[i].age,stu[i].sex,stu[i].time,stu[i]. add,stu[i].tel,stu[i].mail);}fclose(fp);}void menu()//菜单{int num;printf(" \n\n 学生信息管理系统\n\n");printf("*********************系统功能菜单************************ \n");printf("友情提示:查询前请先刷新系统!\n");printf(" ---------------------- ---------------------- \n");printf(" ********************************************* \n");printf(" * 0.系统帮助及说明* * 1.刷新学生信息* \n");printf(" ********************************************* \n");printf(" * 2.查询学生信息* * 3.修改学生信息* \n");printf(" ********************************************* \n");printf(" * 4.增加学生信息* * 5.按学号删除信息* \n");printf(" ********************************************* \n");printf(" * 6.显示当前信息* * 7.保存当前学生信息* \n");printf(" ********************** ********************** \n");printf(" * 8.退出系统* \n");printf(" ********************** \n");printf(" ---------------------- ---------------------- \n");printf("请选择菜单编号:");scanf("%d",&num);switch(num){case 0:help();break;case 1:readfile();break;case 2:seek();break;case 3:modify();break;case 4:insert();break;case 5:del();break;case 6:display();break;case 7:save();break;case 8:k=0;break;default:printf("请在0-8之间选择\n");} }。
学生管理系统c语言简单版

学生管理系统c语言简单版学生管理系统c语言简单版介绍:学生管理系统是一种用于管理学生信息的软件,它可以方便地对学生的基本信息、课程成绩等进行录入、查询、修改和删除等操作。
本文将介绍如何使用C语言编写一个简单的学生管理系统。
功能:1. 添加学生信息2. 查询学生信息3. 修改学生信息4. 删除学生信息5. 显示所有学生信息实现方法:1. 添加学生信息添加学生信息需要输入以下内容:姓名、性别、年龄、班级和电话号码。
我们可以定义一个结构体来存储这些信息,代码如下:```struct Student {char name[20];char sex[10];int age;char class[20];char phone[20];};```然后定义一个数组来存储多个学生的信息:```struct Student students[100];int count = 0; // 学生数量```接下来,我们可以编写一个函数来添加新的学生信息:```void addStudent() {struct Student student;printf("请输入姓名:");scanf("%s", );printf("请输入性别:");scanf("%s", student.sex);printf("请输入年龄:");scanf("%d", &student.age);printf("请输入班级:");scanf("%s", student.class);printf("请输入电话号码:");scanf("%s", student.phone);students[count++] = student; // 将新的学生信息存储到数组中 printf("添加成功!\n");}```2. 查询学生信息查询学生信息可以按照姓名或电话号码进行查询。
C语言程序设计实习报告学生信息管理系统

C语言程序设计实习报告学生信息管理系统C 语言课程设计题目:学生信息管理系统设计者:梁天江专业:机械设计制造及其自动化班级学号: 072084-31所属院系:机电学院指导教师:吴湘宁7月17日1.题目和要求:1.1问题提出与要求:学生成绩管理系统[要求]设计一个学生成绩管理系统,对在校某班学生几门课程的考试成绩进行统一管理。
每个学生记录包括学号、姓名、年龄、数学、英语、物理成绩,默认以学号为序存放。
(1)一个文件按以班为单位存储学生记录。
(2)将允许的操作分为六种A:插入一个新的学生记录(录入学生信息)B:修改学生记录C:删除一个学生记录D:登记成绩E:修改成绩F:浏览全班成绩(3)计算学生的总成绩(4)输出全班成绩表1.2需求分析.根据题目要求,由于学生信息是存放在文件中,因此应提供文件的输入,输出等操作;在程序中需要浏览学生的信息,应提供显示,查找,排序等操作;另外还应提供键盘式选择菜单实现功能选择.2.功能实现设计:2.1总体设计:分析系统:根据题目的需求分析,可将这个系统设计为六大模块(见下图):插入学生信息,修改,删除,登记,浏览,统计。
2.2详细设计:1、主函数主函数设计得比较简洁,只提供输入、功能处理和输出部分的函数调用。
其中各功能模块用菜单方式选择;其流程图如下:[程序]void main(){int a;do{printf("\t\t\t\t\n");printf("\t\t\t\t学生成绩管理系统\n");printf("\n");printf("\t\t\t作者:梁天江班级:072084-31 学号: 1004528\n"); printf("\t\t\t-------------------------------------------\n\n");printf("\t 1.插入新的学生记录\n");printf("\t 2.修改学生记录\n");printf("\t 3.删除学生记录\n");printf("\t 4.显示学生成绩和总分\n");printf("\t 5.浏览全班成绩\n");printf("\t 6.退出\n\n");。
用C语言编写的一个学生信息管理系统

用C语言实现线性表的基本操作,能创建一个基于学生信息管理的链表,至少包含数据输入、数据输出、数据处理等操作。
在主函数里能实现以下功能。
运行后出现一个选择提示。
可选择的功能有1)创建新的学生信息链表2)增加一个新的学生信息3)按学号删除某个学生信息4)按学号查找某个学生信息5)可以按照学生成绩对链表排序6)退出系统#include "stdio.h"#include "stdlib.h"#include "string.h"#include "conio.h"jiemian();struct student{char name[50];char sex[5];int age;char num[50];float score1;float score2;float score3;float sum;float ave;}stu[50],del;void gn1(){int i=0;char num1;for(i=0;i<50;i++){printf("请输入要添加的学生资料:\n");printf("学号:");scanf("%s",stu[i].num);printf("姓名:");scanf("%s",stu[i].name);printf("性别:");scanf("%s",&stu[i].sex);printf("年龄:");scanf("%d",&stu[i].age);printf("请输入学生的三门成绩:\n");printf("语文:");scanf("%f",&stu[i].score1);printf("数学:");scanf("%f",&stu[i].score2);printf("英语:");scanf("%f",&stu[i].score3);printf("是否继续添加:y/n\n");scanf("%c",&num1);scanf("%c",&num1);if(num1=='N' || num1=='n'){system("cls");jiemian();}}}void gn2(){int i;char num[50];printf("请输入要查找的学生学号:\n");scanf("%s",num);for(i=0;i<50;i++)if(strcmp(stu[i].num,num)==0){stu[i].sum=stu[i].score1+stu[i].score2+stu[i].score3;stu[i].ave=stu[i].sum/3;printf("%s\t%s\t%s\t%d\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f:\n",stu[i].num,stu[i].name,stu[i].sex,stu[i] .age,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].sum,stu[i].ave);break;}if(i==50)printf("查找不到!请重新输入!\n");getch();system("cls");jiemian();}void gn3(){char num1,i=0;printf("请输入要修改的学生学号:\n");scanf("%s",stu[i].num);printf("%s\t%s\t%s\t%d\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f:\n",stu[i].num,stu[i].name,stu[i].sex,stu[i] .age,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].sum,stu[i].ave);printf("姓名:");scanf("%s",stu[i].name);printf("性别:");scanf("%s",stu[i].sex);printf("年龄:");scanf("%d",&stu[i].age);printf("请输入学生的三门成绩:\n");printf("语文:");scanf("%f",&stu[i].score1);printf("数学:");scanf("%f",&stu[i].score2);printf("英语:");scanf("%f",&stu[i].score3);printf("是否继续修改:y/n?\n");scanf("%c",&num1);scanf("%c",&num1);if(num1=='N' || num1=='n')system("cls");jiemian();}void gn4(){int i;char num[50];printf("请输入要删除的学生学号:\n");scanf("%s",num);for(i=0;i<50;i++)if(strcmp(num,stu[i].num)==0){printf("%s\t%s\t%s\t%d\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f:\n",stu[i].num,stu[i].name,stu[i].sex,stu[i] .age,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].sum,stu[i].ave);stu[i]=del;printf("信息已删除,按任意键返回..\n");break;}if(i==50)printf("您输入的信息不存在!\n");getch();system("cls");jiemian();}void gn5(){int i=0;stu[i].sum=stu[i].score1+stu[i].score2+stu[i].score3;stu[i].ave=stu[i].sum/3;printf("学号\t姓名\t性别\t年龄\t语文\t数学\t英语\t总成绩\t 平均成绩\n"); for(i=0;i<50;i++){if(stu[i].age==0)break;printf("%s\t%s\t%s\t%d\t%.2f\t%.2f\t%.2f\t%.2f\t%.2f:\n",stu[i].num,stu[i].name,stu[i].sex,stu[i] .age,stu[i].score1,stu[i].score2,stu[i].score3,stu[i].sum,stu[i].ave);}printf("按任意键返回...");getch();system("cls");jiemian();}void gn6(){FILE *fp;int i;char filename[50];printf("\n");printf("\n");printf("请输入要保存的文件名:");scanf("%s",filename);if((fp=fopen(filename,"wb"))==NULL)printf("文件名为空,不能保存!\n");for(i=0;i<50;i++){if(fwrite(&stu[i],sizeof(struct student),1,fp)!=1)printf("文件保存失败!\n");}fclose(fp);printf("文件已保存!\n");printf("按任意键返回...\n");getch();system("cls");jiemian();}void gn7(){FILE *fp;int i=0; //打开文件流char filename[50];printf("请输入文件名:");scanf("%s",filename); //输入要载入的文件名if((fp=fopen(filename,"rb"))==0) //如果当前目录下不存在相对应的文件,输出文件不存在,退出系统。
综合应用案例—学生信息管理系统(C语言)

14.3综合应用案例—学生信息管理系统作为学生,同学们最熟悉自己的相关信息了,如果能够设计一个学生信息管理系统,实现全班乃至全校学生信息的管理系统,是非常有实际意义的。
同时,开发一个小型的信息管理系统,综合应用我们之前学习的基本语法知识和程序设计方法,将是一个提升和锻炼实践能力的好机会。
1. 主要功能设计与开发一个学生信息管理系统,对学生的学号、姓名、性别、年龄等基本信息进行管理,实现基本的增、删、改、查等功能。
2. 功能模块设计通过需求分析,按照结构化程序设计自顶向下,逐步细化的方法,以模块化设计为中心的原则,学生信息管理系统应该具有基本的文件管理、编辑、显示三个功能模块。
文件管理模块包括:加载文件、保存文件、拷贝到目标文件、退出系统;编辑模块包括:输入记录、查找记录、修改记录、删除记录、插入记录、记录排序; 显示模块包括:显示全部记录、按序号显示记录。
系统的功能划分如图14.12所示:学生基本信息管理系统输入学生记录浏览学生记录按姓名查找按姓名删除按学号修改插入学生记录保存文件加载文件按序号浏览按姓名排序拷贝文件文件管理模块编辑模块显示模块退出系统图14.12 系统功能模块图3. 数据结构设计为了实现学生信息的管理,系统中采用的主要数据结构是结构体数组,为了方便系统功能扩展及编码方便,使用了#define 定义结构体数组上限,并使用typedef 定义结构体类型别名。
#define M 50 typedef struct{char no[20];char name[20];char sex[5];int age;}STUDENTS;STUDENTS stu[M];4. 函数及调用关系函数是模块化的主要手段,系统的各个主要功能都设计成函数,通过各个函数相互调用,并最终由主函数main调用组装成整个软件系统。
学生信息管理系统由1个.h头文件和2个.c 源文件组成。
程序中除了主函数外,共设计了以下15个函数,以下是这些函数的函数原型及功能设计。
C语言 学生信息查询系统

以下内容是本人将近一个星期的劳动成果;C语言程序设计,作为本学期最后一次实训。
设计内容:学生信息查询系统可实现:1录入学生信息2显示学生成绩3修改学生成绩4删除学生成绩5按学号查询学生信息6按学好显示学生信息7按总成绩递减输出学生信息其中学生的信息包括:学生总人数,学号,姓名,性别,英语,数学,C语言三科单科成绩及总成绩以下为源程序内容:#include <stdio.h>#include <string.h>//strcpy()#include<process.h>//system(),exit()#include <conio.h>//getch()#define M 100/*全局变量*/int num=-1;/*学生数,从STU[0]开始记录学生信息*/struct studen{long id;/*学号*/char name[8];/*姓名*/char sex[2];/*性别*/intmath;/*数学*/intenglish;/*英语*/intc_program;/*C语言*/inttotal;/*总分*/}STU[M];/*函数声明*/voidpage_title();//显示主菜单void student_new();//输入学生信息void student_del();//删除学生信息void student_edit();//修改学生信息void score_search();//按学号查询成绩void score_sort();//按成绩排序void id_sort();//按学号排序void show();//显示学生记录//void save();//void display();void left();void page_head1();/*打印表头1*/void page_head2();/*打印表头2*/intfind(long);/*按学号查找学生*/voidshow_one(int);/*显示一条记录*/void input_one(int);/*输入一个新学生的信息*/void count(int);/*计算一个新学生的总分*/void in_menu();/*按任意键进入主菜单*//*主函数*/void main(){//display();while(1){ page_title();}}/*主菜单*/void page_title(){char c;system("cls");/*清屏*/printf("\n\n>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>学生成绩管理系统<<<<<<<<<<<<<<<<<<<<\n\n");printf("\t\t\t\t1录入学生成绩记录\n\n");printf("\t\t\t\t2显示学生成绩记录\n\n");printf("\t\t\t\t3修改学生成绩记录\n\n");printf("\t\t\t\t4删除学生成绩记录\n\n");printf("\t\t\t\t5按学号查询学生记录\n\n");printf("\t\t\t\t6按学号显示学生记录\n\n");printf("\t\t\t\t7按总成绩递减输出\n\n");printf("\t\t\t\t8保存\n\n");printf("\t\t\t\t0退出\n\n");printf("********************************************************** ****************\n");printf("请用数字键0-8选择操作:\n");/*填充程序,完成主菜单显示*/c=getchar();system("cls");switch(c){case'1':student_new();break;case'2':show();break;case'3':student_edit();break;case'4':student_del();break;case'5':score_search();break;case'6':id_sort();break;case'7':score_sort();break;//case'8':save();break;case'0':left();}}/*录入学生基本信息*/void student_new(){int i,n;printf("请输入学生的个数(1-%d)",M);scanf("%d",&n);while(!(n>0 && n<=M)){printf("\n输入的学生人数太多,请重新输入学生人数:");scanf ("%d",&n);}page_head1();while(n--){num++;input_one(num);count(num);}}/*删除学生基本信息*/voidstudent_del(){long id;char c;int n;while(1){printf("请输入你要删除学生的学号:");scanf("%ld",&id);printf("\n");n=find(id);if(n!=-1)break;elsesystem("cls");}page_head2();show_one(n);printf("\n请确认删除吗?请输入Y或者N");c=getch();if('Y'==c || 'y'==c){STU[n]=STU[num];num--;}}/*按学号查找学生*/int find(long id){int n;for(n=0;n<=num;n++)if(STU[n].id==id) return n;return -1;}/*输入一个新学生的信息*/void input_one(intn){scanf("%ld%s%s%d%d%d",&STU[n].id,STU[n].name,STU[n].sex,&STU[n].math,&STU[n].english,&STU[n].c_program);printf("---------------------------------------------------------------------\n");}/*显示所有记录*/void show(){inti,j;page_head2();for(i=0;i<num+1;i++){//if(-1==n)//j=num-i;//else//j=i;show_one(i);}in_menu();}/*显示一条记录*/void show_one(intn){if(strlen(STU[n].name)>=10){printf("%ld\t\t%s\t\t%s\t\t",STU[n].id,STU[n].name,S TU[n].sex);}else{printf("%ld\t\t%s\t\t%s\t",STU[n].id,STU[n].name,STU[n].sex);}printf ("%3d\t%3d\t%3d\t%3d\t\n",STU[n].math,STU[n].english,STU[n].c_program,STU[n].t otal);printf("----------------------------------------------------------------------\n");}/*计算一个新学生的总分*/void count(intn){STU[n].total=STU[n].english+STU[n].math+STU[n].c_program;}/*退出*/voidleft(){exit(0);}/*修改信息*/void student_edit(){long id;int n;while(1){printf("请输入你要修改学生的学号:");scanf("%ld",&id);printf("\n");n=find(id);if(n!=-1)break;elsesystem("cls");}page_head2();show_one(n);printf("\n请输入新的信息:\n");page_head1();scanf("%ld%s%s%d%d%d",&STU[n].id,STU[n].name,STU[n].se x,&STU[n].math,&STU[n].english,&STU[n].c_program);count(n);}/*进入主菜单*/void in_menu(){printf("\n请按任意键进入主菜单");getch();}/*按学号查询成绩*/void score_search(){long id;int n;printf("请输入你要修改学生的学号:");scanf("%ld",&id);printf("\n");n=find(id);if(n!=-1){page_head2();show_one(n);}elseprintf("不存在该学号学生信息!!");in_menu();}/*按学号排序显示*/void id_sort(){int i=0;int n;longmin=STU[0].id;for(i=1;i<=num;i++){if(STU[i].id<min)min=STU[i].id;}page_head2();for(i=0;i<=num;){n=find(min++);if(n!=-1){i++;show_one(n);}}in_menu();}/*按总成绩冒泡降序显示*/voidscore_sort(){struct student t;int i,j;system("cls");for(i=0;i<num;i++){for(j=0;j<num-i;j++){if(STU[j].total<STU[j+1].total){t=STU[j];STU[j]=STU[j+1];STU[j+1]=t;}}}show();}/*打印表头2*/voidpage_head2(){printf("**************************************************** ******************\n");printf("学号\t\t姓名\t\t性别\t数学\t英语\tC语言\t总成绩\n");printf("**********************************************************************\n");}/*打印表头1*/voidpage_head1(){printf("**************************************************** **********\n");printf("学号\t\t姓名\t\t性别\t数学\t英语\tC语言\n");printf("************************************************************ **\n");}。
c程序设计大作业

c程序设计大作业C程序设计大作业C程序设计是一门实践性很强的课程,大作业是检验学生对C语言掌握程度的重要方式。
本次大作业的目的在于通过实际编程练习,加深对C 语言基础语法、数据结构、算法设计和程序调试等方面的理解,同时培养学生的编程思维和解决实际问题的能力。
一、大作业要求1. 题目选择:学生可以从以下题目中任选一题完成:- 学生信息管理系统- 图书馆管理系统- 简易计算器- 字符串处理工具- 图形界面的五子棋游戏2. 功能实现:每个题目都应实现基本功能,例如:- 学生信息管理系统:添加、删除、修改、查询学生信息。
- 图书馆管理系统:图书借阅、归还、查询等。
- 简易计算器:实现基本的加减乘除运算。
- 字符串处理工具:实现字符串的复制、连接、查找、替换等操作。
- 图形界面的五子棋游戏:实现基本的下棋逻辑和胜负判断。
3. 代码规范:代码应遵循良好的编程规范,包括但不限于:- 明确的函数分工,每个函数应有简短的注释说明其功能。
- 变量命名应清晰,避免使用无意义的缩写。
- 代码结构清晰,逻辑性强。
4. 文档编写:提交的作业应包括:- 程序设计说明书:介绍程序的功能、设计思路、实现过程等。
- 源代码:按照题目要求编写的C语言代码。
- 用户手册:简要说明如何使用程序。
5. 提交方式:所有材料应以电子文档形式提交,包括设计说明书、源代码和用户手册。
二、大作业流程1. 选题:学生在教师的指导下选择适合自己能力的题目。
2. 需求分析:明确程序需要实现的功能和性能要求。
3. 设计:设计程序的总体结构和各个模块的详细设计。
4. 编码:根据设计文档编写程序代码。
5. 测试:对编写的程序进行测试,确保功能正确无误。
6. 调试:根据测试结果进行必要的调试,修正程序中的错误。
7. 文档编写:编写程序设计说明书和用户手册。
8. 提交:按照要求提交所有材料。
三、评分标准1. 功能实现:程序是否实现了题目要求的所有功能。
2. 代码质量:代码是否规范、清晰、易读。
学生信息管理系统c语言版源代码

学生信息管理系统c语言版源代码#include <stdio.h> #include <string.h> #include <stdlib.h> #include <conio.h> #define N 1000typedef struct student {int number;char name[20];int grade;int gaoshu;int yingyu;int jisuanji;int sum;}STUDENT;STUDENT student[N]; int shuliang=0;void menu();void fhzjm(){char biaozhi[20];printf("\n");printf("还需要操作么,如果需要操作请输入:yes,否则请输入:no\n");scanf("%s",biaozhi);if(strcmp(biaozhi,"yes")==0){menu();}else if(strcmp(biaozhi,"no")==0)exit(0);else{printf("请输入正确的字符,谢谢~\n"); fhzjm();}}void DengJi(){int rs;int i,k=1;system("CLS");printf("请输入需要输入几个学生信息:"); scanf("%d",&rs);for(i=shuliang;i<shuliang+rs;i++,k++) {printf("请输入第%d个学生的学号:",k); scanf("%d",&student[i].number);printf("请输入学生的姓名:");scanf("%s",student[i].name);printf("请输入学生3门课的成绩:"); printf("请输入第1门课的成绩:");scanf("%d",&student[i].gaoshu);printf("请输入第2门课的成绩:");scanf("%d",&student[i].yingyu);printf("请输入第3门课的成绩:");scanf("%d",&student[i].jisuanji);}shuliang=shuliang+rs;fhzjm();}void ShanChu(){char shanchuinfo[10];system("CLS");printf("删除全部学生信息请输入\"all\",删除指定学号的学生信息请输入\"one\"\n");scanf("%s",shanchuinfo);if(strcmp(shanchuinfo,"all")==0){int j;printf("你删除的学生信息如下:\n");printf("-----------学号-------------姓名-------------高数--------------英语--------------计算机\t\n");for(j=0;j<shuliang;j++)printf("----%d-------%s-------%d-------%d-------%d\t\n",student[j].number,student[j].name,student[j].gaoshu,student[j].jisuanji);shuliang=0;printf("删除成功\n\n");}else if(strcmp(shanchuinfo,"one")==0){struct student *p=NULL;int choice;int i,j,k=0;printf("请输入你要删除的人的学号:");scanf("%d",&choice);for(i=0;i<shuliang;i++){if(choice==student[i].number){k=1;j=i;break;}}if(k){if(shuliang==1){p=&student[0];free(p);shuliang=0;}else{for(i=j;i<shuliang;i++) {student[i]=student[i+1];}shuliang=shuliang-1;}printf("删除成功\n\n");}else{printf("输入数据错误~\n"); }}fhzjm();}void LiuLan(){int i;system("CLS");if(shuliang==0){printf("系统里面没有任何学生的信息~\n");}else{for(i=0;i<shuliang;i++){printf("第%d个学生的学号为:%d\n",i+1,student[i].number);printf("第%d个学生的姓名为:%s\n",i+1,student[i].name);printf("第%d个学生的第一门课的成绩为:%d\n",i+1,student[i].gaoshu);printf("第%d个学生的第二门课的成绩为:%d\n",i+1,student[i].yingyu);printf("第%d个学生的第三门课的成绩为:%d\n",i+1,student[i].jisuanji);student[i].sum=student[i].gaoshu+student[i].yingyu+student[i].jisuan ji;printf("第%d个学生的总成绩为:%d\n",i+1,student[i].sum);}}fhzjm();}void ChaZhao(){int xx;char choice,yy[20];int i,j,k=0;system("CLS");if(shuliang==0){printf("系统里面没有任何学生的信息~\n");fhzjm();}printf("三种查找方式:学号,姓名,成绩\n");printf("如果按学号查找请输1,如果按姓名查找请输2,如果按成绩查找请输3\n");printf("请输入您查找的方式:");scanf("%s",&choice);if(choice=='1'){printf("请输入需要查找学生的学号:");scanf("%d",&xx);printf("您所查找的学生的信息为:\n");printf("----学号----姓名----高数成绩----英语成绩----计算机成绩----\t\n");for(i=0;i<shuliang;i++){if(xx==student[i].number){j=i;k=1;printf("----%d-------%s-------%d-------%d-------%d----\t\n",student[j].number,student[j].name,student[j].gaoshu,student[j].yingyu,student[i].jis uanji);}}if(k==0)printf("输入信息有误:\n");}else if(choice=='2'){printf("请输入需要查找学生的姓名:\n");scanf("%s",yy);printf("您所查找的学生的信息为:\n");printf("----学号----姓名----高数成绩----英语成绩----计算机成绩----\t\n");for(i=0;i<shuliang;i++){if(strcmp(yy,student[i].name)==0){j=i;k=1;printf("----%d-------%s-------%d-------%d-------%d----\t\n",student[j].number,student[j].name,student[j].gaoshu,student[j].yingyu,student[j].jis uanji);}}if(k==0)printf("输入信息有误:\n");}else if(choice=='3'){printf("请输入需要查找学生的成绩:\n");scanf("%d",&xx);printf("您所查找的学生的信息为:\n");printf("----学号----姓名----高数----英语----计算机----\t\n");for(i=0;i<shuliang;i++){if(xx==student[i].grade){j=i;k=1;printf("----%d-------%s-------%d-------%d-------%d----\t\n",student[j].number,student[j].name,student[j].gaoshu,student[j].yingyu,student[i].jis uanji);}}if(k==0)printf("输入信息有误:\n");}fhzjm();}void PaiXu(){struct student *p1[N],**p2,*temp;int i,j;system("CLS");p2=p1;for( i=0;i<shuliang;i++){p1[i]=student+i;}for( i=0;i<shuliang;i++){for( j=i+1;j<shuliang;j++){if((*(p2+i))->sum<(*(p2+j))->sum){temp=*(p2+i);*(p2+i)=*(p2+j);*(p2+j)=temp;} }}printf("按照总成绩排序之后的信息为:\n");printf("----学号----姓名----总成绩----\t\n");for( i=0;i<shuliang;i++){student[i].sum=student[i].gaoshu+student[i].yingyu+student[i].jisuan ji;printf("----%d-----%s----%d-----\n",(*(p2+i))->number,(*(p2+i))->name,(*(p2+i))->sum);}fhzjm();}void CunChu(){int i;FILE *rs;if((rs=fopen("student.txt","w"))==NULL){printf("not open");exit(0);}for(i=0;i<shuliang;i++){fwrite(&student[i], sizeof(student[i]), 1, rs); }if(ferror(rs)){fclose(rs);perror("写文件失败~\n");return;}printf("存储文件成功~\n");fclose(rs);fhzjm();}void DaoChu(){struct student t;int i=0;FILE* fp = fopen("student.txt", "r");shuliang=0;if(NULL==fp){perror("读取文件打开失败~\n");return;}memset(student,0x0,sizeof(student));while(1){fread(&t,sizeof(t),1,fp);if(ferror(fp)){fclose(fp);perror("读文件过程失败~\n");return;}if(feof(fp)){break;}student[i]=t;i++;}fclose(fp);shuliang=i; printf("导出文件成功~\n"); fhzjm();}void menu(){int n=0;system("CLS");printf(" 学生信息管理系统\n");printf(" 作者:陈椿\n");printf("-------------------MENU-----------------\n"); printf(" 1.登记学生信息\n");printf(" 2.删除学生信息\n");printf(" 3.浏览所有已经登记的学生\n");printf(" 4.查找\n");printf(" 4.1按学号查找\n");printf(" 4.2按姓名查找\n");printf(" 4.3按成绩查找\n");printf(" 5.根据总成绩排序\n");printf(" 6.存储到文件\n");printf(" 7.从文件导出\n");printf(" 8.退出系统\n");a: printf(" 请选择:");scanf("%d",&n);switch (n){case 1:DengJi();break;case 2:ShanChu();break;case 3:LiuLan();break;case 4:ChaZhao();break;case 5:PaiXu();break;case 6:CunChu();break;case 7:DaoChu();break;case 8:exit(0);break;default:{printf("请输入1-8之间的数字,谢谢~\n"); goto a;}}}main() {menu();}。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《程序设计综合课程设计》报告学生姓名: ______ ______ ____________________________学生班级: __________________________________ ____________学生学号: ____________指导教师: ______2014年6 月22 日目录第1章Visual C++简介及其优点第5章总结附录源程序学生信息管理系统前言学生信息档案的管理对于学校的管理者来说至关重要,学生信息是高等学校非常重要的一项数据资源,是一个教育单位不可缺少一部分。
特别是近几年来,国家政策的调整,我国高等院校大规模的扩招,给高等院校的教学管理、学生管理、后勤管理等方面都带来不少的冲击。
其包含的数据量大,涉及的人员面广,而且需要及时更新,故较为复杂,难以单纯地依靠人工管理,而且传统的人工管理方式既不易于规范化,管理效率也不高,目前我国各类高等院校中还有相当一部分学生档案管理还停留在纸介质的基础上,尤其是中、小学对学生档案的管理更是落后,这样的管理机制已经不能适应时代发展的要求,其管理方法将浪费许多人力和物力。
随着科学技术的不断提高,日渐成熟,计算机应用的普及已进入人类社会生活的各个领域,并发挥着越来越重要的作用。
这种传统的手工管理模式必然被以计算机为物质基础的信息管理方法所取代。
作为计算机应用的一部分,使用计算机对学生档案进行管理,有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学生档案管理的效率,也是学校向科学化、正规化管理发展的必要条件,更是各个高等院校与世界接轨的重要条件。
第1章 Visual C++简介及其优点VC++是微软公司开发的一个IDE(集成开发环境),换句话说,就是使用c++的一个开发平台有些软件就是这个编来的...另外还有VB,VF.只是使用不同语言...但是, vc++是Windows平台上的C++编程环境,学习VC要了解很多Windows平台的特性并且还要掌握MFC、ATL、COM等的知识,难度比较大。
Windows下编程需要了解Windows的消息机制以及回调(callback)函数的原理;MFC是Win32API的包装类,需要理解文档视图类的结构,窗口类的结构,消息流向等等;COM是代码共享的二进制标准,需要掌握其基本原理等等。
VC作为一个主流的开发平台一直深受编程爱好者的喜爱,但是很多人却对它的入门感到难于上青天,究其原因主要是大家对他错误的认识造成的,严格的来说 VC++不是门语言,虽然它和C++之间有密切的关系,如果形象点比喻的话,可以C++看作为一种”工业标准”,而VC++则是某种操作系统平台下的”厂商标准”,而”厂商标准”是在遵循”工业标准”的前提下扩展而来的。
VC++应用程序的开发主要有两种模式,一种是WIN API方式,另一种则是MFC方式,传统的WIN API开发方式比较繁琐,而MFC则是对WIN API再次封装,所以MFC相对于WIN API开发更具备效率优势,但为了对WINDOWS开发有一个较为全面细致的认识,笔者在这里还是以讲解WIN API的相关内容为主线。
要想学习好VC必须具备良好的C/C++的基础,必要的英语阅读能力也是必不可少的,因为大量的技术文档多以英文形式发布。
的优点是界面简洁,占用资源少,操作方便。
第2章课程设计的目的和要求课程设计目的本课程设计是计算机科学与技术专业重要的实践性环节之一,是在学生学习完《程序设计语言》课程后进行的一次全面的综合练习。
本课程设计的目的和任务:1.巩固和加深学生对C语言课程的基本知识的理解和掌握;2.掌握C语言编程和程序调试的基本技能;3.利用C语言进行基本的软件设计;4.掌握书写程序设计说明文档的能力5.提高运用C语言解决实际问题的能力。
通过本项,可以培养独立思考、综合运用所学有关相应知识的能力,能更好的巩固《C语言程序设计》课程学习的内容,掌握工程的基本方法,强化上机动手编程能力,闯过理论与实践相结合的难关!更加了解了c语言的好处和其!同时增加了同学之间的精神!更加也体会到以后在工作中的重要性和必要性!通过C语言,使学生了解高级的结构,掌握基本的程序设计过程和技巧,掌握基本的分析问题和利用计算机求解问题的能力,具备初步的能力。
为后续各门计算机课程的学习和打下坚实基础。
学生信息管理系统是一个教育单位不可缺少的部分。
一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决策者和管理者来说都至关重要。
所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。
但一直以来人们使用传统人工的方式管理文件档案、统计和查询数据,这种管理方式存在着许多缺点,如:效率低、保密性差,人工的大量浪费;另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着来越重要的作用。
作为计算机应用的一部分,使用计算机对学校的各类信息进行管理,具有手工管理所无法比拟的优点。
例如:检索迅速、查询方便、效率高、可靠性好、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学校信息管理的效率,也是一个单位科学化、正规化管理,与世界接轨的重要条件。
本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学院的工作流程设计完成的。
为了使系统在学院的管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量。
课程设计的要求本课程设计是《C语言程序设计》课程实践环节的深化和延续。
此次课程设计的目的是以C程序设计语言为基础,通过完成具有一定难度的课程设计题目的功能描述、总体设计、程序编写及调试工作,加深对C语言相关知识的理解与Visual C++集成开发环境的使用,重点掌握文件操作函数的熟练运用,并养成良好的程序设计习惯,提高自我分析问题、解决问题的能力,为进一步学习《高级编程技术》及其相关课程打下良好基础掌握面向对象程序设计的基本方法,熟练掌握C++编程工具,根据问题进行学习,拓广、深化,独立完成一个小型应用程序的设计、编码和测试,为以后学习软件工程打下实践基础系统说明书要求提交打印版或手写版(这是检查作业的依据)。
内容包括:系统需求描述(问题描述),系统结构设计(类体系设计),类的详细设计(各类定义的基本功能,即主要数据和函数功能描述,以及类和类之间的交互),拟采用开发平台(Visual C++)作业报告:根据原有的系统设计,编码阶段的工作,整理书写作业报告,内容包括:问题描述,系统设计,使用说明,讨论,最后提交(电子版):实验报告,基本要求:1、要求利用C语言面向过程的编程思想来完成系统的设计;2、突出C语言的函数特征,以多个函数实现每一个子功能;3、画出功能模块图;4、进行简单界面设计,能够实现友好的交互;5、具有清晰的程序流程图和数据结构的详细定义;6、熟练掌握C语言对文件的各种操作。
7、分析程序的功能要求,划分程序功能模块。
8、代码的编写。
定义数据结构和各个功能子函数。
9、程序的功能调试;10、完成系统总结报告以及使用说明书。
第3章课程设计任务内容需求分析21世纪以来,人类经济高速发展,人们发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。
使原本的旧的管理方法越来越不适应现在社会的发展。
许多人还停留在以前的手工操作。
这大大地阻碍了人类经济的发展。
为了适应现代社会人们高度强烈的时间观念,学校信息管理系统软件为学校办公室带来了极大的方便。
(一)教育系统学生管理现状分析学校工作流程分析学校工作总体规划由教务人员在学生信息管理系统中完成对运行教务处所需的基本数据的维护,包括这些信息的增加、修改及对各项信息的变动都将在这进行操作。
新的学年,教务人员首先加入年级信息,然后编排班级,再对来校学生进行基本的信息录入,新生入学后由教务人员在学籍系统中完成新学生信息的维护。
(二)学校具体需求分析学生:对各科成绩的查询任课老师:输入并维护所教科目的学生成绩教务处:学校全体成员的信息管理,并对任课老师,班主任等输入的信息进行存库,对学生的信息进行必要的维护。
通过研究调查,本系统需以下功能:综合学生信息、学生成绩以及信息查询等信息。
方便用户了解和管理学生的全面动态信息。
良好的界面设计,更人性化的设计理念,使用户拥有更轻松的使用心情。
可行性分析目的:可行性研究的目的是用最小的代价在尽可能的时间内确定问题是否能解决。
经济性:由于学校等中小型管理系统并不复杂,且Visual C++本身要求的运行环境不高,所以一般Windows 2000以上的系统环境都可以使用。
实用性:本学生信息管理系统管理系统无太多复杂的操作要求,也没有过分花哨的装饰品,人性化的设计界面可以使操作者轻易运用自如图3-1 功能图第4章 软件使用说明1、进入程序后显示 学生信息管理系统 学生信息的保存 学生信息的查询 学生信息的修改 学生信息的删除 学生信息的统计计 学生信息的备份2.选择进入程序身份3.出入密码4.进入管理员模式5.添加信息6.修改信息7.删除信息8.列出所有信息9.查找指定学号10.查找指定姓名11.修改密码12.备份信息13.读取备份14.初始化信息15.退出程序第5章总结经过一个星期的上机实践学习,使我对c语言有了更进一步的认识和了解,要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,通过实践,我也发现我的好多不足之处,首先是自己在指法上还不行,经常按错字母,通过学习也有所改进;再有对c语言的一些标准库函数不太了解,还有对函数调用的正确使用不够熟悉,还有对c语言中经常出现的错误也不了解,通过实践,使我在这几个方面的认识有所提高。
通过实践的学习,我认到学好计算机要重视实践操作,不仅仅是学习c语言,还是其它的语言,以及其它的计算机方面的知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机。
附录源程序1.#include <>#include <>extern struct student加信息║║ 2.修改信息║║ 3.删除信息║\n");printf("╚═══════╝╚═══════╝╚═══════╝\n");printf("╔═══════╗╔═══════╗╔═══════╗\n");printf("║4.列出所有信息║║5.查找指定学号║║6.查找指定姓名║\n");printf("╚═══════╝╚═══════╝╚═══════╝\n");printf("╔═══════╗╔═══════╗╔═══════╗\n");printf("║ 7.修改密码║║ 8.初始化信息║║ 9.备份信息║\n");printf("╚═══════╝╚═══════╝╚═══════╝\n");printf("╔═══════╗╔═══════╗╔═══════╗\n");printf("║ 10.读取备份║║ 11.退出程序║║ 0.返回上层║\n");printf("╚═══════╝╚═══════╝╚═══════╝\n");printf("--------------------------------------------------------\n");printf(" 请选择:");scanf("%d", &select);switch(select){case 1:AddInf();break;case 2:AmendInf();break;case 3:DelInf();break;case 4:ListAll();break;case 5:SearchNum();break;case 6:SearchName();break;case 7:CCode();break;case 8:total = 0;printf("操作成功");case 9:WriteBackup();break;case 10:ReadBackup();break;case 11:printf("请按任意键退出\n");Save();case 0:flag = 0;}}}static void AddInf()um){n = 1;break;}}if(n == 0){printf("抱歉,没有找到对应的记录");fflush(stdin);getchar();}else{printf("请输入新的信息,按任意键继续");fflush(stdin);getchar();InputStu(i);}}static void ListAll()#include <>#include <>#include <>#include <>void Save();void CCode(){system("cls");int countl,select,res;char code1[21],code2[21],ori[]="123",ch;#include <> #include <>#include <>void AdminMode();void Code(){system("cls");char pw[21], pw2[21];#include <>#include <>#include <>extern struct studentum){n = 1;break;}}if(n == 0){printf("抱歉,没有找到对应的记录");fflush(stdin);getchar();}else{total--;for(j = total ; j > i ; j--)Stucpy(j);printf("操作成功");fflush(stdin);getchar();}}static void Stucpy(int j){stu[j - 1].num = stu[j].num;ame, stu[j].name);ge = stu[j].age;ex = stu[j].sex;ear = stu[j].year;ddress,stu[j].address);#include <>#include <>extern struct student出所有信息\n");printf("2.查找指定学号\n");printf("3.查找指定姓名\n");printf("4.退出程序\n");printf("0.返回上层\n");printf("请选择:");scanf("%d", &select);switch(select){case 1:ListAll();break;case 2:SearchNum();break;case 3:SearchName();break;case 4:printf("请按任意键退出\n");Save();case 0:flag = 0;}}}static void ListAll(){system("cls");int i;for(i = 0; i <= total - 1; i++)PutStu(i);fflush(stdin);getchar();}6.#include <>#include <>extern struct studentum){f = 1;goto loop;}}stu[n].num = ;fflush(stdin);printf("请输入姓名:");scanf("%s",stu[n].name);fflush(stdin);printf("请输入年龄:");scanf("%d",&stu[n].age);loop2:fflush(stdin);if(f2 == 0)printf("性别为男请输入1,为女请输入0:");elseprintf("输入错误,性别为男请输入1,为女请输入0:");int judge;scanf("%d", &judge);if(judge == 1)stu[n].sex = 1;else if(judge == 0)stu[n].sex = 0;else{f2 = 1;goto loop2;}fflush(stdin);printf("请输入入学年份:");scanf("%d",&stu[n].year);fflush(stdin);printf("请输入地址:");scanf("%s",stu[n].address);printf("操作成功");fflush(stdin);getchar();}7.#include <>#include <>struct student#include <>#include <>void Code();理员\n");printf("2.普通用户\n");printf("3.退出\n");printf("请选择登录方式:");scanf("%d", &select);switch(select){case 1:Code();#include <>#include <>extern struct studentum, stu[n].name, stu[n].age);if(stu[n].sex == 1)printf(" 性别:男 ");elseprintf(" 性别:女 ");printf("入学年份:%d 地址:%s", stu[n].year, stu[n].address);printf("\n");}10.#include <>#include <>extern struct student#include <>#include <>struct student#include <>#include <>#include <>void PutStu(int n);extern struct studentum){n = 1;break;}}if(n == 0){printf("抱歉,没有找到对应的记录");fflush(stdin);getchar();}else{PutStu(i);fflush(stdin);getchar();}}void SearchName(){fflush(stdin);long n = 0, i;char name[10];printf("请输入姓名:");scanf("%9s", &name);for(i = 0; i <= total - 1; i++)ame) == 0) {n = 1;break;}}if(n == 0){printf("抱歉,没有找到对应的记录");fflush(stdin);getchar();}else{PutStu(i);fflush(stdin);getchar();}}13.#include <>#include <>#include <>void PutStu(int n);extern struct studentum){n = 1;break;}}if(n == 0){printf("抱歉,没有找到对应的记录");fflush(stdin);getchar();}else{PutStu(i);fflush(stdin);getchar();}}void SearchName(){fflush(stdin);long n = 0, i;char name[10];printf("请输入姓名:");scanf("%9s", &name);for(i = 0; i <= total - 1; i++)ame) == 0) {n = 1;break;}}if(n == 0){printf("抱歉,没有找到对应的记录");fflush(stdin);getchar();}else{PutStu(i);fflush(stdin);getchar();}}14.#include <>#include <>extern struct student//声明结构体{long num;//学号char name[10];//姓名int age;//年龄int sex;//性别int year;//入学年份char address[10];//地址}stu[1000], temp;extern total;void WriteBackup()//读取文件{char file[20];fflush(stdin);FILE *fp;printf("请输入文件名:");scanf("%19s", file);if((fp = fopen(file, "w")) == NULL){printf("备份失败");fflush(stdin);getchar();return;}else{fwrite(&total, sizeof(total), 1, fp);//读取totalfwrite(stu, sizeof(struct student), 1000, fp);//读取数组fclose(fp);}printf("备份成功");fflush(stdin);getchar();}。