c语言程序设计学生信息管理系统

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

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 格式控制符。在使用printf函数输出字符串类型的数据时,应该将字符串类型的参数放在双引号内。

接下来,我们需要实现一个学生信息的管理系统。这个系统可以支持添加学生信息、删除学生信息、修改学生信息以及查找学生信息的功能。代码如下:

```

void add_stu(STUDENT *stu,int n){

printf("Student %d:\n",n+1);

input_stu(stu+n);

printf("\n\n");

}

void del_stu(STUDENT *stu,int *pn){

char name[20];

printf("Input Name to delete:");

scanf("%s",name);

int i;

for(i=0;i<*pn;i++){

if(strcmp(name,stu[i].name)==0){ int j;

for(j=i;j<*pn-1;j++){

stu[j]=stu[j+1];

}

(*pn)--;

break;

}

}

}

void update_stu(STUDENT *stu,int n){ printf("Student %d:\n",n+1);

output_stu(stu+n);

input_stu(stu+n);

printf("\n\n");

}

void search_stu(STUDENT *stu,int n){ char name[20];

printf("Input Name to search:");

scanf("%s",name);

int i;

for(i=0;i

if(strcmp(name,stu[i].name)==0){ output_stu(stu+i);

break;

}

}

if(i==n){

printf("Not Found!\n");

}

}

```

在这里,我们使用了循环和条件语句来实现相应的功能。注意,

在删除学生信息时,我们使用了strcmp函数来比较学生姓名是否相同。此外,在删除学生信息时,我们还需要移动后面的学生信息,以实现

删除的效果。

最后,我们需要实现一个主函数,以便我们可以运行整个学生信

息管理系统。代码如下:

```

int main(){

int n=0;

STUDENT stu[MAX_STU];

int opt=1;

while(opt){

printf("--------------------------------------------

\n");

printf("0.Exit\n");

printf("1.Add Student\n");

printf("2.Delete Student by Name\n");

printf("3.Update Student by Name\n");

printf("4.Search Student by Name\n");

printf("--------------------------------------------

\n");

printf("Input your option: ");

scanf("%d",&opt);

switch(opt){

case 0:

相关文档
最新文档