当前位置:
文档之家› 西安邮电大学软件课程设计报告
西安邮电大学软件课程设计报告
printf("2----修改学生院系\n");
printf("3----修改学生专业\n");
printf("4----修改学生性别\n");
printf("5----修改学生年龄\n");
printf("0----结束此次修改\n");
fflush(stdin);
scanf("%d",&y);
system("cls");
system("cls");
printf("请输入要删除的学生人数\n");fflush(stdin);
scanf("%d",&x);
if(x>sum)
{printf("删除人数超出已存人数范围");
printf("\n按任意键返回主菜单!");
fflush(stdin);
getchar();
system("cls");
struct stude_nt
{int num;
char name[10];
char yuanxi[15];
char zhuanye[15];
char xingbie[10];
int nianling;
} stdi[MAX],t;
int sum;
/*保存测试*/
void save_message(int sum)
scanf("%d",&n);
if(n==1)
{while(i<sum)
{stdi[i]=stdi[i+1];
i++;
}
sum--;
}
}
}
printf("\n按任意键返回主菜单!");
fflush(stdin);
getchar();
system("cls");
return;
}
void revise_message()
if(del_me[m]==stdi[i].num)
break;
if(i==sum)
{printf("修改的第%d个学生不存在\n",m+1);
if(m+1<x)
{printf("\n按任意键继续!");
fflush(stdin);
getchar();
fflush(stdin);
}
}
if(i!=sum)
printf("\n按任意键返回主菜单!");
fflush(stdin);
getchar(); system("cls");
return 0;
}
while(feof(fp)!=1)
{
fread(&stdi[i],sizeof(struct stude_nt),1,fp);
if(stdi[i].num==0) break;
8能够对年龄进行升序和降序排序;
9用文件的形式将录入的数据进行存储,并从其中读取数据。
三、需求分析
根据题目要求,学生信息要从文本文件中存取,所以本程序要提供读写文件,显示,统计,查寻,修改记录,保存文件等操作,此外,还要提供键盘式选择菜单实现功能。
四、概要设计
分析整个系统,根据上面的需求分析,可以将这个系统的设计分为如下几大模块:读取数据,输出数据,添加数据,输入数据、修改数据、查询数据、删除数据、统计数据,排序数据,保存数据。
getchar(); system("cls");
return;
}
read_message() /*读取信息*/
{
FILE *fp;
int i=0;
system("cls"ቤተ መጻሕፍቲ ባይዱ;
if((fp=fopen("1.txt","rb"))==NULL)
{
printf("\n\n*****暂时还没有任何信息*****\n");
五、详细设计及运行结果
输出模块
查询模块
修改模块
六、调试情况,设计技巧及体会
1、本次设计选取内容比较简单;结构比较明晰,涉及内容比较全面,程序采用比较基础的C语言,整个程序中午够多复杂函数。
2、本次设计让我体会到:牢固的程序设计基础知识是设计成功的前提,正确的学习态度是设计成功的基础,知识与实践的有效结合是设计成功的保障;认真学,认真练是程序课程的核心。
fclose(fp);
}
/*输入模块*/
void input_message()
{
int i=0,s=MAX;
system("cls");
printf("\n\n录入学生信息\n");
printf("当输入0结束输入");
do
{
printf("\n第%d个学生信息",i+1);
printf("\n学号");
else i++;
} sum=i;
fclose(fp);
return sum;
}
/*输出模块*/
void output_message()
{
int i;
system("cls");
for(i=0; i<sum;i++)
{printf("第%d学生信息\n",i+1);
PRI;
}
printf("\n --%d学生读取信息完毕!--\n",i);
getchar();
system("cls");
}
}
sum=i;
printf("\n按任意键返回主菜单!");
fflush(stdin);
getchar();
system("cls");
return;
}
void del_message()/*删除信息*/
{int i,x,m,n,del_me[MAX];
{int y,i,x,m,n,del_me[MAX];
system("cls");
printf("请输入要修改的学生人数\n");fflush(stdin);
scanf("%d",&x);
if(x>sum)
{printf("要修改人数超出已存人数范围");
printf("\n按任意键返回主菜单!");
switch(y)
{
case 1:printf("\n姓名");
fflush(stdin);
scanf("%s",stdi[i].name);
break;
case 2:printf("\n院系");
fflush(stdin);
scanf("%s",stdi[i].yuanxi);
break;
case 3:printf("\n专业");
软件课程设计
报 告 书
院系名称
:
电子工程学院
学生姓名
:
李群
专业名称
:
光信息
班级
:
1103
学号
:
05113096
时间
:
2012年4月11日至2012年4月20日
实验题目
一、实验目的
让学生综合应用所学的计算机基础知识和所掌握的程序设计语言(C语言),自行设计并实现一个较为完整的小型管理信息系统或小型应用系统的设计与开发。其主要目的是使学生通过系统分析、系统设计、编程调试,写实验报告等环节,初步掌握软件系统设计的方法和步骤,灵活运用程序设计语言进行软件开发的能力,提高分析问题和解决问题的能力,提高程序设计水平。要求编程时采用结构体、指针、文件等复杂数据结构存储组织数据。
printf("\n专业");
fflush(stdin);
scanf("%s",stdi[i].zhuanye);
printf("\n性别");
fflush(stdin);
scanf("%s",stdi[i].xingbie);
printf("\n年龄");
fflush(stdin);
scanf("%d",&stdi[i].nianling);
printf("\n按任意键返回主菜单!");
fflush(stdin);
getchar();
system("cls");
return;
}
void insert_message() /*添加信息*/
{ int i,x;
system("cls");
printf("请输入要添加的学生人数\n");
fflush(stdin);
{
FILE *fp;
int i;
if((fp=fopen("1.txt","wb"))==NULL)
{
printf("读文件错误!\n");
return;
}
for(i=0;i<sum;i++)