C语言学生学籍信息管理系统设计说明
c语言学籍管理系统设计报告
C语言学籍管理系统设计报告1. 引言学籍管理系统作为一种信息化管理工具,已经在现代教育管理中得到广泛应用。
本文将介绍一个基于C语言的学籍管理系统的设计方案。
2. 系统概述学籍管理系统是一个用于管理学生信息的软件系统。
它能够提供学生信息的录入、查询、修改、删除等功能,实现了学生信息的统一管理和快速检索。
本系统旨在简化教务管理流程,提高教务工作效率。
3. 功能需求学籍管理系统应满足以下功能需求:1.学生信息录入:系统提供学生信息录入界面,包括学生姓名、学号、性别、年龄、班级等基本信息。
2.学生信息查询:系统提供学生信息查询界面,可以按照学号、姓名、班级等条件进行查询,并能够显示查询结果。
3.学生信息修改:系统提供学生信息修改界面,可以修改学生的基本信息。
4.学生信息删除:系统提供学生信息删除功能,可以删除学生的信息。
5.成绩管理:系统可以记录学生的成绩信息,并提供相应的成绩查询和统计功能。
4. 系统设计学籍管理系统的设计主要包括以下几个方面:4.1 数据库设计系统使用数据库来存储学生信息和成绩信息。
可以使用关系型数据库(如MySQL)或者文件系统来实现。
•学生信息表:包括学生姓名、学号、性别、年龄、班级等字段。
•成绩信息表:包括学号、科目、成绩等字段。
4.2 用户界面设计系统的用户界面应简洁、直观,方便用户进行操作。
可以使用命令行界面或者图形界面来实现。
•学生信息录入界面:用户可以通过可视化界面输入学生信息,系统将学生信息添加到数据库中。
•学生信息查询界面:用户可以输入查询条件,系统将根据条件从数据库中检索学生信息并显示。
•学生信息修改界面:用户可以修改学生的基本信息,系统将修改后的信息更新到数据库中。
•删除学生信息界面:用户可以指定学生,系统将删除该学生的信息。
4.3 系统模块设计学籍管理系统可以将功能划分为多个模块,每个模块负责一个具体的功能。
下面列举几个主要的系统模块:•学生信息管理模块:负责学生信息的录入、查询、修改和删除。
c语言课程设计学生学籍管理系统
c语言课程设计学生学籍管理系统一、教学目标本课程的教学目标是使学生掌握C语言的基本语法和编程方法,能够运用C语言设计学生学籍管理系统。
具体分为三个部分:1.知识目标:学生需要掌握C语言的基本语法、数据类型、运算符、控制结构、函数等基本知识。
2.技能目标:学生能够运用C语言进行程序设计,具备编写和调试程序的能力。
3.情感态度价值观目标:学生通过完成学生学籍管理系统的设计和实现,培养对计算机科学和编程的兴趣和热情,提高解决实际问题的能力。
二、教学内容根据课程目标,教学内容主要包括C语言的基本语法和编程方法,具体包括以下部分:1.C语言的基本语法:数据类型、变量、运算符、控制结构等。
2.函数:函数的定义、调用、参数传递、返回值等。
3.学生学籍管理系统的需求分析:系统的功能、数据结构、界面设计等。
4.编程实践:学生通过编写和调试程序,完成学生学籍管理系统的实现。
三、教学方法本课程采用讲授法、讨论法、案例分析法和实验法等多种教学方法,以激发学生的学习兴趣和主动性。
1.讲授法:教师通过讲解C语言的基本语法和编程方法,为学生提供系统的知识结构。
2.讨论法:教师引导学生进行问题讨论,培养学生的思考和解决问题的能力。
3.案例分析法:教师通过分析学生学籍管理系统的案例,引导学生理解和应用C语言编程。
4.实验法:学生通过动手编写和调试程序,提高编程实践能力。
四、教学资源本课程的教学资源包括教材、参考书、多媒体资料和实验设备等。
1.教材:选用权威、实用的C语言教材,为学生提供系统的知识结构。
2.参考书:提供相关的参考书籍,丰富学生的知识视野。
3.多媒体资料:制作多媒体课件,生动、形象地展示C语言编程的方法和技巧。
4.实验设备:提供计算机实验室,让学生进行编程实践。
五、教学评估本课程的评估方式包括平时表现、作业和考试三个部分,以全面、客观、公正地评价学生的学习成果。
1.平时表现:通过课堂参与、提问、讨论等方式评估学生的学习态度和积极性。
c语言程序设计学生信息管理系统
c语言程序设计学生信息管理系统学生信息管理是学校管理系统中非常重要的一部分,因此我们需要一个高效的系统进行管理。
在此背景下,C语言程序设计可以成为一个非常有用的工具。
首先,我们需要定义学生信息的数据结构。
通常情况下,学生信息包括姓名,性别,年龄,出生日期,籍贯,班级等等。
我们可以使用结构体来定义这个数据类型,代码如下:```typedef struct{char name[20];char sex[10];int age;char birth[20];char place[20];char clazz[20];}STUDENT;```其中,我们使用了char数组来存储字符串类型的数据。
在使用数组之前,我们需要考虑数据大小,以免溢出。
在这里,我们将数组的大小设置为了20。
接下来,我们需要实现学生信息的输入和输出功能。
我们可以使用scanf函数来输入信息,使用printf函数来输出信息。
代码如下:```void input_stu(STUDENT *stu){printf("Input Student's Name:");scanf("%s",stu->name);printf("Input Student's Gender:");scanf("%s",stu->sex);printf("Input Student's Age:");scanf("%d",&stu->age);printf("Input Student's Birth:");scanf("%s",stu->birth);printf("Input Student's Place:");scanf("%s",stu->place);printf("Input Student's Class:");scanf("%s",stu->clazz);}void output_stu(STUDENT *stu){printf("Name:%s\n",stu->name);printf("Gender:%s\n",stu->sex);printf("Age:%d\n",stu->age);printf("Birth:%s\n",stu->birth);printf("Place:%s\n",stu->place);printf("Class:%s\n",stu->clazz);}```注意,在使用scanf函数输入字符串类型的数据时,应该使用%s 格式控制符。
学生学籍管理系统c语言课程设计
学生学籍管理系统c语言课程设计
学生学籍管理系统C语言课程设计
一、题目
学生学籍管理系统
二、项目介绍
1、本项目是一个基于C语言实现的学生学籍管理系统。
该系统的主要功能是实现学生学籍的管理,学生可以查看自己的学籍信息,同时管理员可以对学生的学籍信息进行维护和修改。
2、实现的功能:
(1)管理员登录
(2)查看学生学籍
(3)修改学生学籍
(4)添加新学生学籍
(5)删除学生学籍
(6)按学号或姓名查找学生学籍信息
(7)保存学生学籍
(8)退出系统
三、模块结构
1、登录模块
登录模块是本系统的入口,主要负责验证用户的身份信息,如果用户是管理员,则可以进入系统的主界面。
2、学生学籍操作模块
学生学籍操作模块主要负责管理员对学生学籍信息的添加、修改、查看和删除等操作。
3、文件存取模块
文件存取模块负责实现对学生学籍信息的存取,并将学生信息保存到文件中,保证学生学籍信息的安全性。
四、技术要求
1、编程语言
C语言
2、界面
使用C语言实现学生学籍管理系统,界面简单,功能明确。
3、数据操作
使用C语言实现学生学籍管理系统,能够实现对学生学籍的添加、修改、查看和删除等操作。
4、系统功能
系统功能要求具备管理员登录、查看学生学籍、修改学生学籍、添加学生学籍、删除学生学籍、按学号或姓名查找学生学籍信息、保存学生学籍和退出系统等功能。
学生信息管理系统C语言课程设计说明书
int sex; /*学生性别*/
int phone;
/*学生*/
}LIST;
LIST L[100];
int main(void)
{
}
void revise_list ()/*自定义函数-修改数组*/
{
}
void print_list() /*自定义函数-列出菜单*/
学生学号
num
int
学生姓名
name[]
char
10
学生QQ
qq[]
char
10
学生性别
sex
int
学生
phone
int
使用语言创建的结构体如下:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int num; /*学生学号*/
char name[10]; /*学生姓名*/
4主要函数功能描述
4.1 主函数main()
函数原型:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define EXIT -1
#define LEN sizeof(struct list)
int key=0; /*stdlib-标准库头文件...sizeof-运算符...string-字符串...typedef-定义类型*/
{
}
3详细设计
3.1主控模块设计
控制整个程序的运行,通过主函数模块分别调用各个模块,实现各项功能,流程如下图
c语言课程设计学生学籍管理系统
c语言课程设计学生学籍管理系统一、教学目标本课程旨在让学生掌握C语言的基本语法,培养学生编写结构化程序的能力,使学生能够运用C语言实现简单的学生学籍管理系统。
通过本课程的学习,学生将能够:1.知识目标:–理解C语言的基本数据类型、运算符和表达式;–掌握函数的定义和调用,理解局部变量和全局变量的概念;–熟悉控制结构,如if语句、for循环和while循环;–了解数组、字符串和指针的基本使用方法。
2.技能目标:–能够使用C语言编写简单的程序,解决实际问题;–掌握基本的调试技巧,能够找出并修复程序中的错误;–具备阅读和理解他人代码的能力。
3.情感态度价值观目标:–培养学生对计算机科学的兴趣和热情,提高学生的自主学习能力;–培养学生团队协作的精神,增强学生的沟通能力;–培养学生解决问题的能力,提高学生的创新意识。
二、教学内容本课程的教学内容主要包括以下几个部分:1.C语言基本语法:数据类型、运算符、表达式、函数、局部变量和全局变量等;2.控制结构:if语句、for循环、while循环等;3.数据结构:数组、字符串、指针等;4.学生学籍管理系统的实现:学生信息的添加、删除、修改和查询等功能。
三、教学方法本课程采用讲授法、案例分析法和实验法等多种教学方法相结合的方式进行教学:1.讲授法:通过讲解C语言的基本语法和概念,使学生掌握相关知识;2.案例分析法:通过分析实际案例,使学生理解并掌握C语言在学生学籍管理系统中的应用;3.实验法:让学生动手编写代码,实现学生学籍管理系统的功能,提高学生的实际操作能力。
四、教学资源本课程的教学资源包括:1.教材:《C语言程序设计》;2.参考书:《C语言 Primer》;3.多媒体资料:教学PPT、视频教程等;4.实验设备:计算机、网络等。
以上教学资源将有助于实现本课程的教学目标,提高学生的学习效果。
五、教学评估本课程的教学评估将采用多元化评价方式,全面客观地评价学生的学习成果。
学生信息管理系统详细设计说明c语言
学生信息管理系统详细设计说明c语言如何设计一个学生信息管理系统。
一、需求分析学生信息管理系统是以管理学生信息为主要功能的软件系统。
在设计之前,我们需要了解用户的需求。
通过对用户需求的分析,我们得出以下功能模块:1、学生信息录入:录入学生信息,包括学号、姓名、性别、出生日期、班级等信息。
2、学生信息查询:根据学号、姓名等关键字进行学生信息的查询,支持模糊查询。
3、学生信息修改:可以修改学生的相关信息,包括学号、姓名、班级等。
4、学生信息删除:删除已经录入的学生信息。
5、学生成绩查询:根据学号查询该学生的相关成绩信息。
6、学生成绩录入:录入学生的相关成绩信息,包括语文、数学、英语等。
二、系统设计在需求分析的基础上,我们可以开始进行系统设计。
1、数据结构设计(1)学生信息结构体/* 学生信息结构体*/typedef struct {/* 学号*/char id[11];/* 姓名*/char name[21];/* 性别*/char sex[3];/* 出生日期*/char birthday[11];/* 班级*/char class[21];} Info;(2)学生成绩结构体/* 学生成绩结构体*/typedef struct {/* 学号*/char id[11];/* 语文成绩*/int chinese;/* 数学成绩*/int math;/* 英语成绩*/int english;} Score;2、功能模块设计(1)学生信息录入在学生信息录入模块中,我们需要设计一个函数来进行学生信息的录入。
void AddInfo(Info *info);该函数的参数是学生信息结构体的指针,通过该参数可以将学生信息录入到系统中。
在该函数中,我们需要进行如下操作:1、提示用户输入学生信息;2、从键盘获取用户输入;3、将用户输入保存到结构体中;4、将结构体保存到文件中。
(2)学生信息查询在学生信息查询模块中,我们需要设计一个函数来查询学生信息。
C语言--学生信息管理系统设计
目录1.前言 (2)2.设计目的 (2)3.功能描述 (2)4.总体设计 (3)1、功能模块设计 (3)2、数据结构设计 (4)3、函数功能描述 (5)5.程序实现 (7)1、源程序(略) (7)2、运行结果 (7)6.小结 (10)1.前言在计算机技术和互联网飞速发展的今天,计算机成为了现代生活中一个重要的工具。
学生信息管理系统利用计算机对学生信息进行统一管理,为学校老师的工作提供便利。
本程序是利用结构数组实现此学生信息管理系统。
2.设计目的利用本课程设计的目的是要培养学生初步具有系统分析思想,并能利用开发工具开发一个简单实用的综合程序。
为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力,提高学生适应实际,实践编程的能力。
3.功能描述如图1所示,学生信息管理系统主要利用数组来实现,其数组元素是结构体类型,整个系统由如下几大功能模块组成。
图1 学生信息管理系统功能模块(1)输入记录模块。
输入记录模块主要完成将数据存入数组中的工作。
在此学生信息管理系统中,记录可以从以文本形式存储的数据文件中读入,也可从键盘逐个输入记录。
当从数据文件中读入记录时,它就是在以记录为单位存储的数据文件中,将记录逐条复制到结构体类型的数组元素中。
(2)查询记录模块。
查询记录模块主要完成在数组中查找满足相关条件的记录。
在此学生信息簿管理系统中,用户可以按照学生姓名或学生学号在数组中进行查找。
若找到该记录,则显示出此记录的信息;否则,显示出未找到该记录的提示信息。
(3)更新记录模块。
更新记录模块主要完成对记录的维护。
在此电话簿管理系统中,它实现对记录的修改、删除操作。
一般而言,系统进行了这些操作之后,需要将修改的数据存入源数据文件。
(4)输出记录模块。
输出记录模块主要完成两个任务。
第一,它实现对记录的存盘操作,即将数组中各元素中存储的记录信息写入数据文件中。
C语言实现学籍管理系统
C语⾔实现学籍管理系统本⽂实例为⼤家分享了C语⾔实现学籍管理系统的具体代码,供⼤家参考,具体内容如下设计⼀个学籍管理系统,基本功能包括:1.输⼊学⽣基本信息2.查询学⽣信息(1.按学号2.按姓名)3.删除学⽣信息(1.按学号2.按姓名)4.学⽣信息排序(1.按学号2.按姓名)5.修改学⽣基本信息6.输出学⽣信息7.保存学⽣信息0.退出程序注:由于知识有限,该系统暂时规定只输⼊3个学⽣数据,今后会改良成可随机处理任意多个学⽣的数据⼀、⾸页void enter(struct student stu[],int n){int select;while(select!=0){printf("\t\t\t ---------------------------\n");printf("\n");printf("\t\t\t 欢迎使⽤学籍管理系统\n");printf("\n");printf("\t\t\t ---------------------------\n");printf("\t\t\t 1.输⼊学⽣基本信息\n");printf("\t\t\t 2.查询学⽣信息(1.按学号2.按姓名)\n");printf("\t\t\t 3.删除学⽣信息(1.按学号2.按姓名)\n");printf("\t\t\t 4.学⽣信息排序(1.按学号2.按姓名)\n");printf("\t\t\t 5.修改学⽣基本信息\n");printf("\t\t\t 6.输出学⽣信息\n");printf("\t\t\t 7.保存学⽣信息\n");printf("\t\t\t 0.退出程序\n");printf("\t\t\t 请输⼊您的选项");scanf("%d",&select);system("cls");switch(select){case 1:input(stu,n);break;case 2:seek(stu,n);break;case 3:delect(stu,n);break;case 4:sort(stu,n);break;case 5:revise(stu,n);break;case 6:output(stu,n);break;case 7:keep(stu,n);break;case 0:printf("\t\t\t 您已退出学籍管理系统\n");break;default:printf("输⼊有误\n");system("pause");system("cls");}}}⼆、输⼊int count=0; //计数器记录学⽣个数void input(struct student stu[],int n){int i;if(count!=0)count=0;printf("\t\t\t-------------------------------\n");printf("\n");printf("\t\t\t 欢迎进⼊学⽣信息录⼊系统\n");printf("\n");printf("\t\t\t-------------------------------\n");printf("\t\t请输⼊学⽣基本信息(学号,姓名,年龄,性别(⼥w,男m))\n");for(i=0;i<n;i++)scanf("%d %s %d %c",&stu[i].number,stu[i].name,&stu[i].age,&stu[i].sex);system("cls");printf("\t\t\t 学⽣信息已录⼊\n");system("pause");system("cls");}三、查询void seek(struct student stu[],int n){int i,select2,num2;char name2[10];printf("\t\t\t-------------------------------\n");printf("\n");printf("\t\t\t 欢迎进⼊学⽣信息查询系统\n");printf("\n");printf("\t\t\t-------------------------------\n");printf("\t\t请选择查询⽅式(1.按学号查询 2.按姓名查询)");scanf("%d",&select2);system("cls");switch(select2){case 1:{printf("\t\t\t\t 请输⼊学号");scanf("%d",&num2);system("cls");for(i=0;i<n-count;i++)if(stu[i].number==num2)break; //判断输⼊学号和结构数组的学号是否匹配,找到匹配项则退出循环 if(i<n-count) //数组下标⼩于学⽣数,则说明找到该学⽣,输出信息{printf("\t\t\t您要查询的学⽣信息为:\n");printf("\t\t\t学号%d 姓名%s 年龄%d 性别%c\n",stu[i].number,stu[i].name,stu[i].age,stu[i].sex);}else //数组下标等于学⽣数,则没有找到该学⽣printf("\t\t\t\t查⽆此⼈\n");system("pause");system("cls");}break;case 2:{printf("\t\t\t\t 请输⼊姓名");scanf("%s",name2);system("cls");for(i=0;i<n-count;i++)if(strcmp(stu[i].name,name2)==0)break;if(i<n-count){printf("\t\t\t您要查询的学⽣信息为:\n");printf("\t\t\t学号%d 姓名%s 年龄%d 性别%c\n",stu[i].number,stu[i].name,stu[i].age,stu[i].sex);}elseprintf("\t\t\t\t查⽆此⼈\n");system("pause");system("cls");}break;}}四、删除void delect(struct student stu[],int n){int i=n,j,select3,num3,choice3;char name3[10];printf("\t\t\t-------------------------------\n");printf("\n");printf("\t\t\t 欢迎进⼊学⽣信息删除系统\n");printf("\n");printf("\t\t\t-------------------------------\n");printf("\t\t请选择删除⽅式(1.按学号删除 2.按姓名删除)");scanf("%d",&select3);system("cls");switch(select3){case 1:{printf("\t\t\t\t 请输⼊学号");scanf("%d",&num3);system("cls");for(i=0;i<n-count;i++)if(stu[i].number==num3)break;//⾸先找到要删除的学⽣if(i<n-count){printf("\t\t\t当前您要修改的学⽣信息为\n");printf("\t\t\t学号%d 姓名%s 年龄%d 性别%c\n",stu[i].number,stu[i].name,stu[i].age,stu[i].sex); printf("\t\t\t如果您不想再删除该⽣信息请按0,继续删除请按1\n");scanf("%d",&choice3);system("cls");if(choice3==1){for(j=i;j<n-count;j++)//从该学⽣往后每⼀项向前移动⼀项,覆盖前⼀个数据项stu[j]=stu[j+1];count++;printf("\t\t\t\t该⽣信息已删除\n");system("pause");system("cls");}}else{printf("\t\t\t\t查⽆此⼈\n");system("pause");system("cls");}}break;case 2:{printf("\t\t\t\t 请输⼊姓名");scanf("%s",&name3);system("cls");for(i=0;i<n-count;i++)if(strcmp(stu[i].name,name3)==0)break;if(i<n-count){printf("\t\t\t当前您要修改的学⽣信息为\n");printf("\t\t\t学号%d 姓名%s 年龄%d 性别%c\n",stu[i].number,stu[i].name,stu[i].age,stu[i].sex); printf("\t\t\t如果您不想再删除该⽣信息请按0,继续删除请按1\n");scanf("%d",&choice3);system("cls");if(choice3==1){for(j=i;j<n-count;j++)stu[j]=stu[j+1];count++;printf("\t\t\t\t该⽣信息已删除\n");system("pause");system("cls");}}else{printf("\t\t\t\t查⽆此⼈\n");system("pause");system("cls");}}}}五、排序void sort(struct student stu[],int n){int select4,i,j;struct student t;printf("\t\t\t-------------------------------\n");printf("\n");printf("\t\t\t 欢迎进⼊学⽣信息排序系统\n");printf("\n");printf("\t\t\t-------------------------------\n");printf("\t\t请选择排序⽅式(1.按学号排序 2.按姓名排序)");scanf("%d",&select4);system("cls");switch(select4){case 1:{ //冒泡排序for(j=1;j<n-count;j++){for(i=0;i<n-count-j;i++){if(stu[i].number>stu[i+1].number){t=stu[i];stu[i]=stu[i+1];stu[i+1]=t;}}}}break;case 2:{for(j=1;j<n-count;j++){for(i=0;i<n-count-j;i++){if(strcmp(stu[i].name,stu[i+1].name)>0){t=stu[i];stu[i]=stu[i+1];stu[i+1]=t;}}}}}printf("\t\t\t\t已按要求完成排序\n");system("pause");system("cls");}六、修改void revise(struct student stu[],int n){int num5,i=n,choice5;printf("\t\t\t-------------------------------\n");printf("\n");printf("\t\t\t 欢迎进⼊学⽣信息修改系统\n");printf("\n");printf("\t\t\t-------------------------------\n");printf("\t\t\t请输⼊您要修改的学⽣学号");scanf("%d",&num5);system("cls");for(i=0;i<n-count;i++)if(stu[i].number==num5)break;if(i<n-count){printf("\t\t\t当前您要修改的学⽣信息为\n");printf("\t\t\t学号%d 姓名%s 年龄%d 性别%c\n",stu[i].number,stu[i].name,stu[i].age,stu[i].sex);printf("\t\t\t如果您不想再修改该⽣信息请按0,继续修改请按1\n");scanf("%d",&choice5);system("cls");if(choice5==1){printf("\t\t\t请输⼊修改的信息\n");printf("\t\t\t学号\t姓名\t年龄\t性别\n");printf("\t\t\t");scanf("%d %s %d %c",&stu[i].number,stu[i].name,&stu[i].age,&stu[i].sex);//直接将新信息存储到原数据项中,覆盖原信息即可 system("cls");printf("\t\t\t\t已完成信息修改\n");system("pause");system("cls");}}else{printf("\t\t\t\t查⽆此⼈\n");system("pause");system("cls");}}七、输出void output(struct student stu[],int n){int i;printf("\t\t\t-------------------------------\n");printf("\n");printf("\t\t\t 欢迎进⼊学⽣信息输出系统\n");printf("\n");printf("\t\t\t-------------------------------\n");for(i=0;i<n-count;i++)//循环输出所有学⽣信息printf("\t\t\t 学号%d 姓名%s 年龄%d 性别%c\n",stu[i].number,stu[i].name,stu[i].age,stu[i].sex);system("pause");system("cls");}⼋、保存void keep(struct student stu[],int n){FILE *fp; //⽂件指针fpint i;if((fp=fopen("d:\ sxx.txt","wt+"))==NULL)//在D盘读写打开或建⽴⼀个名为“xxsx”的⽂本⽂件,允许读写{printf("\t\t\t\t⽂件不能打开!");exit(0);}for(i=0;i<n-count;i++)fprintf(fp,"%d\t%s\t%d\t%c\n",stu[i].number,stu[i].name,stu[i].age,stu[i].sex);//调⽤格式化写fprintf()函数,将数组中内容写⼊⽂件 fclose(fp);printf("\t\t\t\t⽂件已保存\n");system("pause");system("cls");}九、主函数int main(){struct student stu[3];enter(stu,3); //规定学⽣数为3⼈return 0;}⼗、结构体定义struct student{int number;char name[10];int age;char sex;}; //定义结构体student以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。
学生信息管理系统C语言课程设计说明书
int num; /*学生学号*/
char name[10]; /*学生姓名*/
int qq; /*学生QQ*/
char sex[10]; /*学生性别*/
long int phone; /*学生*/
}LIST;
LIST L[100];
int main(void) /*主函数*/
4主要函数功能描述
4.1 主函数main()
函数原型:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define EXIT -1
#define LEN sizeof(struct list)
int key=0; /*stdlib-标准库头文件...sizeof-运算符...string-字符串...typedef-定义类型*/
case 5:find_list();break;
关键词:结构体;文件操作;数组; 循环结构;选择结构;自定义函数
1需求分析
(1)问题
根据需求,该系统所应包含的信息有以下一些:
息学生的基本信:
学号、姓名、性别、QQ、
根据需求,该系统所应实现的功能有以下一些:
各种基本数据的录入。如:学生基本信息录入。
各种基本数据的修改。即:允许对已经录入的数据重新进行编辑、修改。例如修改学生信息中三的信息
本系统由一个图来表示为
图1系统总图
本通讯管理系统可以概括的划分为以下几大模块:
1输入创建模块
2列出菜单模块
3删除数据模块
4修改数据模块
5查找数据模块
c语言学生学籍管理系统设计与说明 (2)
学生学籍管理系统设计与说明简介学生学籍管理系统是一种方便高效的管理工具,帮助学校和教育机构管理学生的基本信息、课程成绩、考勤情况等数据。
本文档将介绍设计与实现一个C语言学生学籍管理系统的过程及其功能。
功能学生学籍管理系统主要包括以下功能:1.学生信息管理:记录学生的基本信息,如学号、姓名、年龄、性别等;2.课程管理:记录学生所选修的课程信息,如课程名称、学分、任课教师等;3.成绩管理:记录学生的课程成绩,包括平时成绩和考试成绩,并计算学生的总评成绩;4.考勤管理:记录学生的考勤情况,包括出勤次数、请假次数、迟到次数等;5.统计功能:对学生的成绩、考勤等数据进行统计和分析,生成相应报表。
数据结构设计在C语言中,可以使用结构体来表示和组织学生学籍管理系统的各个数据项。
以下是一个示例的数据结构设计:// 定义学生结构体struct Student {int id; // 学号char name[20]; // 姓名int age; // 年龄char gender; // 性别};// 定义课程结构体struct Course {char name[20]; // 课程名称float credits; // 学分char teacher[20]; // 任课教师};// 定义成绩结构体struct Grade {float dailyScore; // 平时成绩float examScore; // 考试成绩float overallScore;// 总评成绩};// 定义考勤结构体struct Attendance {int attendanceCount; // 出勤次数int leaveCount; // 请假次数int lateCount; // 迟到次数};系统设计与实现学生学籍管理系统的设计与实现可以采用模块化的思路来进行。
1.学生信息管理模块:实现学生信息的录入、查询、修改和删除等功能。
c语言程序设计学生学籍管理系统
c语言程序设计学生学籍管理系统一、引言学籍管理系统是一个非常实用的系统,它可以方便地管理学生的信息,包括学生的基本信息、选课信息、成绩信息等。
本文将介绍如何使用C语言编写一个学籍管理系统。
二、系统设计1. 学生信息的录入在系统中,需要录入学生的基本信息,包括学号、姓名、性别、年龄、班级等。
在录入学生信息时,需要进行输入校验,确保输入的信息符合规范。
2. 选课信息的录入在系统中,需要录入学生的选课信息,包括选课的课程名称、授课教师、上课时间、上课地点等。
在录入选课信息时,需要进行输入校验,确保输入的信息符合规范。
3. 成绩信息的录入在系统中,需要录入学生的成绩信息,包括学生的学号、课程名称、成绩等。
在录入成绩信息时,需要进行输入校验,确保输入的信息符合规范。
4. 学生信息的查询在系统中,可以根据学生的学号或姓名查询学生的基本信息、选课信息、成绩信息等。
5. 学生信息的修改在系统中,可以修改学生的基本信息、选课信息、成绩信息等。
6. 学生信息的删除在系统中,可以删除学生的基本信息、选课信息、成绩信息等。
三、系统实现1. 学生信息的录入在系统中,可以使用结构体来存储学生的基本信息、选课信息、成绩信息等。
在录入学生信息时,可以使用scanf函数进行输入,使用文件操作函数将学生信息保存到文件中。
2. 选课信息的录入在系统中,可以使用结构体来存储选课信息。
在录入选课信息时,可以使用scanf 函数进行输入,使用文件操作函数将选课信息保存到文件中。
3. 成绩信息的录入在系统中,可以使用结构体来存储成绩信息。
在录入成绩信息时,可以使用scanf 函数进行输入,使用文件操作函数将成绩信息保存到文件中。
4. 学生信息的查询在系统中,可以使用文件操作函数将学生信息、选课信息、成绩信息等从文件中读取出来,然后根据学生的学号或姓名查询相应的信息。
5. 学生信息的修改在系统中,可以使用文件操作函数将学生信息、选课信息、成绩信息等从文件中读取出来,然后根据学生的学号或姓名修改相应的信息。
c语言课程设计学生学籍管理系统
c语言课程设计 学生学籍管理系统一、课程目标知识目标:1. 理解C语言在开发学生学籍管理系统中的应用,掌握基本的数据类型、语法和结构;2. 学习使用结构体、数组、文件操作等C语言特性实现学生信息的增、删、改、查功能;3. 了解系统设计的基本流程,掌握模块化编程思想。
技能目标:1. 能够运用所学知识,独立设计并编写一个简单的学生学籍管理系统;2. 培养良好的编程习惯,写出结构清晰、易于维护的代码;3. 提高问题分析能力,学会运用C语言解决实际问题。
情感态度价值观目标:1. 培养学生对计算机编程的兴趣,激发学习积极性;2. 培养学生的团队合作精神,提高沟通与协作能力;3. 增强学生的自信心,使其勇于面对挑战,积极解决问题。
分析课程性质、学生特点和教学要求:本课程为C语言课程设计,旨在让学生将所学知识应用于实际项目中,提高编程实践能力。
学生已具备一定的C语言基础,但独立完成项目的能力尚需培养。
因此,课程目标应注重培养学生的实践能力、团队合作精神和解决问题的能力。
将目标分解为具体的学习成果:1. 学生能够独立设计并实现学生学籍管理系统的核心功能;2. 学生能够编写结构清晰、易于维护的代码,并通过测试;3. 学生能够在团队中发挥积极作用,共同完成项目任务;4. 学生能够通过本课程的学习,提升自身编程能力和解决问题的能力。
二、教学内容1. 数据类型与变量:回顾基本数据类型、变量定义和初始化,强调其在系统设计中的应用。
教材章节:第二章 数据类型与表达式2. 控制结构:复习顺序结构、分支结构和循环结构,讲解其在程序流程控制中的应用。
教材章节:第三章 控制结构3. 函数:介绍函数的定义、调用和参数传递,强调模块化编程思想。
教材章节:第四章 函数4. 结构体与数组:讲解结构体的定义和使用,以及结构体数组的应用。
教材章节:第五章 结构体与联合5. 文件操作:介绍文件读写的基本方法,讲解如何将数据存储到文件中,以及如何从文件中读取数据。
C语言程序报告学生学籍信息管理系统
C语言程序报告学生学籍信息管理系统学生学籍信息管理系统报告一、引言学生学籍信息管理系统是为了高效管理学生的学籍信息而开发的一款软件系统。
该系统包括学生信息的录入、查询、修改、删除等功能,为学校提供了便利的学籍信息管理方式。
本报告将对该系统的设计思路、功能模块和技术实现进行详细介绍。
二、系统设计思路学生学籍信息管理系统的设计思路主要包括以下几个方面:1.模块化设计:将系统按照不同的功能划分为若干个模块,每个模块负责处理特定的功能。
这样设计可以提高系统的可维护性和可扩展性。
2.数据管理:系统利用数据库来存储学生的学籍信息,包括学号、姓名、性别、年龄、班级等基本信息。
数据库的使用可以方便地进行数据存储和查询,提高系统的数据管理效率。
3.用户权限管理:系统设置了不同的用户权限,包括管理员、教师和学生等。
管理员具有最高权限,可以进行信息的录入、修改、查询和删除等操作;教师可以进行信息的查询和修改操作;学生只能查询自己的信息。
三、系统功能模块学生学籍信息管理系统主要包括以下几个功能模块:1.学生信息录入模块:管理员可以通过该模块录入学生的学籍信息,包括学号、姓名、性别、年龄、班级等。
系统会对学生的学号进行唯一性校验,防止重复录入。
2.学生信息查询模块:管理员、教师和学生可以通过该模块查询学生的学籍信息。
查询可以按照学号、姓名、班级等条件进行,系统会返回符合条件的学生信息。
3.学生信息修改模块:管理员和教师可以通过该模块修改学生的学籍信息,包括姓名、年龄、班级等。
修改操作会对学生的学号进行校验,确保修改的学生存在。
4.学生信息删除模块:管理员可以通过该模块删除学生的学籍信息。
删除操作会对学生的学号进行校验,确保删除的学生存在。
四、技术实现学生学籍信息管理系统使用C语言进行开发,主要依赖以下技术实现:1.数据结构:系统使用链表的数据结构来存储学生的学籍信息。
链表可以方便地进行插入、删除和查找操作,提高系统的运行效率。
设计一个C语言课程的学生信息管理系统
1. 设计一个C语言课程的学生信息管理系统在计算机编程领域,学生信息管理系统是一种常见且重要的工具。
针对C语言课程,设计一个学生信息管理系统可以使教师和学生更有效地管理和跟踪课程进展。
本文将基于这一需求,介绍一个设计方案,并讨论其实现和应用。
1.1 系统需求分析设计学生信息管理系统的首要步骤是确定系统的需求。
在C语言课程中,我们通常需要管理学生的基本信息(例如尊称、学号、通信方式等),以及他们的课程成绩、作业提交情况等。
针对这些需求,我们可以将学生信息管理系统的功能分为以下几个方面:1.学生信息录入:教师或管理员可以将学生的基本信息录入系统,包括尊称、学号、通信方式等。
2.成绩管理:系统可以记录和管理学生的课程成绩,并提供查询和统计功能。
3.作业管理:学生可以通过系统提交作业,教师可以查看和评分。
4.考勤管理:记录学生的出勤情况,方便教师管理课堂纪律。
1.2 系统设计与实现1.2.1 数据结构设计为了有效地管理学生信息,我们需要设计合适的数据结构。
在C语言中,可以使用结构体来表示学生的信息,其中包括尊称、学号、通信方式等字段。
为了便于管理多个学生,可以使用链表或数组来组织学生信息。
typedef struct Student {char name[50];int studentId;char contact[50];float grade;struct Student* next;} Student;在上述代码中,我们定义了一个Student结构体,包含了学生的尊称、学号、通信方式、课程成绩以及一个指向下一个学生的指针。
1.2.2 功能实现为了实现学生信息管理系统的各个功能,我们需要编写相应的函数。
下面是几个基本功能的示例代码:1.2.2.1 学生信息录入Student* createStudent(char name[50], int studentId, char contact[50]) { // 创建一个新的学生结构体Student* student = (Student*)malloc(sizeof(Student));// 设置学生的基本信息strcpy(student->name, name);student->studentId = studentId;strcpy(student->contact, contact);student->grade = 0.0;student->next = NULL;return student;}void addStudent(Student** head, Student* newStudent) {if (*head == NULL) {// 如果链表为空,则直接将新学生作为头节点*head = newStudent;} else {// 找到链表的尾节点,并将新学生添加到末尾Student* current = *head;while (current->next != NULL) {current = current->next;}current->next = newStudent;}}void inputStudentInformation(Student** head) {char name[50], contact[50];int studentId;printf("请输入学生尊称:");scanf("%s", name);printf("请输入学生学号:");scanf("%d", &studentId);printf("请输入学生通信方式:");scanf("%s", contact);// 创建新的学生信息Student* newStudent = createStudent(name, studentId, contact);// 将学生信息添加到链表addStudent(head, newStudent);printf("学生信息录入成功!\n");}在上述代码中,我们首先定义了一个createStudent函数,用于创建一个新的学生结构体并初始化其基本信息。
C语言课设之学生学籍管理系统
题目:学生学籍管理系统目录:一.个人简介。
二.报告摘要。
三.报告目录。
四.报告正文。
1.系统需求分析2.系统总体设计3.系统具体设计六.总结。
二.报告摘要这个C语言课程设计是关于学生学籍管理系统的设计, 题目规定可以录入数据, 查询, 删除和排序的功能。
报告依次以主函数板块、数据录入板块、查询板块、删除板块、排序板块的顺序进行。
三.报告目录1 主函数2 数据录入3 查询4 删除5 排序四.报告正文1 系统需求分析根据题目需求, 在程序中规定浏览学生的信息, 应当提供数据录入、查询、删除、排序的操作。
题目规定实得成绩、实得学分根据条件自动运算, 应当提供求综合成绩和实得学分的算法, 此外还应当提供键盘式选择菜单实现功能选择。
2 系统总体设计3 系统具体设计(1)主函数负责提供输入、解决和输出部分的函数调用, 其中各功能模块用菜单方式选择。
程序:void menu(){int n,w;do{puts("\t\t****************MENU******************\n\n");puts("\t\t\t\t1.enter new data-student");puts("\t\t\t\t2.search by name");puts("\t\t\t\t3.search by learn number");puts("\t\t\t\t4.delete data");puts("\t\t\t\t5.insert data");puts("\t\t\t\t6.enter new data-sorce");puts("\t\t\t\t6.exit");puts("\n\n\t\t************************************\n");printf("choice your number(1-9):[]\\b\b");scanf("%d",&n);if(n<1||n>9){w1=1;getchar();}else w1=0;}while(w1==1);switch(n){case 1:enter();breakcase 2:search by name();break;case 3:search by learn number();break;case 4:del();break;case 5:insert():break;case 6:exit(0);break;}}main(){menu();}(2)数据录入板块数据信息中学号、姓名等是字符型, 采用字符型数组, 分数、号码、等为整数, 可以采用整型数组, 实得学分也许为小数, 采用实型。
C语言学生学籍信息管理系统设计说明
学生学籍信息管理系统设计1、需求分析学生基本信息、学生成绩基本信息要存入文件当中,因而要提供文件的输入输出操作;查询功能要求提供查找和显示操作;删除功能要求实现删除操作;排序功能要求实现排序操作;另外还应该提供键盘式选择菜单以实现功能选择。
2、总体设计整个系统可以设计为数据录入模块、数据查询模块、数据删除模块和数据排序模块。
3、详细设计设计学生基本信息和学生成绩基本信息结构体数组。
Struct{int stuNo; //学号char name[20]; //姓名char sex[2]; //性别int domNum; //宿舍号int tel; //电话号码}StuInfo; //学生基本信息结构体Struct{int stuNo; //学号char courseNo; //课程编号char courseName; //课程名称int creditHour; //学分Int triGrade; //平时成绩Int experiGrade; //实验成绩Int examGrade; //卷面成绩Float totalGrade; //综合成绩Float finalCreHour; //实得学分}StuGraInfo; //学生成绩基本信息结构体〔1数据录入模块学生基本信息文件可以在磁盘建立,采用写文件方式录入学生成绩基本信息。
综合成绩和实得学分通过计算得到。
〔2查询模块通过菜单选择查询功能,再选择学生基本情况查询和成绩查询,若选择前者,再通过菜单选择学号、姓名或宿舍号码,按照基本查找算法查找A.TXT,然后把查找结果输出若选择后者,则先在A.TXT中查找学号对应的姓名,再在B.TXT中查找该学生的课程情况,并统计科目和实得总学分,输出结果。
〔3删除模块通过菜单选择删除学生的功能,输入要删除学生的学号,则分别在A.TXT和B.TXT中查找该生信息,删除之;或者输入学生的姓名,先在A.TXT中得到该生的学号,删除该生信息,再在B.TXT中删除该学号对应的信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学生学籍信息管理系统设计1、需求分析学生基本信息、学生成绩基本信息要存入文件当中,因而要提供文件的输入输出操作;查询功能要求提供查找和显示操作;删除功能要求实现删除操作;排序功能要求实现排序操作;另外还应该提供键盘式选择菜单以实现功能选择。
2、总体设计整个系统可以设计为数据录入模块、数据查询模块、数据删除模块和数据排序模块。
3、详细设计设计学生基本信息和学生成绩基本信息结构体数组。
Struct{int stuNo; //学号char name[20]; //姓名char sex[2]; //性别int domNum; //宿舍号int tel; //电话号码}StuInfo; //学生基本信息结构体Struct{int stuNo; //学号char courseNo; //课程编号char courseName; //课程名称int creditHour; //学分Int triGrade; //平时成绩Int experiGrade; //实验成绩Int examGrade; //卷面成绩Float totalGrade; //综合成绩Float finalCreHour; //实得学分}StuGraInfo; //学生成绩基本信息结构体(1)数据录入模块学生基本信息文件可以在磁盘建立,采用写文件方式录入学生成绩基本信息。
综合成绩和实得学分通过计算得到。
(2)查询模块通过菜单选择查询功能,再选择学生基本情况查询和成绩查询,若选择前者,再通过菜单选择学号、姓名或宿舍号码,按照基本查找算法查找A.TXT,然后把查找结果输出若选择后者,则先在A.TXT中查找学号对应的姓名,再在B.TXT中查找该学生的课程情况,并统计科目和实得总学分,输出结果。
(3)删除模块通过菜单选择删除学生的功能,输入要删除学生的学号,则分别在A.TXT和B.TXT中查找该生信息,删除之;或者输入学生的姓名,先在 A.TXT中得到该生的学号,删除该生信息,再在B.TXT中删除该学号对应的信息。
注意:C语言中没有直接删除信息的函数,需要自己实现,可以采取读出数据,判断数据(如果不删除,则进入缓冲区,否则删除),写入数据(把缓冲区中的数据写入文件)的步骤进行。
(4)排序模块通过菜单选择排序依据,采用排序算法(冒泡、插入、选择等)对数据进行排序并输出结果。
#include <time.h>#include<stdio.h>#include<conio.h>#include <stdlib.h>#include<string.h>void input();void display();void find();void delmodify();void delfile();void save();# define MAX 100;struct employe{char jobno[10]; //职工号char name[20]; //姓名char sex[10]; //性别int age; //年龄char edulevel[10]; //学历char salary[10]; //工资char addr[20]; //地址char tel[11]; //电话}; //职工信息结构体struct employe a[100];int number=0;main(){int n;start: printf("\t\t\t\t欢迎使用职工信息管理系统\n"); do{printf("\t\t\t1.职工信息输入\n");printf("\t\t\t2.职工信息浏览\n");printf("\t\t\t3.职工信息查询\n");printf("\t\t\t4.职工信息删除修改\n");printf("\t\t\t5.删除文件中的职工信息\n");printf("\t\t\t6.保存职工信息\n"); printf("\t\t\t7.退出\n");printf("\t\t\t选择功能选项:");fflush(stdin);scanf("%d",&n);switch(n){case 1 : system("cls"); input(); break; case 2 : system("cls"); display(); break; case 3 : system("cls"); find(); break; case 4 : system("cls"); delmodify(); break; case 5 : system("cls"); delfile(); break; case 6 : system("cls"); save(); break; case 7 : system("exit"); exit(0);default :system("cls"); goto start;}}while(1);}void input(){int i=0;char j;do{printf("\t\t\t\t录入职工信息\n输入第%d 个职工的信息:\n",i+1); printf("输入职工号:");fflush(stdin);gets(a[i].jobno);printf("输入职工姓名:");fflush(stdin);gets(a[i].name);printf("输入职工性别:");fflush(stdin);scanf("%s",a[i].sex);printf("输入职工年龄:");fflush(stdin);scanf("%d",&a[i].age);printf("输入职工学历:");fflush(stdin);gets(a[i].edulevel);printf("输入职工工资:");fflush(stdin);gets(a[i].salary);printf("输入职工地址:");fflush(stdin);gets(a[i].addr);printf("输入职工电话:");fflush(stdin);gets(a[i].tel);i++;number=i;printf("是否继续录入?(Y or N):"); fflush(stdin);scanf("%s",&j);}while(j!='n'&&j!='N');}void display(){int i=0;char ch;do{printf("\n\n");for(i=0;i<number;i++){printf("\t\t第%d 个职工的信息:\n",i+1); printf("\t职工号%s\n",a[i].jobno);printf("\t姓名%s\n",a[i].name);printf("\t性别%s\n",a[i].sex);printf("\t年龄%d\n",a[i].age);printf("\t学历%s\n",a[i].edulevel);printf("\t工资%s\n",a[i].salary);printf("\t地址%s\n",a[i].addr);printf("\t电话%s\n",a[i].tel);}printf("\t\t按任意键返回主菜单");fflush(stdin);ch=getchar();}while(!ch);system("cls");}void find (){void find1();void find2();int m;char ch;start :printf("\n\n");printf("\t\t\t选择查询职工信息的模式\n"); do{printf("\t\t\t1.通过职工号\n");printf("\t\t\t2.通过职工学历\n");printf("\t\t\t选择功能选项:");fflush(stdin);scanf("%d",&m);switch(m){case 1 :system("cls"); find1(); break; case 2 : system("cls"); find2(); break;default :system("cls"); goto start;}printf("\t\t按任意键返回主菜单"); fflush(stdin);ch=getchar();}while(!ch);system("cls");}void find1(){int i;char str[20],ch;do{printf("输入要查询的职工号:"); fflush(stdin);gets(str);for(i=0;i<number;i++)if(!strcmp(a[i].jobno,str)){printf("\t职工号%s\n",a[i].jobno); printf("\t姓名%s\n",a[i].name); printf("\t性别%s\n",a[i].sex); printf("\t年龄%d\n",a[i].age); printf("\t学历%s\n",a[i].edulevel); printf("\t工资%s\n",a[i].salary); printf("\t地址%s\n",a[i].addr); printf("\t电话%s\n",a[i].tel);}printf("\t\t按任意键返回查询菜单"); fflush(stdin);ch=getchar();}while(!ch);system("cls");}void find2(){int i;char str[20],ch;do{printf("输入要查询的职工学历:"); gets(str);for(i=0;i<number;i++)if(!strcmp(a[i].edulevel,str)){printf("\t职工号%s\n",a[i].jobno); printf("\t姓名%s\n",a[i].name); printf("\t性别%s\n",a[i].sex); printf("\t年龄%d\n",a[i].age); printf("\t学历%s\n",a[i].edulevel); printf("\t工资%s\n",a[i].salary); printf("\t地址%s\n",a[i].addr); printf("\t电话%s\n",a[i].tel);}printf("\t\t按任意键返回查询菜单");fflush(stdin);ch=getchar();}while(!ch);system("cls");}void delmodify(){void del();void modify();char ch;int p;start : printf("\t\t\t职工信息的删除?修改?\n"); do{printf("\t\t\t1.删除\n");printf("\t\t\t2.修改\n");printf("选择功能选项:");fflush(stdin);scanf("%d",&p);switch(p){case 1 :system("cls"); del(); break;case 2 : system("cls"); modify(); break; default :system("cls"); goto start;}printf("\t\t按任意键返回主菜单");fflush(stdin);ch=getchar();}while(!ch);system("cls");}void del(){char str[20];int i;printf("\t\t\t1.输入要删除职工的姓名:\n"); fflush(stdin);scanf("%s",&str);for(i=0;i<number;i++){if(!strcmp(a[i].name,str)){if(i==number) number-=1;else{a[i]=a[number-1];number-=1;}break;}}system("cls");}void modify(){int i;char str[20];printf("\t\t\t2.输入要修改职工的姓名:\n"); fflush(stdin);scanf("%s",&str);for(i=0;i<number;i++)if(!strcmp(a[i].name,str)){system("cls");printf("\t\t\t2.输入新插入职工的信息:\n"); printf("输入职工号:");fflush(stdin);gets(a[i].jobno);printf("输入职工姓名:");fflush(stdin);gets(a[i].name);printf("输入职工性别:");fflush(stdin);scanf("%s",a[i].sex);printf("输入职工年龄:");fflush(stdin);scanf("%d",&a[i].age);printf("输入职工学历:");fflush(stdin);gets(a[i].edulevel);printf("输入职工工资:"); fflush(stdin);gets(a[i].salary);printf("输入职工地址:"); fflush(stdin);scanf("%s",a[i].addr);printf("输入职工电话:"); fflush(stdin);gets(a[i].tel);printf("\n\n"); break;}system("cls");}void save (){FILE *fp;int i;char filepath[20];printf("输入要保存的文件路径:");fflush(stdin);gets(filepath);if((fp=fopen(filepath,"w"))==NULL){printf("\n保存失败!");exit(0);}for(i=0;i<number;i++)fprintf(fp,"%s%s%s%d%s%d%s%s",a[i].jobno,a[i].name,a[i].sex,a[i].age,a[i].edulevel,a[i].sal ary,a[i].addr,a[i].tel);fclose(fp);printf("职工信息已保存在%s中!\n",filepath);fclose(fp);printf("职工信息已保存在%s中!\n",filepath);system("pause");system("cls");}void delfile(){FILE *fp;char filepath[20];printf("输入要删除的文件路径:");fflush(stdin);gets(filepath);fp=fopen(filepath,"w");fclose(fp);printf("保存在文件%s中的所有信息已经删除!\n",filepath); system("pause");system("cls");}. . .. . . . 专业专注.。