小白求大神指点,这个代码为什么实现不了功能?
我需要打一个可以实现对学生信息录入,浏览,查找,删除的代码,case3里面的函数chazhao是我之前定义好的,为什么调用在case3里面就实现不了功能啊 ( ⊙ o ⊙ ),求大神指点#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
#include <stdio.h>
#define N 20struct student
#define SIZE 4
int num,age,i;
char name,sex;
struct student
{
char name[10];//名字
int num;//学号
char sex[2];//性别
int age;//年龄
}student[SIZE];//定义全局结构体数据student
void save()
{
FILE*fp;
int i;
if((fp=fopen("stu.dat","wb"))==NULL)
{
printf("cannot open file\n");
return;
}
for(i=0;i<SIZE;i++)
if(fwrite(&student[i],sizeof(struct student),1,fp)!=1)
printf("file write error\n");
fclose(fp);
}
void luru()
{
printf("%d",sizeof(wchar_t));
for(i=0;i<SIZE;i++)
{
printf("请输入第%d个学生的信息:名字,学号,性别和年龄:\n",i+1);
scanf("%s%d%s%d",student[i].name,&student[i].num,student[i].sex,&student[i].age);
save();
}
}
void liulan()
{
FILE*fp;
if((fp=fopen("stu.dat","rb"))==NULL)//打开输入文件stu.dat
{
printf("connot open file\n");
exit(0);
}
printf("四个学生的信息如下:\n");
for(i=0;i<SIZE;i++)
{
fread(&student[i],sizeof(struct student),1,fp);//从fp指向的文件读入一组数据
printf("姓名:%s\t学号:%d\t性别:%s\t年龄:%d\n",student[i].name,student[i].num,student[i].sex,student[i].age);
}
fclose(fp);//关闭文件“stu_list”
}
void chazhao()
{char s[15];
int i=0;
printf("请输入想查询的学号:");
scanf("\t%s",s);
while(strcmp(student[i].num,s)!=0&&i<SIZE)i++; //比较per[i].name与所输入学号是否相同//
if(i==SIZE)
{
printf("\t通讯录中没有此人!\n");
system("pause");
return;
}
printf("\t学号: %s\n",student[i].num);
printf("\t姓名: %s\n",student[i].name);
printf("\t性别:%s\n",student[i].sex);
printf("\t年龄: %d\n",student[i].age);
}
int main()
{
int i;
int a;
printf("※※※※※主※※※※※菜※※※※※单※※※※※\n");
printf("※1、录入学生信息2、浏览学生信息※\n");
printf("※3、查找学生信息4、删除学生信息※\n");
printf("※5、退出系统※\n");
printf("请输入编号(1-5):\n");
scanf("%d",&a);
switch(a)
{
case 1:luru();break;
case 2:liulan();break;
case 3:chazhao();break;
default:printf("输入错误!\n");
return;}}