📄 find.c
字号:
#include <stdio.h>
#include "h.h"
void find()
{
flag=0,flag2=1;
printf("\n\tChoose you want from 1 to 4:");
scanf("%d",&flag);
if(flag==1) /*按学号查找*//*要定义float flag;并在二级选择菜单中是输入 实数 */
{
if((fp=fopen("student.dat","rb"))==0)
{
printf("cannot find!");
exit(0);
}
for(i=0;fread(&st[i],LEN,1,fp)!=0;i++);
n=i;
printf("\tplease input the student's number:");
scanf("%s",&s.num);
printf("\nnumber name sex score ave ");
for(i=0;i<n;i++)
if(strcmp(s.num,st[i].num)==0)
{
printf("\n%-10s%-10s%10s",st[i].num,st[i].name,st[i].sex);
for(j=0;j<K;j++)
printf("%8d",st[i].score[j]);
printf("%8.2f",st[i].ave);
flag2=0;
}
if(flag2!=0)printf("\nCannot find the student number!\n");
fclose(fp);
}
if(flag==2)/*按姓名查找*/
{
flag2=1;
fp=fopen("student.dat","rb");
for(i=0;fread(&st[i],LEN,1,fp)!=0;i++);
n=i;
printf("\tplease input name:");
scanf("%s",&s.name);
for(i=0;i<n;i++)
{
if(strcmp(s.name,st[i].name)==0)
{
printf("\n%-10s%-10s%10s",st[i].num,st[i].name,st[i].sex);
for(j=0;j<K;j++)
printf("%8d",st[i].score[j]);
printf("%8.2f",st[i].ave);
flag2=0;
}
}
if(flag2!=0)printf("\nCannot find the student name!\n");
fclose(fp);
}
if(flag==3)/*按ave查找*/
{
flag2=0;
fp=fopen("student.dat","rb");
for(i=0;fread(&st[i],LEN,1,fp)!=0;i++);
n=i;
printf("\tplease input avescore:");
scanf("%f",&s.ave);
for(i=0;i<n;i++)
{
if(s.ave>st[i].ave)/*条件*/
{
flag2=1;
printf("\n%-10s%-10s%10s",st[i].num,st[i].name,st[i].sex);
for(j=0;j<K;j++)
printf("%8d",st[i].score[j]);
printf("%8.2f",st[i].ave);
}
}
if(flag2!=1)printf("Nobody under this average score!\n");
}
if(flag==4)
{
main();
}
else find();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -