#include <stdio.h>
#include <string.h>
#include <conio.h>
#include <stdlib.h>
struct course
{
char subject[20];
double score;
int sid;
}c[100];
int couse_num;
}s[100];
int counts=0;
int countc=0;
int flag1;
int ID1;
void searchscore(); //查询学生成绩 1
void inputscore(); //输入学生成绩 2
void deletestu(); //删除学生信息 3
void modifyscore();//修改学生成绩 4
void madechoice();//选择
void read(); //读取
int main()
{
read();
madechoice();
return 0;
}
void searchscore() //查询学生成绩
{
if(counts==0)
{
printf("目前学生人数为零,请先输入学生信息!\n");
return;
}
if(flag1==1) printf("请输入查询的学生学号:");
int ID,flag=0;
if(flag1==1) scanf("%d",&ID);
for(int i=0;i<counts;i++)
{
if(ID==s[i].id||ID1==s[i].id)
{
if(s[i].couse_num==0)
{
printf("该学生还未选课!\n");
return ;
}
if(flag1==1)
{
printf("已查找到学号为%d的学生!\n ",ID);
}
printf("学号\t姓名\t");
for(int j=0;j<s[i].couse_num;j++) printf("课程\t成绩\t");
printf("\n");
printf("%d\t%s\t",s[i].id,s[i].name);
for(int j=0;j<s[i].couse_num;j++)
{
printf("%s\t",s[i].sc[j].subject);
if(s[i].sc[j].score==0) printf("未考试\t");
else printf("%.2lf\t",s[i].sc[j].score);
}
printf("\n");
flag=1;
}
}
if(flag==0&&flag1==1)
{
printf("未查找到学号为%d的学生!\n ",ID);
}
}
void inputscore() //输入学生成绩
{
FILE *fp;
if(counts==0)
{
printf("目前学生人数为零,请先输入学生信息!\n");
return ;
}
int ID;
int i,j;
printf("输入学生的学号:");
scanf("%d",&ID);
for(i=0;i<counts;i++)
{
if(ID==s[i].id)
{
if(s[i].couse_num==0)
printf("该学生还未选课!\n");
else
{
for(j=0;j<s[i].couse_num;j++)
{
if(s[i].sc[j].score==0)
{
printf("输入%s的成绩:",s[i].sc[j].subject);
scanf("%lf",&s[i].sc[j].score );
}
}
printf("输入学生成绩成功!\n");
}
break;
}
}
if(i==counts)
printf("该学生不存在!\n");
if((fp=fopen("student.txt","w"))==NULL)
{
printf("找不到此文件!\n");
什么错误?
代码不全?