文档介绍:C语言程序设计
C语言程序设计
课程设计报告
专 业: 统计学
班 级: 088131
int Del(FILE *fp,char *no);//函数声明
void Mod(FILE *fp,char *p);//函数声明
void Zap(FILE *fp);//函数声明
struct student Input(void);
long num=0,iItem;
int res,K;
STUDENT temp;
char strNo[10];
FILE *fp=fopen("","r+"); /*判断该文件是否存在*/
if(fp==NULL)
{
fp=fopen("","w+");
}
else
{
fseek(fp,0L,SEEK_END);
num=ftell(fp)/sizeof(STUDENT);/*统计多少个字节,除以一个学生需要的字节得到学生的数*/
rewind(fp);
}
while((iItem=menu(num))!=5)
{
switch(iItem)
{
case 1: temp=Input();
Add(fp,temp);
num++;
printf("学生信息已添加,按任意键返回...");
break;
case 2: Show(fp);
printf("按任意键返回...");
break;
case 3: if(num>0)
{
printf("输入要删除的学号:");
scanf("%s",strNo);
res=Del(fp,strNo);
if(res)
{printf("学号[%s]记录已删除,按任意键返回...",strNo);Zap(fp);num--;}
else
printf("没有学号[%s]记录,按任意键返回...",strNo);
}
else
printf("目前没有记录,无法删除!按任意键返回...");
break;
case 4: if(num>0)
{
printf("选择查询方式\n");
printf("1--基本情况查询\n");
printf("2--成绩查询\n");
scanf("%d",&K);
switch(K)
{
case 1:
printf("输入要查找的学号或姓名:");
scanf("%s",strNo);
printf("\t姓名\t学号\t性别\t年龄\n");break;
case 2:
printf("输入要查找的学号或姓名:");
scanf("%s",strNo);
printf("\t姓名\t学号\t性别\t年龄\t英语\t高数\tc语言\t平均分\n");break;
default :printf("输入有误!");
}
res=Find(fp,strNo,K);
if(!res)
printf("没有此学生记录,按任意键返回...");
else
printf("按任意键返回...");
}
else
printf("目前没有记录,无法删除!按任意键返回...");
break;
default: printf("命令错误,按任意键返回...");break;
}
getch();
}
if(fp) fclose(fp);
return 0;
}
2菜单:先定义空函数
#include ""
#include ""
#include ""
//函数声明
//下面这些函数可以分别对应不同的功能模块,但一个功能模