|
|
|
@ -0,0 +1,67 @@
|
|
|
|
|
void search()//课程信息查询
|
|
|
|
|
{
|
|
|
|
|
int mai_n();
|
|
|
|
|
FILE *fp;
|
|
|
|
|
struct course c;
|
|
|
|
|
int xuefen,time;
|
|
|
|
|
char kind[10];
|
|
|
|
|
int a,b;
|
|
|
|
|
printf("1.按学分查询./ /2.按课程性质查询./ /3.按开课学期查询\n");
|
|
|
|
|
printf("请选择查询方式,输入选项数字: ");
|
|
|
|
|
scanf("%d",&b);
|
|
|
|
|
if(b==1)
|
|
|
|
|
{
|
|
|
|
|
printf("\n 请输入要查询的学分:\n");
|
|
|
|
|
scanf("%d",&xuefen);
|
|
|
|
|
if((fp=fopen("course.txt","r"))==NULL)
|
|
|
|
|
{
|
|
|
|
|
printf("\nCannot open course!\n");
|
|
|
|
|
}
|
|
|
|
|
printf("课程编号 课程名称 课程性质 总学时 授课学时 实验或上机学时 学分 开课学期:\n");
|
|
|
|
|
for(;!feof(fp);)//文件到结尾前运行
|
|
|
|
|
{fscanf(fp,"%d%s%s%d%d%d%d%d\n",&c.num,&c.name,&c.kind,&c.time,&c.ttime,&c.etime,&c.mark,&c.term);
|
|
|
|
|
if(c.mark==xuefen)
|
|
|
|
|
printf("%5d%12s%9s%9d%9d%11d%11d%11d\n",c.num,c.name,c.kind,c.time,c.ttime,c.etime,c.mark,c.term);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if(b==2){
|
|
|
|
|
printf("\n 请输入要查询的课程性质:\n");
|
|
|
|
|
scanf("%s",&kind);
|
|
|
|
|
if((fp=fopen("course.txt","r"))==NULL)
|
|
|
|
|
{
|
|
|
|
|
printf("\nCannot open course!\n");
|
|
|
|
|
}
|
|
|
|
|
printf("课程编号 课程名称 课程性质 总学时 授课学时 实验或上机学时 学分 开课学期:\n");
|
|
|
|
|
for(;!feof(fp);)
|
|
|
|
|
{
|
|
|
|
|
fscanf(fp,"%d%s%s%d%d%d%d%d\n",&c.num,&c.name,&c.kind,&c.time,&c.ttime,&c.etime,&c.mark,&c.term);
|
|
|
|
|
if(strcmp(c.kind,kind)==0)
|
|
|
|
|
printf("%5d%12s%9s%9d%9d%11d%11d%11d\n",c.num,c.name,c.kind,c.time,c.ttime,c.etime,c.mark,c.term);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if(b==3){
|
|
|
|
|
printf("\n 请输入要查询的课程开课学期;\n");
|
|
|
|
|
scanf("%d",&time);
|
|
|
|
|
if((fp=fopen("course.txt","r"))==NULL)
|
|
|
|
|
{
|
|
|
|
|
printf("\nCannot open course!\n");
|
|
|
|
|
}
|
|
|
|
|
printf("课程编号 课程名称 课程性质 总学时 授课学时 实验或上机学时 学分 开课学期:\n");
|
|
|
|
|
for(;!feof(fp);)
|
|
|
|
|
{fscanf(fp,"%d%s%s%d%d%d%d%d\n",&c.num,&c.name,&c.kind,&c.time,&c.ttime,&c.etime,&c.mark,&c.term);
|
|
|
|
|
if(c.term==time)
|
|
|
|
|
printf("%5d%12s%9s%9d%9d%11d%11d%11d\n",c.num,c.name,c.kind,c.time,c.ttime,c.etime,c.mark,c.term);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else{
|
|
|
|
|
printf("输入错误!");
|
|
|
|
|
exit(1);
|
|
|
|
|
}
|
|
|
|
|
fclose(fp);
|
|
|
|
|
printf("\n1-返回菜单;2-退出系统\n");
|
|
|
|
|
scanf("%d",&a);system("cls");//清屏
|
|
|
|
|
if(a==1)
|
|
|
|
|
mai_n();
|
|
|
|
|
else
|
|
|
|
|
exit(0);
|
|
|
|
|
}
|