新生入学管理系统c语言

合集下载

高校新生报到系统 C语言课程设计

高校新生报到系统 C语言课程设计
三、主要截图
输入学生信息截图
6
沈阳航空航天大学设计用纸
新生报到截图
查询未报到学生截图
学生转专业截图
7
沈阳航空航天大学设计用纸
按学号显示学生信息截图 四、技术要点
本程序主要由五个自定义函数和一个主函数组成,其中主函数 以菜单的形式调用其他函数来实现要求的所有功能。在这些函数当 中,录入数据信息函数,新生报到函数,查询未报到的学生函数, 转专业函数,按学号显示学生信息函数是程序中较为核心的部分, 下面分别进行说明。
scanf("%s",ss.xuehao); fprintf(fp,"%s\t",ss.xuehao); printf("\n 请输入学生姓名 :");
scanf("%s",ss.xingming); fprintf(fp,"%s\t",ss.xingming); printf("\n 请输入学生省份 :");
1、录入数据信息函数:主要实现程序最初运行时新生数据信 息的录入。
2 、新生报道函数: 报道新生,录入新生数据信息。 3、查询未报到的学生函数: 在文件中读取学生信息,把没有 报到的学生输出。 4 、学生转专业函数: 对报道的学生信息数据进行修改,输 入学生学号和学生的新专业。 5、按学号显示学生信息函数:实现的是按学号显示学生记录 信息。
(4) 学生转专业函数
void zhuan() { FILE *fp; int i, sum,baodao; char number[10]; struct student ss[20];
printf("\n 请输入学生学号 :"); scanf("%s",number); if((fp=fopen("d:\\student.txt","r+"))==NULL) { printf("\n 不能打开文件"); return; } i=0; baodao=0;

c语言学生管理系统源代码

c语言学生管理系统源代码

c语言学生管理系统源代码#include <stdio.h>。

#include <stdlib.h>。

#include <string.h>。

/*定义学生结构体*/。

typedef struct student。

char num[20]; //学号。

char name[20]; //姓名。

int c; //语文成绩。

int math; //数学成绩。

float ave; //平均分。

struct student *next;。

} stu;。

/*函数声明*/。

void menu_select(); //显示菜单。

void add(); //添加学生信息。

void delete(); //删除学生信息。

void modify(); //修改学生信息。

void search(); //查询学生信息。

void get_ave(); //计算学生平均成绩。

void display(); //显示学生信息。

void esc(); //退出系统。

int main()。

menu_select();。

return 0;。

}。

//显示菜单。

void menu_select()。

int select;。

while (1)。

printf("\n学生管理系统\n");。

printf("------菜单------\n");。

printf("1.添加学生信息 2.删除学生信息\n");。

printf("3.修改学生信息 4.查询学生信息\n");。

printf("5.计算学生平均成绩 6.显示学生信息\n");。

printf("7.退出系统\n");。

printf("请输入您的选择:");。

scanf("%d", &select);。

c语言课程设计新生入学注册系统设计

c语言课程设计新生入学注册系统设计

c语言课程设计新生入学注册系统设计一、教学目标本课程的教学目标是使学生掌握C语言编程的基本知识和技能,能够运用C语言设计简单的入门级应用程序,具体包括:1.知识目标:理解C语言的基本语法、数据类型、运算符、控制结构、函数等编程基础;掌握基本的输入输出操作,熟悉常见的数据结构及其在程序中的应用。

2.技能目标:能够使用C语言编写简单的程序,进行基本的逻辑运算和数据处理;学会使用调试工具对程序进行调试和优化,提高代码质量。

3.情感态度价值观目标:培养学生对计算机科学的兴趣和好奇心,增强其自主学习和解决问题的能力,培养良好的编程习惯和团队协作精神。

二、教学内容教学内容以教材《C语言程序设计》为基础,按照教材的章节顺序展开,具体包括:1.第一章:C语言基础知识,介绍C语言的基本语法和数据类型。

2.第二章:运算符和控制结构,讲解运算符的用法和控制结构的应用。

3.第三章:函数和数组,讲解函数的定义和调用,以及数组的基本操作。

4.第四章:指针,介绍指针的概念和用法。

5.第五章:字符串和结构体,讲解字符串的处理和结构体的定义。

6.第六章:文件操作,介绍文件的基本操作方法。

7.第七章:编程实践,通过实际项目案例,综合运用所学知识解决实际问题。

三、教学方法本课程采用多种教学方法相结合的方式,包括:1.讲授法:讲解基本概念、语法规则和编程技巧。

2.案例分析法:分析实际项目案例,引导学生运用所学知识解决实际问题。

3.实验法:安排课后实验,让学生动手编写代码,巩固所学知识。

4.讨论法:课堂讨论,鼓励学生提问、发表见解,提高课堂互动性。

四、教学资源1.教材:《C语言程序设计》。

2.参考书:推荐《C语言 Primer》等国内外优秀参考书。

3.多媒体资料:提供课件、教学视频等在线资源,便于学生复习和自学。

4.实验设备:计算机实验室,确保每位学生都能动手实践。

5.在线编程平台:如LeetCode、牛客网等,用于课后练习和竞赛。

五、教学评估本课程的评估方式包括平时表现、作业、考试等多个方面,以全面客观地评价学生的学习成果:1.平时表现:通过课堂参与、提问、讨论等方式评估学生的学习态度和积极性。

学生学籍管理系统 C语言程序代码

学生学籍管理系统 C语言程序代码

#include<stdlib.h>//标准库头文件#include<string.h>#include<stdio.h>#define N 100struct student{char name[10];int age;char sex[5];char classnumber[20];char birthday[15];char homeaddress[15];char hometelnum[15];}stu[N];int load(){FILE *fp;//定义文件型指针变量int i;if ((fp=fopen("results.txt","rb"))==NULL)/*检查打开操作是否出错*/ {printf("文件打开错误\n");exit (0);}for (i=0;!feof(fp);i++)fread(&stu[i],sizeof(struct student),1,fp);fclose(fp);return(i-1);}void save(int n){int i;FILE *fp;if ((fp=fopen("results.txt","wb"))==NULL){printf("文件打开错误:");}for (i=0;i<n;i++)fwrite(&stu[i],sizeof(struct student),1,fp);fclose(fp);}void add(){FILE *fp;int i,k;if ((fp=fopen("results.txt","wb"))==NULL){printf("文件打开错误!\n");exit(1);}printf("请输入录入信息的学生数目:");scanf("%d",&k);for (i=0;i<k;i++){printf("\n学号:");scanf("%s",stu[i].classnumber);printf("姓名:");scanf("%s",stu[i].name);printf("性别:");scanf("%s",stu[i].sex);printf("年龄:");scanf("%d",&stu[i].age);printf("生日:");scanf("%s",stu[i].birthday);printf("家庭住址:");scanf("%s",stu[i].homeaddress);printf("家庭电话号码:");scanf("%s",stu[i].hometelnum);}for (i=0;i<k;i++)fwrite(&stu[i],sizeof(struct student),1,fp);fclose(fp);}void remove(){int n,i,j;char m[5];n=load();printf("输入你要删除资料学生的姓名:");scanf("%s",&m);for (i=0;i<n;i++)if (!strcmp(stu[i].name,m))break;for (j=i;j<n-1;j++){strcpy(stu[j].classnumber,stu[j+1].classnumber);strcpy(stu[j].name,stu[j+1].name);stu[j].age=stu[j+1].age;strcpy(stu[j].sex,stu[j+1].sex);strcpy(stu[j].birthday,stu[j+1].birthday);strcpy(stu[j].homeaddress,stu[j+1].homeaddress);strcpy(stu[j].hometelnum,stu[j+1].hometelnum);}save(n-1);}void display(){int n,m;n=load();for (m=0;m<n;m++){printf("学号:%s\n",stu[m].classnumber);printf("姓名:%s\n",stu[m].name);printf("性别:%s\n",stu[m].sex);printf("年龄:%d\n",stu[m].age);printf("生日:%s\n",stu[m].birthday);printf("家庭住址:%s\n",stu[m].homeaddress);printf("家庭电话号码:%s\n",stu[m].hometelnum);}}void search(){int i,x;char name_1[10];x=load();printf("请输入要查找的学生姓名:\n");scanf("%s",name_1);for(i=0;i<x;i++)if (!strcmp(stu[i].name,name_1)){ printf("学号:%s\n",stu[i].classnumber);printf("姓名:%s\n",stu[i].name);printf("性别:%s\n",stu[i].sex);printf("年龄:%d\n",stu[i].age);printf("生日:%s\n",stu[i].birthday);printf("家庭住址:%s\n",stu[i].homeaddress);printf("家庭电话号码:%s\n",stu[i].hometelnum);}}void modify(){ FILE *fp;int n,i,j;char m[10];n=load();printf("请输入要修改学生的学号或姓名:");scanf("%s",&m);for (i=0;i<n;i++)if (!strcmp(stu[i].classnumber,m)||!strcmp(stu[i].name,m)){printf("修改项目:1.学号2.姓名3.性别4.年龄5.生日6.家庭住址7.家庭电话号码\n");printf("你选择的项目是:");scanf("%d",&j);switch (j){case 1:printf("请输入修改后的学号:");scanf("%s",stu[i].classnumber);break;case 2:printf("请输入修改后的姓名:");scanf("%s",stu[i].name);break;case 3:printf("请输入修改后的性别:");scanf("%s",stu[i].sex);break;case 4:printf("请输入修改后的年龄:");scanf("%d",&stu[i].age);break;case 5:printf("请输入修改后的生日:");scanf("%s",stu[i].birthday);break;case 6:printf("请输入修改后的家庭住址:");scanf("%s",stu[i].homeaddress);break;case 7:printf("请输入修改后的家庭电话号码:");scanf("%s",stu[i].hometelnum);break;default :printf("对不起,输入错误!\n");/*int getch();change();break;*/}save(n);}}void menu(){int n;system("cls");printf("\n\t\t*******************************************\n");printf("\n\t\t*******************************************\n");printf("\t\t\t欢迎使用学生学籍管理系统\n");printf(" \n");printf("\t\t<功能列表>\n");printf("\n\t\t1)添加新生信息");printf("\n\t\t2)删除学生信息");printf("\n\t\t3)显示学生信息");printf("\n\t\t4)查找学生信息");printf("\n\t\t5)修改学生信息");printf("\n\t\t6)退出系统");printf("\n\t\t*******************************************\n");printf("\n\t\t*******************************************\n");printf("请选择相应操作:");scanf("%d",&n);while (n>6||n<1){printf("操作错误,请重新输入:");scanf("%d",&n);}switch (n){case 1:add();break;case 2:remove();break;case 3:display();break;case 4:search();break;case 5:modify();break;default:printf("对不起,输入错误!\n");}}void main() {menu(); }。

c语言课程设计学生学籍管理系统

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语言简单版学生管理系统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语言版)实例文档1-1 新生报到信息注册系统设计

数据结构(C语言版)实例文档1-1 新生报到信息注册系统设计

11.1综合应用一:新生报到信息注册系统设计随着信息技术的快速发展,大中专院校在新生入学报到时,基本采用新生报到信息注册系统,方便信息的查询、分类和汇总,提高了学校招生工作管理水平和工作效率。

此案例利用数据结构的相关知识,采用C语言实现新生报到注册系统设计。

为了达到较好的教学效果,部分功能简化,知识易理解,算法易实现。

源程序见数字化资源。

11.1.1案例需求分析本系统实现的功能及其具体描述如下。

(1)新生信息录入,其中信息字段包括姓名、性别、专业、班级、电话号码和宿舍号。

(2)新生信息打印功能,利用表格的形式显示信息,达到清晰可辨的效果。

(3)信息查询功能,通过输入姓名可以查询,如果存在显示该学生所有信息,否则,显示无此学生报到。

(4)信息汇总功能,通过输入专业名称可以进行汇总,如果存在显示该专业学生所有信息,包括已报到人数统计,否则,显示该专业暂时没有招生或者暂无学生报到。

系统具体功能模块图如图11-1所示,流程图如图11-2所示。

图11-1系统功能模块图图11-2系统流程图11.1.2案例知识目标该案例设计过程中涉及C语言程序设计课程相关知识点,并涉及数据结构课程相关知识点,各个知识点的具体应用如下。

(1)掌握线性表的存储结构,线性表的存储结构包括顺序结构和链式结构,考虑到功能易于实现,该案例利用线性表顺序结构存储新生信息结构体变量。

(2)掌握查找方法,查找方法包括顺序查找、二分法查找和分块查找,由于顺序存储结构中学生信息没有特殊的规律,该案例利用顺序查找方法查找符合姓名要求的新生所有信息及汇总符合专业要求的所有新生信息,并能够统计该专业已报到学生人数。

(3)通过该案例可以巩固C语言程序设计三大结构的使用,包括顺序结构、选择结构和循环结构,同时涉及到字符串的相关操作知识,例如:字符串比较函数strcmp。

(4)掌握结构体定义方法,该案例应用到结构体的知识,学生信息结构体成员包括姓名、性别、专业、班级、电话号码和宿舍号。

学籍管理系统,初始C语言编写

