下面是我打的代码,没打完,没检查出错误,却不能像自己想的那样运行,求大佬改正
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
void zcd();
//主菜单子函数声明
int input();
//输入子函数声明
void output();
//显示子函数声明
void add();
void printInfo(struct student *ptr);
struct student
//学生信息结构体
{
char number[12];
char name[20];
char sex[20];
int age;
char addr[50];
char phone_number[11];
}stu[200];
void main()
{
int choose;
for(;;)
{
zcd();
printf("请输入您的选择:");
scanf("%d",&choose);
switch(choose)
{
case 1:
input();
break;
case 2:
output();
break;
case 3:
case 4:
add();
break;
case 5:;
case 6:;
case 7:;
case 8:;
}
}
}
void zcd()
//主菜单子函数
{
printf("\n");
printf("\n");
printf("\n");
printf("******************************************\n");
printf("▓
学生通讯录管理系统
▓\n");
printf("▓--------------------------------------▓\n");
printf("▓
●[1]创建通讯录信息
▓\n");
printf("▓
●[2]显示通讯录信息
▓\n");
printf("▓
●[3]查询通讯录信息
▓\n");
printf("▓
●[4]添加通讯录信息
▓\n");
printf("▓
●[5]修改通讯录信息
▓\n");
printf("▓
●[6]删除通讯录信息
▓\n");
printf("▓
●[7]统计总人数
▓\n");
printf("▓
●[8]按班别分类
▓\n");
printf("******************************************\n");
printf("\n");
printf("\n");
printf("\n");
}
int input()
//创建输入子函数
{
FILE *fp;
int i,n;
int count=0;
printf("请输入要录入的人数:");
scanf("%d",&n);
if((fp=fopen("student.txt","wb+"))==NULL)
{
printf("error!\n");
exit(0);
}
for(i=0;i<n;i++)
{
printf("请输入第%d个学生的信息:\n",i+1);
printf("学号:");
scanf("%s",&stu[i].number);
printf("姓名:");
scanf("%s",&stu[i].name);
printf("性别:");
scanf("%s",&stu[i].sex);
printf("年龄:");
scanf("%d",&stu[i].age);
printf("宿舍:");
scanf("%s",&stu[i].addr);
printf("电话号码:");
scanf("%s",&stu[i].phone_number);
count++;
if(fwrite(&stu[i],sizeof(struct student),1,fp)!=1)
printf("error!\n");
}
fclose(fp);
return(count);
printf("保存成功!\n");
}
void output()//显示子函数
{
FILE *fp;
int i=0;
printf("学号
|
姓名 |性别 |年龄|宿舍
| 手机号码
\n");
fp=fopen("student.txt","rb+");
while(fread(&stu[0],sizeof(struct student),1,fp)!=0)
{
printf("%s
%s
%s
%d
%s
%s\n",stu[i].number,stu[i].name,stu[i].sex,stu[i].age,stu[i].addr,stu[i].phone_number);
i++;
}
fclose(fp);
}
void add()
{
FILE *fp;
int x;
x=input();
printf("学号:");
scanf("%s",stu[x].number);
printf("姓名:");
scanf("%s",stu[x].name);
printf("性别:");
scanf("%s",stu[x].sex);
printf("年龄:");
scanf("%d",&stu[x].age);
printf("宿舍:");
scanf("%s",stu[x].addr);
printf("电话号码:");
scanf("%s",stu[x].phone_number);
printf("创建成功!\n");
if(fwrite(&stu[x],sizeof(struct student),1,fp)!=1)
{
printf("error!\n");
}
}