#include<stdio.h> #include<stdlib.h> #define N 100 void menu(void); void fun(void(*p)(void)); void fun1(void); void fun2(void); void fun3(void); void fun4(void); struct student{ int id; char name[10]; char gender[5]; float score; }; int count = 0; struct student stu[N]; int main(void) { int input_num; struct student stu[N]; while(1){ menu(); printf("请输入:"); scanf("%d",&input_num); if (1 == input_num || 2 == input_num || 3 == input_num || 4 == input_num || 5 == input_num) switch (input_num) { case 1: fun(fun1); break; case 2: fun(fun2); break; case 3: fun(fun3); break; // case 4: // fun(fun4); case 5: printf("感谢使用\n"); exit(0); break; } else printf("输入错误\n"); } return 0; } void fun1(void) { // char s[5]; printf("请输入学生信息(学号、姓名、性别、成绩\n"); //while(scanf("%s",s) != EOF){ scanf("%d%s%s%f",&stu[count].id,stu[count].name,stu[count].gender,&stu[count].score); count++; // } } void fun2(void) { int i; for(i=0;i<count;i++) printf("学号:%d 姓名:%s 性别:%s 成绩:%f\n",stu[i].id, stu[i].name, stu[i].gender, stu[i].score); } void fun3(void) { int seek_num,i; printf("请输入学号\n"); scanf("%d",&seek_num); for(i=0;i<count;i++) { if(stu[i].id == seek_num) printf("本次搜索学生的信息如下\n学号:%d 姓名:%s 性别:%s 成绩:%f\n",stu[i].id, stu[i].name, stu[i].gender, stu[i].score); } } void fun4(void) { int del_id,i=0; struct student * del_p = stu; struct student * new_p = stu; printf("请输入要删除的学生的学号"); scanf("%d",&del_id); while (i < count) { if(del_p->id == del_id) { del_p++; i++; } new_p->id = del_p->id; new_p->name = del_p->name; new_p->gender = del_p->gender; new_p->score = del_p->score; i++; del_p++; new_p++; } } void fun(void(*p)(void)) { p(); } void menu(void) { printf("|====================================|\n"); printf("| 学 生 管 理 系 统 |\n"); printf("|====================================|\n"); printf("| 1.录入学生信息 |\n"); printf("| 2.查询已录入学生信息 |\n"); printf("| 3.搜索学生信息 |\n"); printf("| 4.删除学生信息 |\n"); printf("| 5.退出程序 |\n"); printf("|====================================|\n"); }里面的name怎么改
时间: 2023-08-11 13:05:28 浏览: 229
SeqList.h #include <stdio.h> //包含标准输入输出流的头文件 #include <assert.h
可以使用strcpy函数将一个字符串复制到另一个字符串数组中。例如,在fun4函数中,将下面这句:
```
new_p->name = del_p->name;
```
改为:
```
strcpy(new_p->name, del_p->name);
```
这样就可以将del_p指向的结构体中的name数组的值复制到new_p指向的结构体中的name数组中。需要注意的是,strcpy函数需要包含头文件string.h。
阅读全文