学籍管理系统,初始C语言编写
}
void Search(BAN P)
{
char search[20];
int i;
printf("请输入需要查询的学生姓名或学号:");
scanf("%s",&search);
for(i = 0; i < total; i++)
{
if(strcmp(P.date[i].Id,search) == 0 || strcmp(P.date[i].Name,search) == 0)
void ChaRu(BAN P);
void ShanChu(BAN P);
int main()
{
BAN P;
P.date = (T *)malloc(61 *sizeof(T));//给班开辟61个学生的信息空间
int xz = 1;
while(xz)
{
printf(" 学生成绩信息系统\n");
printf("===========================================\n");
printf(" 1.输入学生信息\n");
printf(" 2.输出每人的平均成绩并统计优秀人数\n");
printf(" 3.查询学生信息\n");
}
printf("输出完毕!\n");
}
void ChaRu(BAN P)
{
int a;
while(1)
{
printf("请输入要插入的位置:");

c语言学生管理系统代码

c语言学生管理系统代码

C语言学生管理系统代码
简介
学生管理系统是一个用于管理学生信息的简单程序,它可以实现添加学生信息、显示学生信息、修改学生信息和删除学生信息等功能。

通过这个系统,学校或机构可以更方便地管理和维护学生的相关数据。

功能
1.添加学生信息:通过输入学生的姓名、学号、年龄和性别等信息,将
学生信息存储在系统中。

每个学生信息包括学号、姓名、年龄和性别等关键信息。

2.显示学生信息:可以显示系统中所有学生的信息,包括学号、姓名、
年龄和性别。

3.修改学生信息:通过输入学生的学号,可以修改该学生的姓名、年龄
和性别等信息。

4.删除学生信息:通过输入学生的学号,可以删除该学生的信息。

实现
下面是一个简单的C语言学生管理系统代码示例:
```c #include <stdio.h> #include <string.h>
#define MAX_STUDENTS 100
// 定义学生结构体 struct Student { int id; char name[100]; int age; char
gender[10]; };
// 定义全局变量,用于存储学生信息和统计学生数量 struct Student
students[MAX_STUDENTS]; int num_students = 0;
// 添加学生 void addStudent() { if (num_students >= MAX_STUDENTS) { printf(。

学生管理系统c语言源代码

学生管理系统c语言源代码

学生管理系统c语言源代码学生管理系统c语言源代码#include stdio.h#include dos.h#include string.h#include stdlib.h#include malloc.h#define SIZE 8struct student{char name;char num;int score;float ave;struct student *next;}stu[SIZE],temp,s;void shuru(){int i,j,sum,length,flag=1,a;FILE *fp;while(flag==1){printf(“Define a rangeclass number:");scanf("%d",printf("Input the total number of the class(a):"); scanf("%d",length);if(lengtha)flag=0;}for(i=0;ilength;i++){printf("\n请输入学生的信息:");printf("\n输入姓名:");scanf("%s",stu[i].name);printf("\n输入序号.:");scanf("%s",stu[i].num);printf("\n输入成绩:\n");sum=0;for(j=0;jj++){printf("score %d:",j+1);scanf("%d",stu[i].score[j]);sum+=stu[i].score[j];}stu[i].ave=sum/3.0;}学生管理系统c语言源代码fp=fopen("stu1.txt","w");for(i=0;ilength;i++)if(fwrite(stu[i],sizeof(struct student),1,fp)!=1)printf("File write error\n");fclose(fp);fp=fopen("stu1.txt","r");printf("\name\ NO. score1 score2 score3 sum ave\n");for(i=0;ilength;i++){fread(stu[i],sizeof(struct student),1,fp);printf("%3s%5s%7d%7d%7d%7d%10.2f\n",stu[i].name,stu[i].num,stu[i ].score,stu[i].score,stu[i].score,sum=stu[i].score+stu[i].score+stu[i].score,stu[i].ave);}}void chaxun(){ FILE *fp, *fp1;char n,name;int i,j,k,t,m,flag=1;if((fp=fopen("stu1.txt","r"))==NULL){printf("Can not open the file.");exit(0);}printf("\noriginal data:\n");k=i;printf("\nPlease select the menu(1.number ):"); scanf("%d",switch(m){case 1:printf("\nchaxun number:");scanf("%s",n);for(flag=1,i=0;ii++){if(strcmp(n,stu[i].num)==0){j=i;flag=0;break;}}break;case 2:printf("\nchaxun name:");scanf("%s",name);for(flag=1,i=0;ii++){if(strcmp(name,stu[i].name)==0){j=i;flag=0;break;学生管理系统c语言源代码}}}if(!flag){printf("\nYou can find:\n");fp1=fopen("stu2.txt","w");printf(" name NO. score1 score2 score3ave\n");fwrite(stu[j],sizeof(struct student),1,fp1);printf("%-15s%11s%7d%7d%7d%10.2f",stu[j].name,stu[j].num,stu[j].score,stu[j].score,stu[j].score,stu[j].ave);}else printf("\nNot found!");fclose(fp);fclose(fp1);}xiugai(){ int a;printf("\nplease select the menu(1.CHARU 2.__ ):");scanf("%d",switch(a){case 1:Insert(); break;case 2:Delete(); break;}}Insert(){ FILE *fp;int i,j,t,n;printf("\nNO.:");scanf("%s",s.num);printf("name:");scanf("%s",);printf("score1,score2,score3:");scanf("%d,%d,%d",s.score,s.score,s.score);s.ave=(s.score+s.score+s.score)/3.0;if((fp=fopen("stu1.txt","r"))==NULL){printf("Can not open the file.");exit(0);}printf("\noriginal data:\n");for(i=0;fread(stu[i],sizeof(struct student),1,fp)!=0;i++) {printf("\n%-15s%11s",stu[i].name,stu[i].num);for(j=0;jj++)学生管理系统c语言源代码printf("%7d",stu[i].score[j]);printf("%10.2f",stu[i].ave);}fclose(fp);n=i;for(t=0;stu[t].aves.avett++);printf("\nnow:\n");fp=fopen("stu1.txt","w");for(i=0;ii++){fwrite(stu[i],sizeof(struct student),1,fp);printf("\n%-15s%11s",stu[i].name,stu[i].num);for(j=0;jj++)printf("%7d",stu[i].score[j]);printf("%10.2f",stu[i].ave);}fwrite(s,sizeof(struct student),1,fp);printf("\n%-15s%11s%7d%7d%7d%10.2f",,s.num,s.score,s.score, s.score,s.ave);for(i=t;ii++){fwrite(stu[i],sizeof(struct student),1,fp);printf("\n%-15s%11s",stu[i].name,stu[i].num);for(j=0;jj++)printf("%7d",stu[i].score[j]);printf("%10.2f",stu[i].ave);}fclose(fp);}Delete(){ FILE *fp;int i,j,t,n,flag;char number;if((fp=fopen("stu1.txt","rb"))==NULL){printf("Can not open the file.");exit(0);}printf("\noriginal data:");for(i=0;fread(stu[i],sizeof(struct student),1,fp)!=0;i++) {printf("\n%-15s%11s",stu[i].name,stu[i].num);for(j=0;jj++)printf("%7d",stu[i].score[j]);printf("%10.2f",stu[i].ave);}fclose(fp);n=i;学生管理系统c语言源代码printf("\nInput number deleted:");scanf("%s",number);for(flag=1,i=0;flagii++){if(strcmp(number,stu[i].num)==0){for(t=i;tt++){strcpy(stu[t].num,stu[t+1].num);strcpy(stu[t].name,stu[t+1].name);for(j=0;jj++)stu[t].score[j]=stu[t+1].score[j];stu[t].ave=stu[t+1].ave;}n=n-1;elseprintf("\n Not found!");printf("\nNow,the content of file:\n");fp=fopen("stu1.txt","wb");for(i=0;ii++)fwrite(stu[i],sizeof(struct student),1,fp);fclose(fp);fp=fopen("stu1.txt","r");for(i=0;fread(stu[i],sizeof(struct student),1,fp)!=0;i++)printf("%-15s%11s%7d%7d%7d%10.2f\n",stu[i].name,stu[i].num,stu[i].score, stu[i].score,stu[i].score,stu[i].ave);fclose(fp);}paixu(){FILE *fp;int i,j,n;if((fp=fopen("stu1.txt","r"))==NULL){printf("Can not open the file.");exit(0);}printf("\nfile'stu1.txt':");for(i=0;fread(stu[i],sizeof(struct student),1,fp)!=0;i++) {printf("\n%-15s%11s",stu[i].name,stu[i].num);for(j=0;jj++)printf("%7d",stu[i].score[j]);printf("%10.2f",stu[i].ave);}fclose(fp);n=i;for(i=0;ii++)for(j=i+1;jj++)学生管理系统c语言源代码if(stu[i].avestu[j].ave){temp=stu[i];stu[i]=stu[j];stu[j]=temp;}printf("\nnow:");fp=fopen("stu1.txt","w");for(i=0;ii++){fwrite(stu[i],sizeof(struct student),1,fp);printf("\n%-15s%11s",stu[i].name,stu[i].num);tongji(){ FILE *fp;int i,j,k,labe1,b;int a5=0;int a6=0;int a7=0;int a8=0;int a9=0; int a10=0; float t;if((fp=fopen("stu1.txt","r"))==NULL){printf("Can not open the file.");exit(0);}printf("\nfile'stu1.txt':");for(i=0;fread(stu[i],sizeof(struct student),1,fp)!=0;i++){printf("\n%-15s%11s",stu[i].name,stu[i].num); for(j=0;jj++)printf("%7d",stu[i].score[j]);printf("%10.2f",stu[i].ave);}fclose(fp);k=i;for(i=0;ii++){labe1=0;if(stu[i].ave60){labe1++;t=labe1/(float)k*100;}}printf("\nbujigelv:");printf("%f%",t);printf("\n");for(j=0;jj++){a5=0;a6=0;a7=0;a8=0;a9=0;a10=0;k=i;printf("kemu is %d:\n",j);for(i=0;ii++)学生管理系统c语言源代码{b=stu[i].score[j]/10;if(b6)a5++;elseif(b=6b7)a6++;elseif(b=7b8)a7++;elseif(b=8b9)a8++;if(b=9b10)a9++;elseif(b==10)a10++;}printf(" 不及格is %d\n",a5);printf(" 60--69 is %d\n",a6);printf(" 70--79 is %d\n",a7);printf(" 80--89 is %d\n",a8);printf(" 90--99 is %d\n",a9);printf(" 100 is %d\n",a10);}}main(){int a;printf(" ____\n"); printf(" 欢迎进入学生成绩管理系统\n");printf(" ____\n"); while(1){printf("\n选择菜单:\n");printf("\n");printf(" 1.输入 2.查询 3.排序 4.修改 5.统计 6.退出\n"); scanf("%d",switch(a){case 1: shuru();break;case 2: chaxun(); break;case 3: paixu(); break;case 4: xiugai(); break;学生管理系统c语言源代码case 5: tongji();break; case 6: exit(0); }。

学生管理系统 C语言代码

学生管理系统 C语言代码

#include"stdio.h"#include"stdlib.h"#include"string.h"struct stu_info1{char num[13];//学号char name[10];//姓名char sex[5];//性别char cls[20];//班级}stu1[6];struct stu_info2{char counum[6];//课程号char counam[20];//课程名称int credit;//学分}stu2[6];struct stu_info3{char num[13];//学号char counum[6];//课程号float results;//分数}stu3[12];struct stu_info4{char num[13];//学号char counum[6];//课程号float results;//分数}stu4[12];int n=11;void main(){void gengxin();void input1();void input2();void input3();void output();void xianshi();void chaxun();void printf1();void printf2();input1();input2();output();int i;loop: ;printf("*************欢迎使用分数查询系统*************\n");printf("** 请选择**\n");printf("** 1.录入2.删除无用信息(管理员功能) **\n");printf("** 3.显示4.查询(学生功能) **\n");printf("** 5.显示学生信息6.显示课程信息**\n");printf("** 7.退出**\n");printf("**********************************************\n");scanf("%d",&i);switch(i){case 1: input3();break;case 2:gengxin();break;case 3:xianshi();goto loop;case 4: chaxun();goto loop;case 5: printf1();goto loop;case 6: printf2();goto loop;case 7:break;default:printf("error");break;}}void input1()//录入结构体stu1[]{int i;FILE *fp;if((fp=fopen("A.txt","r"))==NULL){printf("can not open file\n");exit(0);}/* printf(" 学号姓名性别班级\n");*/for(i=0;i<=5;i++){fscanf(fp,"%s%s%s%s",&stu1[i].num,&stu1[i].name,&stu1[i].sex,&stu1[i].cls);/*printf("%-13s %-10s %-5s %-20s\n",stu1[i].num,stu1[i].name,stu1[i].sex,stu1[i] .cls);*/}fclose(fp);}void input2()//录入结构体stu2[]{int i;FILE *fp;if((fp=fopen("B.txt","r"))==NULL){printf("can not open file\n");exit(0);}for(i=0;i<=5;i++){fscanf(fp,"%s%s%d",&stu2[i].counum,&stu2[i].counam,&stu2[i].credit);}fclose(fp);}void input3()//录入成绩{FILE *fp;fp=fopen("C.txt","w");int a,i,j,k;float cetss;char number[13],cnum[6],mima[10];printf("请输入管理员密码\n");scanf("%s",mima);if(strcmp(mima,"abc111")==0){printf("请输入要录入学生成绩的个数\n");scanf("%d",&a);for(i=1;i<=a;i++){printf("请输入要录入的第%d同学的学号:",i);scanf("%s",number);printf("请输入要录入的第%d同学的课程号:",i);scanf("%s",cnum);for(j=0;j<=5;j++)//学号{if((strcmp(number,stu1[j].num)==0))break;}if(j<=5){for(k=0;k<=5;k++)//课程号{if(strcmp(cnum,stu2[k].counum)==0){printf("请输入要录入同学的成绩:");scanf("%f",&cetss);fprintf(fp,"%s %s %f\n",number,cnum,cetss);break;}}}if(j>5||k>5){printf("Error,please input again");i=i-1;}printf("录入成功\n");}}else{printf("密码错误\n");}}void output()// 录入结构体stu3[]{int i;FILE *fp=fopen("C.txt","r");for(i=0;i<n;i++){fscanf(fp,"%s%s%f",&stu3[i].num,&stu3[i].counum,&stu3[i].results);/*printf("%s%s%f\n",stu3[i].num,stu3[i].counum,stu3[i].results);*/ }fclose(fp);}void xianshi()// 显示成绩{int i,j;for(i=0;i<n;i++){for(j=0;j<6;j++){if((strcmp(stu3[i].num,stu1[j].num))==0)printf("%s\t",stu1[j].name);}for(j=0;j<6;j++){if(strcmp(stu3[i].counum,stu2[j].counum)==0)printf("%s\t",stu2[j].counam);}printf("%3.1f\n",stu3[i].results);}}void chaxun()//查询功能{char number[13],c;int i,j,k,a,b,d;while((c=getchar())!='Q'){a=0,b=0;//a记录学分b记录学科printf("请输入要查询同学的学号\n");scanf("%s",number);for(i=0;i<n;i++){if(strcmp(number,stu3[i].num)==0){printf("学号:%s\t",stu3[i].num);for(j=0;j<6;j++){if(strcmp(stu3[i].num,stu1[j].num)==0){printf("姓名:%s\n",stu1[j].name);}}break;}}d=i;for(i=0;i<n;i++)if(strcmp(number,stu3[i].num)==0){b=b+1;for(j=0;j<6;j++){if(strcmp(stu3[i].num,stu1[j].num)==0){for(k=0;k<6;k++){if(strcmp(stu3[i].counum,stu2[k].counum)==0)break;}break;}}if(stu3[i].results>=60){a=a+stu2[k].credit;printf("课程号:%s\t课程名称:%s\t成绩:%3.1f\t实得学分:%d\n",stu3[i].counum,stu2[k].counam,stu3[i].results,stu2[k].credit);}elseprintf("课程号:%s\t课程名称:%s\t成绩:%3.1f\t实得学分:%d\n",stu3[i].counum,stu2[k].counam,stu3[i].results,0);}if(d<n){printf("共修%d科\t\t实得总学分:%d\n",b,a);}else{printf("学号输入错误\n");}getchar();printf("退出请按Q+回车,继续查询请按回车键");}}void gengxin()//更新信息,删除C.txt中无用信息{FILE *fp;int i,j,k;char mima[10];printf("请输入管理员密码\n");scanf("%s",mima);if(strcmp(mima,"abc111")==0){fp=fopen("C.txt","w");for(i=0;i<n;i++){for(j=0;j<6;j++)if(strcmp(stu3[i].num,stu1[j].num)==0){for(k=0;k<=5;k++)if(strcmp(stu3[i].counum,stu2[k].counum)==0)break;if(k<=5){fprintf(fp,"%s %s %f\n",stu3[i].num,stu3[i].counum,stu3[i].results);}}}printf("更新C.txt成功\n");fclose(fp);}else{printf("密码错误\n");}}void printf1()//显示学生信息{int i;printf(" 学号姓名性别班级\n");for(i=0;i<=5;i++){printf("%-13s%-10s%-5s %-20s\n\n",stu1[i].num,stu1[i].name,stu1[i].sex,stu1[i].cls);}}void printf2()//显示课程信息{int i;printf(" 课程编号课程名称学分\n");for(i=0;i<=5;i++){printf("%-6s%-20s %-4d\n\n",stu2[i].counum,stu2[i].counam,stu2[i].credit);}}。

c语言课程设计学生学籍管理系统

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语言学习源代码之学生管理系统

#include<stdio.h>#include<string.h>#include<stdlib.h>#define HEADLINE printf("*** Student Infomation Management System**\n")#define STD_INFO printf("\t%-10s\t%-15s\t%-5s\t%-5s\t%-11s\n","student ID","name","age","sex","telephone")char USENAME[11]= "zouxiongbo";typedef struct node{char id[10];char nm[15];int age;char sex[6];char tel[12];*next;struct node}std;std *head;int Menu_user_name(char *name){char user_name[10];printf("Please enter user name:");scanf("%s",user_name);if (strcmp(name,user_name)==0) return 0;else {printf("The user name is wrong,please enter again!\n");return 1;}}int Menu_user_pwd(char *password){char pwd[10];printf("Please enter the password:");scanf("%s",pwd);if (strcmp(pwd,password)==0) return 0;else {printf("The password is wrong,please try again!\n");return 1;} }int pwd_chng(){char a[10],b[10],pwd[10];FILE *sp;if((sp=fopen("password.txt","rw+"))==NULL){1printf("open error!\n"); exit(-1);}if(fseek(sp,3,0)==EOF){printf("seek error!\n"); exit(-1);}fgets(pwd,9,sp);rewind(sp);if(fseek(sp,3,0)==EOF){printf("seek error!\n"); exit(-1);}printf("Please enter the old password:");scanf("%s",a);if(strcmp(a,pwd)==0){printf("Please enter new password/*eight number*/:");scanf("%s",b);//strcpy(pwd,b);if(fprintf(sp,"%s\n",b)<=0){printf("fputs error! try again\n");return 1;}fclose(sp);return 0;}else {printf("old password is wrong,try again!\n");return 1;}}void info_create( ){system("clear");HEADLINE;std *sur,*prv; int i=0;int k; long int fileSize; FILE *p;prv=head=malloc(sizeof(std));memset(head,0,sizeof(std));if((p=fopen("student_info.txt","rw+"))==NULL){printf("open error!\n"); exit(-1);}fseek(p,0,SEEK_END);fileSize = ftell(p);if(fileSize==0){rewind(p);printf("No student information!\n");printf("Please enter the first number of established student information:");scanf("%d",&k);for(;i<k;++i)2{sur=malloc(sizeof(std));//memset(sur,0,sizeof(std));printf("Please followed by input student'sID/name/age/sex/tel:");scanf("%s%s%d%s%s",sur->id,sur->nm,&sur->age,sur->sex,sur-> tel);//fwrite(sur,sizeof(std),1,p);prv->next=sur;sur->next=NULL;prv=sur;sur=NULL;}fclose(p);}else{rewind(p);while(sur=malloc(sizeof(std)),fread(sur,sizeof(std),1,p)>0){//memset(sur,0,sizeof(std));/prv->next=sur;sur->next=NULL;prv=sur;sur=NULL;}fclose(p);}}void insert_student_list(std *hero){std *tmp,*kmp;int i=0;kmp=hero;while(hero->next){hero=hero->next;}tmp=malloc(sizeof(std));printf("Please followed by input student's ID/name/age/sex/tel:");scanf("%s%s%d%s%s",tmp->id,tmp->nm,&tmp->age,tmp->sex,tmp->tel);hero->next=tmp; tmp->next=NULL;//n++;}void info_brws(std *hero){system("clear");FILE *p;printf("****************************************************\n");STD_INFO; printf("\n");while(hero=hero->next)printf("\t%-10s\t%-15s\t%-5d\t%-5s\t%-11s\n",hero->id,hero-> nm,hero->age,hero->sex,hero->tel);}3int info_seek(std *hero,char *ID){while(hero=hero->next){if(strcmp(hero->id,ID)==0){printf("Your student infomation query:\n");STD_INFO;printf("\t%-10s\t%-15s\t%-5d\t%-5s\t%-11s\n",hero->id,hero->nm,hero->age,hero->sex,hero->tel);return 0;}}printf("No student's id infomation,Please check!\n");}int info_modify(std *hero){int i;char a[14];system("clear"); printf("Please select the items you want to modify! \n");printf("1:Modify name\t\t2:Modify age\n");printf("3:Modify sex\t\t4:Modify telephone\n");printf("0:Return to the previous menu\n");scanf("%d",&i);if(i==0) return 0;else { printf("Please enter student's id:");scanf("%s",a);while(hero=hero->next){if(strcmp(hero->id,a)==0){switch(i){case 1: printf("Please enter new name:");scanf("%s",a);strcpy(hero->nm,a);break;case 2: printf("Please enter new age:");scanf("%d",&i);(hero->age)=i;break;case 3: printf("Please enter new sex:");scanf("%s",a);strcpy(hero->sex,a);break;case 4: printf("Please enter new tel:");scanf("%s",a);strcpy(hero->tel,a);break;default :hero=NULL;break;}return 0;}4}printf("No student's id infomation,Please check!\n");}}int info_del(std *hero,char *ID){std *prv;for(prv = hero;hero=hero->next;prv = hero)if (strcmp(hero->id,ID)==0){prv->next = hero->next;free(hero);//n--;return 0;}printf("No student's id infomation,Please check!\n");}void info_save(std *hero){std *kmp;kmp=hero;FILE *p;if((p=fopen("student_info.txt","w"))==NULL){printf("open error!\n"); exit(-1);}while(hero=hero->next){fwrite(hero,sizeof(std),1,p);}fclose(p);while(kmp != NULL){std *tmp=kmp->next;free(kmp);kmp=tmp;}}void menu(){int i;char a[10];info_create();while(1)5{printf("******************WELCOME TO SYSTEM******************\n");printf("\n");HEADLINE;printf("\n");printf("1: Student infomation record\t2: Student information browse \n");printf("\n");printf("3: Student infomation query\t4: Student information modify\n");printf("\n");printf("5: Student infomation delete\t6: Change password\n");printf("\n");printf("0: Exit system\n");printf("\n");printf("\n");printf("****************************************************\n");//printf("No student information, please select 1 to join student information!\n");printf("Please enter number to select the funcation:\n");scanf("%d",&i);switch(i){case 1:insert_student_list(head);info_brws(head);printf("\n");break;case 2:info_brws(head);printf("\n");break;case 3:printf("Please enter the student's Id you want to seek: \n");scanf("%s",a);info_seek(head,a);printf("\n");break;case 4:info_modify(head);info_brws(head);printf("\n");break;case 5:printf("Please enter the student's Id you want to delete:\n");scanf("%s",a);info_del(head,a);info_brws(head);printf("\n");break;case 6:while(pwd_chng());system("clear");printf("Password changed successfully\n");break;case 0:info_save(head);exit(1);default: printf("enter error,select again!\n");break;}}}int main(){char user[11];FILE *p; char pwd[10];if((p=fopen("password.txt","r"))==NULL){printf("open error!\n"); exit(-1);}6if(fseek(p,3,0)==-1){printf("seek error!\n"); exit(-1);}fgets(pwd,9,p);fclose(p);strcpy(user,USENAME);//strcpy(pwd,PWD);printf("**********HOW ARE YOU!*********\n");printf("\n");printf("\n");while(Menu_user_name(user));printf("user name is OK!\n");printf("\n");while(Menu_user_pwd(pwd));system("clear");menu();return 0;}7。

C语言学生信息管理系统(完整版)

C语言学生信息管理系统(完整版)

#define PRINT0 printf("name:%s\nsex:%s\nage:%d\nID_card:%d\naddress:%s\n",st[i].name,st[i].sex,st[i].age,st[i] .ID_card,st[i].addr)#define PRINT1 printf("prefession:%s\nstudent_number:%d\n*****score*****\nwuli:%d\n",st[i].prefession,st[i] .student_number,st[i].score.wuli)#define PRINT2 printf("gaoshu:%d\nyingyu:%d\ntiyu:%d\naverage: %d\n",st[i].score.gaoshu,st[i].score.yingyu,st[i ].score.tiyu,st[i].score.aver)#define print1 printf("________________________________")#define N 2#include "string.h"#include "stdio.h"int sum=0;struct score{int wuli;int gaoshu;int yingyu;int tiyu;int aver;};struct message{ char name[10];int age;char sex[5];int ID_card;char addr[30];char prefession[30];int student_number;struct score score;}st[100];/*************write message*************/write_message(){ int flag;char chioce;do{system("cls");flag=2; sum++;printf("_______________________________");printf("please input student's message:\n");printf("\n");print1;printf("%dth student message:",sum);print1;printf("\nname:");scanf("%s",st[sum].name);printf("\nsex:");scanf("%s",st[sum].sex);printf("\nage:");scanf("%d",&st[sum].age);printf("\nID_card:");scanf("%d",&st[sum].ID_card);printf("\naddress:");scanf("%s",st[sum].addr);printf("\nprefession:");scanf("%s",st[sum].prefession);printf("\nschool number:");scanf("%d",&st[sum].student_number);printf("\n*****score******\n");printf("wuli:");scanf("%d",&st[sum].score.wuli);printf("\ngaoshu:");scanf("%d",&st[sum].score.gaoshu);printf("\nyingyu:");scanf("%d",&st[sum].score.yingyu);printf("\ntiyu:");scanf("%d",&st[sum].score.tiyu);printf("\naverage:");scanf("%d",&st[sum].score.aver);do{printf("****************************\n");printf("press y/Y continue:\npress n/N stop:\n");getchar();scanf("%c",&chioce);printf("****************************\n");if(chioce=='y'||chioce=='Y') {flag=1; break;}else if(chioce=='n'||chioce=='N') {flag=0; break;}else printf("input error\n");print1;printf("\n");}while(1);}while(flag==1);save_message();}/*************save message****************/save_message(){ FILE *fp;int i;if((fp=fopen("student.txt","wb"))==NULL){printf("read error \n");printf("press any key back to menu\n");getch();exit(1);}for(i=0;i<sum;i++)if(fwrite(&st[i],sizeof(struct message),1,fp)!=1){printf("write error\n");fclose(fp);}fclose(fp);printf("\n********___OK!___**********\n___press any key back___");sum=i;bioskey(0);}/***************add message*****************/add_message(){int i,j,flag; char chioce;i=0;j=sum-1;flag=0;do{ system("cls");i++; j++;print1;printf("add %dth student's meaasge\n",i);print1;printf("\nname:");scanf("%s",st[j].name);printf("\nsex:");scanf("%s",st[j].sex);printf("\nage:");scanf("%d",&st[j].age);printf("\nID_card:");scanf("%d",&st[j].ID_card);printf("\naddress:");scanf("%s",st[j].addr);printf("\nprefession:");scanf("%s",st[j].prefession);printf("\nstudent_number:");scanf("%d",&st[j].student_number);printf("\n*****score******\n");printf("wuli:");scanf("%d",&st[j].score.wuli);printf("\ngaoshu:");scanf("%d",&st[j].score.gaoshu);printf("\nyingyu:");scanf("%d",&st[j].score.yingyu);printf("\ntiyu:");scanf("%d",&st[j].score.tiyu);printf("\naverage:");scanf("%d",&st[j].score.aver);printf("\n\nweather add %dth student's message: \n",i+1);do{printf("****************************\n");printf("press y/Y continue:\npress n/N stop:\n");getchar();scanf("%c",&chioce);printf("****************************\n");if(chioce=='y'||chioce=='Y') {flag=1; break;}else if(chioce=='n'||chioce=='N') {flag=0; break;}else printf("input error\n");print1;}while(1);}while(flag==1);sum=j+1;save_message();}/**********inqiure message******/inqiure_message(){int chioce;do{system("cls");printf("**********choose 0-3**********\n\n\n");printf(" 1:name inquire\n\n\n");printf(" 2:IDcard inqiure\n\n\n");printf(" 3:student_number\n \n\n");printf(" 0:back menu\n\n\n");scanf("%d",&chioce);switch(chioce){case 1: name_inqiure();break;case 2: ID_card_inqiure();break;case 3: grade_inqiure();break;case 0:break;}}while(chioce!=0);}/**********name inqiure*********/name_inqiure(){char NAME[30];int i; int flag,k;char chioce;do{ system("cls");k=0;printf("please input the message you inqiure");printf("\nname:");scanf("%s",NAME);getchar();printf("\n");for(i=0;i<sum;i++){if(strcmp(st[i].name,NAME)==0){PRINT0;PRINT1;PRINT2;k=1;}}if(k==0) printf("without message you inqiure\n");do{ printf("****************************\n");printf("press y/Y continue:\npress n/N stop:\n");scanf("%c",&chioce); getchar();printf("****************************\n");if(chioce=='y'||chioce=='Y') {flag=1; break;}if(chioce=='n'||chioce=='N') {flag=0; break;}else printf("input error\n");print1;printf("\n");}while(1);}while(flag==1);printf("press any key return to menu");bioskey(0);}/**********IDcard inqiure*********/ID_card_inqiure(){int card;int i; int flag,k;char chioce;do{ clrscr(); k=0;printf("please input the message you inqiure");printf("\nIDcard:");scanf("%d",&card);getchar();printf("\n");for(i=0;i<sum;i++){if(st[i].ID_card==card){PRINT0;PRINT1;PRINT2;k=1;}}if(k==0) printf("without message you inqiure\n");do{ printf("****************************\n");printf("press y/Y continue:\npress n/N stop:\n");scanf("%c",&chioce); getchar();printf("****************************\n");if(chioce=='y'||chioce=='Y') {flag=1; break;}if(chioce=='n'||chioce=='N') {flag=0; break;}else printf("input error\n");print1;printf("\n");}while(1);}while(flag==1);printf("press any key return to menu");bioskey(0);}/*********grade inqiure***********/grade_inqiure(){int GRADE;int i; int flag,k;char chioce;do{ system("cls");k=0;printf("please input the message you inqiure");printf("\nstudent_number:");scanf("%d",&GRADE);getchar();printf("\n");for(i=0;i<sum;i++){if(st[i].student_number==GRADE){PRINT0;PRINT1;PRINT2;k=1;}}if(k==0) printf("without message you inqiure\n");do{ printf("****************************\n");printf("press y/Y continue:\npress n/N stop:\n");scanf("%c",&chioce); getchar();printf("****************************\n");if(chioce=='y'||chioce=='Y') {flag=1; break;}if(chioce=='n'||chioce=='N') {flag=0; break;}else printf("input error\n");print1;printf("\n");}while(1);}while(flag==1);printf("press any key return to menu");bioskey(0);}/*********change message**********/change_message(){char pre[30],chioce;int i,gra,flag,num,s;s=0;do{system("cls");printf("please input message you want to change\n ");printf("student_number:");scanf("%d",&gra); getchar();for(i=0;i<sum;i++){if(st[i].student_number==gra){PRINT0;PRINT1;PRINT2;printf("\n********input message you want to change********\n");printf("0:name***1:sex***2:age***3:ID_card***4:address***\n5:prefession***6:wuli***7:stud ent_number***8\n:gaoshu***9:yingyu***10:tiyu***11:average***________\n");printf("choose 0-11\n");scanf("%d",&num); getchar();switch(num){case 0: printf("input the name changed\n");scanf("%s",st[i].name); getchar(); break;case 1: printf("input the sex changed\n");scanf("%s",st[i].sex); getchar(); break;case 2: printf("input the age changed\n");scanf("%d",&st[i].age); getchar(); break;case 3: printf("input the ID_card changed\n");scanf("%d",&st[i].ID_card); getchar(); break;case 4: printf("input the address changed\n");scanf("%s",st[i].addr); getchar(); break;case 5: printf("input the prefession changed\n");scanf("%s",st[i].prefession); getchar(); break;case 6: printf("input the wuli_score changed\n");scanf("%d",&st[i].score.wuli); getchar(); break;case7: printf("input the student_number changed\n");scanf("%d",&st[i].student_number); getchar(); break;case 8: printf("input the gaoshu_score changed\n");scanf("%d",&st[i].score.gaoshu); getchar(); break;case 9: printf("input the yingyu_score changed\n");scanf("%d",&st[i].score.yingyu); getchar(); break;case 10: printf("input the tiyu_score changed\n");scanf("%d",&st[i].score.tiyu); getchar(); break;case 11: printf("input the average_score changed\n");scanf("%d",&st[i].score.aver); getchar(); break;default: printf("input error\n"); break;}printf("\n*********the changed message*********\n\n");PRINT0;PRINT1;PRINT2;s=1;}}if(s!=1) printf("without message you want to change\n");do{ printf("****************************\n");printf("press y/Y continue:\npress n/N stop:\n");scanf("%c",&chioce); getchar();printf("****************************\n");if(chioce=='y'||chioce=='Y') {flag=1; break;}if(chioce=='n'||chioce=='N') {flag=0; break;}else printf("input error\n");print1;printf("\n");}while(1);}while(flag==1);save_message();}/*********delete message**********/delete_message(){ int GRADE;int i,j,flag1,flag;char chioce1,chioce2;flag1=3;flag=3;do{ system("cls");printf("please input student's student_number you want to delete\n");printf("student_number:");scanf("%d",&GRADE); getchar();for(i=0;i<sum;i++)if(st[i].student_number==GRADE){do{PRINT0;PRINT1;PRINT2;printf("\n******************************\n_________________ _________________\n");printf("press y/Y deleted:\npress n/N cancel:\n");scanf("%c",&chioce1);getchar();system("cls");if(chioce1=='y'||chioce1=='Y') flag1=1;else if(chioce1=='n'||chioce1=='N') return;else {printf("***input error***\n___press any ker return___\n"); bioskey(0);}}while(flag1!=1);for(j=i;j<sum;j++){ st[j]=st[j+1];flag=2;printf("message was deleted\n");sum-=1; }}if(flag!=2) printf("without message you want to delete\n");do{printf("press y/Y continue:\npress n/N stop:\n");scanf("%c",&chioce2);printf("****************************\n");if(chioce2=='y'||chioce2=='Y') {flag=1; break;}else if(chioce2=='n'||chioce2=='N') {flag=0; break;}else {system("cls");printf("input error\n");}print1;printf("\n");}while(1);}while(flag==1);save_message();}/************insert message*************/insert_message(){ int chioce,flag,i; flag=2;do{system("cls");printf("please input the number of people you insert\n");scanf("%d",&chioce);if(chioce>=sum){printf("xin xi pai zai zui hou ");chioce=sum;}for(i=sum;i>chioce;i--) st[i]=st[i-1];printf("\nplease input message you insert");printf("\nname:");scanf("%s",st[i].name);printf("\nsex:");scanf("%s",st[i].sex);printf("\nage:");scanf("%d",&st[i].age);printf("\nID_card:");scanf("%d",&st[i].ID_card);printf("\naddress:");scanf("%s",st[i].addr);printf("\nprefession:");scanf("%s",st[i].prefession);printf("\ngrade:");scanf("%d",&st[i].student_number);printf("\n*****score******\n");printf("wuli:");scanf("%d",&st[i].score.wuli);printf("\ngaoshu:");scanf("%d",&st[i].score.gaoshu);printf("\nyingyu:");scanf("%d",&st[i].score.yingyu);printf("\ntiyu:");scanf("%d",&st[i].score.tiyu);printf("\naverage:");scanf("%d",&st[i].score.aver);sum+=1;do{printf("****************************\n");printf("press y/Y continue:\npress n/N stop:\n");getchar();scanf("%c",&chioce);printf("****************************\n");if(chioce=='y'||chioce=='Y') {flag=1; break;}else if(chioce=='n'||chioce=='N') {flag=0; break;}else printf("input error\n");print1;printf("\n");}while(1);}while(flag==1);save_message();}/*********school_number_order***********/grade_order(){int i,j;system("cls");if(sum==0) {printf("**********no message**********\n____press any key return____");getch();return;}for(i=0;i<sum;i++)for(j=i+1;j<sum;j++)if(st[i].student_number>st[j].student_number){ st[sum+1]=st[i];st[i]=st[j];st[j]=st[sum+1];}printf("grade order from min to max\n");for(i=0;i<sum;i++){ print1;printf("\n%dth student's mssage\n",i+1);print1;printf("\n");PRINT0;PRINT1;PRINT2;getch();system("cls");}print1;printf("\ntotle num :%d\npress any key return to menu\n",sum);bioskey(0);}/***********wuli score order***************/wuli_order(){int i,j;system("cls");if(sum==0) {printf("**********no message**********\n____press any key return____");getch();return;}for(i=0;i<sum;i++)for(j=i+1;j<sum;j++)if(st[i].score.wuli>st[j].score.wuli){ st[sum+1]=st[i];st[i]=st[j];st[j]=st[sum+1];}printf("wuli score order from min to max\n");for(i=0;i<sum;i++){print1;printf("\n%dth student's mssage\n",i+1);print1;printf("\n");PRINT0;PRINT1;PRINT2;getch();system("cls");}print1;printf("\ntotle num :%d\npress any key return to menu\n",sum);print1;bioskey(0);}/***********gaoshu score order***************/gaoshu_order(){int i,j;system("cls");if(sum==0) {printf("**********no message**********\n____press any key return____");getch();return;}for(i=0;i<sum;i++)for(j=i+1;j<sum;j++)if(st[i].score.gaoshu>st[j].score.gaoshu){ st[sum+1]=st[i];st[i]=st[j];st[j]=st[sum+1];}printf("gaoshu score order from min to max\n");for(i=0;i<sum;i++){print1;printf("\n%dth student's mssage\n",i+1);print1;printf("\n");PRINT0;PRINT2;getch();system("cls");}print1;printf("\ntotle num :%d\npress any key return to menu\n",sum);print1;bioskey(0);}/***********yingyu score order***************/yingyu_order(){int i,j;system("cls");if(sum==0) {printf("**********no message**********\n____press any key return____");getch();return;}for(i=0;i<sum;i++)for(j=i+1;j<sum;j++)if(st[i].score.yingyu>st[j].score.yingyu){ st[sum+1]=st[i];st[i]=st[j];st[j]=st[sum+1];}printf("yingyu score order from min to max\n");for(i=0;i<sum;i++){print1;printf("\n%dth student's mssage\n",i+1);print1;printf("\n");PRINT0;PRINT1;PRINT2;getch();system("cls");}print1;printf("\ntotle num :%d\npress any key return to menu\n",sum);print1;bioskey(0);}/***********tiyu score order***************/tiyu_order(){int i,j;system("cls");if(sum==0) {printf("**********no message**********\n____press any key return____");getch();return;}for(i=0;i<sum;i++)for(j=i+1;j<sum;j++)if(st[i].score.tiyu>st[j].score.tiyu){ st[sum+1]=st[i];st[i]=st[j];st[j]=st[sum+1];}printf("yitu order from min to max\n");for(i=0;i<sum;i++){print1;printf("\n%dth student's mssage\n",i+1);print1;printf("\n");PRINT0;PRINT1;PRINT2;getch();system("cls");}print1;printf("\ntotle num :%d\npress any key return to menu\n",sum);print1;bioskey(0);}/***********average score order***************/average_order(){int i,j;system("cls");if(sum==0) {printf("**********no message**********\n____press any key return____");getch();return;}for(i=0;i<sum;i++)for(j=i+1;j<sum;j++)if(st[i].score.wuli>st[j].score.wuli){ st[sum+1]=st[i];st[i]=st[j];st[j]=st[sum+1];}printf("average score order from min to max\n");for(i=0;i<sum;i++){print1;printf("\n%dth student's mssage\n",i+1);print1;printf("\n");PRINT0;PRINT1;PRINT2;getch();system("cls");}print1;printf("\ntotle num :%d\npress any key return to menu\n",sum);print1;bioskey(0);}/********order message****************/order_message(){int chioce;do{system("cls");printf("**********choose 0-6**********\n\n");printf(" 1:grade order\n\n");printf(" 2:wuli score order\n\n");printf(" 3:gaoshu score order\n \n");printf(" 4:ying yu score order\n\n");printf(" 5:tiyu score order\n\n");printf(" 6:average score order\n\n");printf(" 0:back menu\n\n");scanf("%d",&chioce);switch(chioce){case 1: grade_order();break;case 2: wuli_order();break;case 3: gaoshu_order();break;case 4: yingyu_order();break;case 5: tiyu_order();break;case 6: average_order();break;case 0:break;}}while(chioce!=0);}/**********answer secretory***********/mima_message(){int flag;char answer[10];char secret[10]="abcd";flag=2;do{system("cls");printf("\n______________________mi ma wei 'abcd'________________\n\n");printf("______________________qing shu ru mi ma:");scanf("%s",answer);getchar();if(strcmp(secret,answer)==0){flag=1;printf("\n\n =====throngh=====\n\n\n");printf("____________________press any key into next:\n");bioskey(0);}else{flag=0;printf("______________________input error:\n");printf("______________________press any key to return:\n");bioskey(0);}}while(flag!=1);}/*********read message****************/read_message(){int i;system("cls");if(sum<=0){ printf("without message\n");getch();return;}for(i=0;i<sum;i++){system("cls");print1;printf("\n%dth student's mssage\n",i+1);print1;printf("\n");PRINT0;PRINT1;PRINT2;printf("\n********press any key -show the next one********\n ");getch();}printf("________________totle num :%d________________\n",sum); printf("_____________press any key return______________\n"); bioskey(0);}/*************************************/main(){int chioce,flag;mima_message();do{system("cls");chioce=9;printf("**********************************************\n");printf("****welcome to system of managing students****\n");printf("**********************************************\n\n");printf("-------------------choose 0-8-----------------\n\n");printf(" 1:write message\n\n");printf(" 2:add message\n\n");printf(" 3:inqiure name\n\n");printf(" 4:change message\n\n");printf(" 5:insert message\n\n");printf(" 6:order message\n\n");printf(" 7:delete message\n\n");printf(" 8:read messaeg\n\n");printf(" 0:***exit***\n\n");scanf("%d",&chioce);getchar();switch(chioce){case 1: write_message();break;case 2: add_message();break;case 3: inqiure_message();break;case 4: change_message();break;case 5: insert_message();break;case 6: order_message();break;case 7: delete_message();break;case 8: read_message();break;case 0: printf("___sure press y/Y:___\n\n___no sure press n/N:___");scanf("%c",&chioce);getchar();if(chioce=='y'||chioce=='Y') flag=0;else flag=1;break;default : printf("\n ___input error___\n\n");printf("***press any key to go on***\n");getch();break;}}while(flag!=0);save_message();system("cls");printf("\n\n___message was saved___\n\n\n*****file name is student.txt*****\n");bioskey(0);}。

C语言实现简单学生管理系统

C语言实现简单学生管理系统

C语⾔实现简单学⽣管理系统花了⼀个⽉的时间,学习了链表,⽂件,多⽂件编程,然后就开始写学⽣管理系统,⽐较简单的那种,实现了增,添,改,查,多种排序,输⼊的时候的限定,成绩分析的功能。

遇到的问题很多,也尝试解决了,下⾯写点写学⽣管理系统的要注意的地⽅,希望对别⼈有帮助。

1.⼀定要先写好主函数的框架,然后再往上⾯加东西,这样说有点笼统,我把我的主函数在下⾯,可以借鉴下哈。

我的主函数是⼀个while(1)的⽆限循环,⾥⾯⼀个switch选择,利⽤⼀个菜单函数,让其返回值当成switch选择的值,然后进⼊不同的功能主函数,其他功能主函数和主函数的套路⼀样。

int main(int argc, char *argv[]) {login(); //这是个的介绍⾃⼰的函数Sleep(1000);//睡眠函数while(1){switch(menu())//主菜单选择函数{case 1:system("CLS");//清屏函数printf("\t\t________学⽣成绩添加_______");head=luru();cr(head);int choice;scanf("%d",&choice);if(choice==0)break;case 2:system("CLS");//printf("\t\t_________学⽣成绩排序和删除___\d");paxu();int end;scanf("%d",&end);if(end==0)break;case 3:system("CLS");printf("\t\t__________成绩的修改__________");xg();int a;scanf("%d",&a);if(a==0)break;case 4:system("CLS");printf("\t\t___________学⽣信息分析_______");fx();int b;scanf("%d",&b);if(b==0)break;case 5:system("CLS");printf("\t\t___________谢谢使⽤哈_______\n");Sleep(1000);exit(-1);break;}system("PAUSE");}return 0;}⼀次,就判定它是否符号规范,如果不规范,就重新输⼊。

新学生信息管理系统C语言课程设计说明书

新学生信息管理系统C语言课程设计说明书

*******************实践教学*******************理工大学软件学院计算机应用根底课程设计题目:学生信息管理系统专业班级:软件1班姓名:xx学号:xx指导教师:xx成绩:_______________方案书此次我们设计的是?学生信息管理系统?,在程序中运行学生信息创立模块,列出模块,删除模块,查找模块,保存模块等,在程序中用到了选择结构,循环结构,结构体,数组,文件操作,自定义函数等。

关键词:结构体;文件操作;数组;循环结构;选择结构;自定义函数方案书1需求分析········································ (1)2总体设计········································ (1)程序的总体设计································· (1)数据结构···································· (2)3详细设计········································ (4)主控模块设计··································· (4)列出模块···································· (5)4主要函数功能描述 (6)主函数main() (6)列出函数p rint_list() (7)5测试与调试 (8)6个人设计小结与心得体会 (11)参考文献 (11)附件1程序源代码 (11)方案书需求分析问题根据需求,该系统所应包含的信息有以下一些:息学生的根本信:学号、姓名、性别、QQ、根据需求,该系统所应实现的功能有以下一些:各种根本数据的录入。

c语言学生管理

c语言学生管理

c语言学生管理介绍C语言是一种非常重要的编程语言,广泛应用于软件开发领域。

学生管理系统是一个常见的应用场景,它能够帮助学校、教师和学生进行信息管理和交互。

本文将探讨如何使用C语言来实现一个简单的学生管理系统。

学生数据结构在开始实现学生管理系统之前,我们首先需要定义一个数据结构来存储学生的信息。

一个学生通常包含姓名、学号、年级、班级等基本信息。

在C语言中,我们可以使用结构体来表示学生的数据结构。

以下是一个示例:struct Student {char name[50];int student_id;int grade;int class;};添加学生函数原型在学生管理系统中,我们需要实现一个函数来添加新学生的信息。

该函数需要接受学生数据结构作为参数,并将学生信息保存到系统中。

函数原型如下:void add_student(struct Student *student);实现代码void add_student(struct Student *student) {printf("请输入学生姓名:");scanf("%s", student->name);printf("请输入学生学号:");scanf("%d", &(student->student_id));printf("请输入学生年级:");scanf("%d", &(student->grade));printf("请输入学生班级:");scanf("%d", &(student->class));}查询学生函数原型学生管理系统还需要实现一个函数来查询学生的信息。

该函数需要接受学号作为参数,并返回相应学生的信息。

函数原型如下:struct Student *find_student(int student_id);实现代码struct Student *find_student(int student_id) {// 遍历学生列表,查找相应学生for (int i = 0; i < student_count; i++) {if (students[i].student_id == student_id) {return &students[i];}}// 如果没有找到相应学生,返回NULLreturn NULL;}列出所有学生函数原型学生管理系统还需要实现一个函数来列出所有学生的信息。

c语言设计一个学生管理系统

c语言设计一个学生管理系统

C语言设计一个学生管理系统引言学生管理系统是一个常见的软件应用程序,它可用于学校、大学或其他教育机构对学生信息进行管理和维护。

在这个文档中,我们将探讨如何使用C语言设计和实现一个简单的学生管理系统。

该系统将包括学生的基本信息(如姓名、年龄、性别等)和成绩信息(如数学、英语、物理等科目的成绩)。

设计思路为了设计一个功能完善的学生管理系统,我们需要考虑以下几个方面: 1. 学生基本信息的录入和显示:系统应该允许用户录入学生的基本信息,并能够方便地查看学生的基本信息。

2. 学生成绩的录入和显示:系统应该允许用户录入学生的成绩信息,并能够方便地查看学生的成绩信息。

3. 学生信息的修改和删除:系统应该允许用户对学生的基本信息和成绩信息进行修改和删除操作。

4. 学生信息的查询和排序:系统应该允许用户通过关键字查询学生信息,并能够根据一定规则对学生信息进行排序。

实现步骤下面是一个简单的实现步骤,以帮助我们开始设计和实现学生管理系统:步骤一:定义学生结构体首先,我们需要定义一个学生的结构体,以便存储学生的基本信息和成绩信息。

结构体的定义可以包括学生的姓名、年龄、性别等基本信息,以及学生的成绩信息。

struct student {char name[50];int age;char gender[10];float math_score;float english_score;float physics_score;};步骤二:实现学生信息的录入和显示功能接下来,我们可以实现学生信息的录入和显示功能。

用户可以通过键盘输入学生的基本信息和成绩信息,然后系统将这些信息存储起来,并能够方便地显示出来。

步骤三:实现学生信息的修改和删除功能为了方便用户对学生信息进行修改和删除操作,我们可以添加对应的功能。

用户可以选择要修改或删除的学生,然后通过键盘输入新的信息或执行删除操作。

步骤四:实现学生信息的查询和排序功能最后,我们可以实现学生信息的查询和排序功能。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

新生入学管理系统c语言
新生入学管理系统是一种为学校提供管理新生入学过程的软件系统。

它可以提高学校的管理效率,减少手工操作的工作量,从而为学
校提供更好的服务。

该系统包含了多个模块,如学生信息录入模块、选择专业模块、
调剂模块、退学模块等。

学生信息录入模块可以让学校工作人员通过
计算机输入学生的基本人口信息、高考成绩以及志愿信息,系统会自
动对学生进行匹配,判断是否符合入学条件,从而为学校的招生工作
提供有力的支持。

选择专业模块可以让学生在系统中查看各专业的招生情况、学科
设置、历年录取分数线、就业情况等,从而能够更加全面和深入地了
解专业信息,更好地选择适合自己的专业。

调剂模块则为学生提供更多的选择,为学校提供了更大的空间。

如果学生在第一次志愿匹配中未能被录取,他们可以在系统中选择调剂,选择自己感兴趣的专业,看是否符合录取条件,从而得到更好的
录取机会。

退学模块则是纠正错误的最后一环。

如果学生因一些原因需要退学,他们可以在系统中提交申请,然后等待学校审批。

在这个过程中,系统会记录并处理所有的数据,将学生的信息从系统中删除,并通知
相关部门进行后续处理。

新生入学管理系统是一款非常实用的软件,不仅可为学生提供便利,同时也为学校提供了更多的管理手段和服务能力。

学校应该优先选择这样一套软件,来提升学校整体的管理水平和服务质量。

相关文档
最新文档