很多朋友对于毕业设计说明书大概怎么写和今日运程设计说明书怎么写不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!
本文目录
毕业设计说明书大概怎么写什么是程序设计说明书毕业设计说明书大概怎么写写作主要有以下几个要点:
1、社会大环境如何【可利用相关数据平台的数据做支撑】
2、行业环境如何【可以利用行业报告做支撑】
3、目前需要解决的问题【自己论述】
这些内容首先需要使用比较宽泛的语言进行论述,然后利用大环境的数据做支撑,行业环境写作也是这样,先论述行业环境情况,然后引用行业数据报告作支撑,解决问题也就是其应用现实生活那些方面,还有在理论方面具有哪些指导意义。
选题的意义与价值
1、理论方面
一般有以下几种情况:
(1)就哲学的高度而言,需要研究的价值意义;
(2)就专业或学科角度而言,需要研究的价值意义;
(3)就某个理论角度而言,需要研究的价值意义;
2、实践方面
主要包括:
(1)就实际的工作实践活动未来发展趋势、前景而言,需要研究的价值意义;
(2)就实际的现在工作的实践活动而言,需要研究的价值意义;
(3)就实际的现在工作的实践活动改进而言,需要研究的价值意义。
什么是程序设计说明书开发人员:黄涛学号:2004551425计算机3班
开发日期:2006年2月22日
版本:————
程序功能:建立一个简单的学生管理系统,存储的学生信息至少包括:班级,学号,姓名,各个科目的成绩.能够完成的功能至少有:输入,查询,修改,删除学生信息,计算学生的平均成绩,名次,按某个科目的成绩排序输出.注意:只能采用文件形式管理,不得采用现成的数据库管理.
开发环境:程序在Visual c++ 6.0下开发,编译工具为Vc 6.0,操作系统为Windows XP.
数据结构和算法:本程序包含数个函数,且用链表存储信息,每个节点包含一个学生的信息.
本程序中有两种结构体:
typedef struct student{ typedef struct score{
char name[MAX+1];/*学生姓名*/ char name[MAX+1];/*学生姓名*/
int num;/*学生学号*/ int aver;/*学生成绩*/
char class[MAX+1];/*班级*/ struct score*next;/*指向后继节点*/
int Chinese;/*语文成绩*/}Sco,*SCO;
int English;/*英语成绩*/
int math;/*数学成绩*/
int computer;/*计算机成绩*/
struct student*next;/*指向后继节点*/
}Stu,*STU;
程序流程图如下:
*****主程序流程图*****
主要函数功能说明
函数原型:STU insert();功能:插入学生信息
入口参数:无出口参数:无返回值:无
函数原型:STU xiugai();功能:修改学生信息
入口参数:无出口参数:无返回值:无
函数原型:STU shanchu();功能:删除学生信息
入口参数:无出口参数:无返回值:无
函数原型:STU find();功能:查找学生信息
入口参数:无出口参数:无返回值:无
函数原型:int xianshi();功能:显示文件内容
入口参数:无出口参数:无返回值:无
函数原型:int eaverage();功能:计算学生名次
入口参数:无出口参数:无返回值:无
函数原型:int chinese();功能:语文成绩
入口参数:无出口参数:无返回值:无
函数原型:int english();功能:英语成绩
入口参数:无出口参数:无返回值:无
函数原型:int math();功能:数学成绩
入口参数:无出口参数:无返回值:无
函数原型:int computer();功能:计算机成绩
入口参数:无出口参数:无返回值:无
函数原型:void fresh();功能:清屏
入口参数:无出口参数:无返回值:无
——————————说明书结束——————————————————
——————源程序————————
#include
#include
#include
#include
#include
#define LEN sizeof(struct student)
#define NEM sizeof(struct score)
#define MAX 8
typedef struct student{/*学生信息节点*/
int num;
char class[MAX+1];
char name[MAX+1];
int chinese;
int english;
int math;
int computer;
struct student*next;
}Stu,*STU;
typedef struct score{
char name[MAX+1];
float aver;
struct score*next;
}Sco,*SCO;
struct score stud[1000];
FILE*fp;
void print()/*清屏*/
{ system("cls");
printf("\t\t\t--学生成绩管理系统--\n");
printf("creat(建立文件模型)\t");
printf("insert(插入学生信息)\t");
printf("xiugai(修改学生信息)\t\n");
printf("find(查找学生信息)\t");
printf("fresh(清屏)\t");
printf("shanchu(删除学生信息)\t\n");
printf("xianshi(显示文件内容)\t");
printf("eaverage(计算学生平均成绩和名次)\t\n");
printf("chinese(语文课程排序)\t");
printf("english(英语课程排序)\t");
printf("math(数学课程排序)\t");
printf("computer(计算机课程排序)\t");
printf("quit(退出)\t\n");
}
void cin(STU p1)
{printf("请输入姓名:");
scanf("%s",p1->name);
printf("学号:");
scanf("%d",&p1->num);
printf("班级:");
scanf("%s",p1->class);
printf("请输入成绩:\n");
printf("语文:");
scanf("%d",&p1->chinese);
printf("英语:");
scanf("%d",&p1->english);
printf("数学:");
scanf("%d",&p1->math);
printf("计算机:");
scanf("%d",&p1->computer);
}
STU creat(void)/*创建函数模型*/
{ STU head,p1,p2;
char ch;
int i=1,k=0;
p1=p2=(STU)malloc(LEN);
while(i)
{
k++;
if(k==1)
head=p1;
else
{p2->next=p1;
p2=p1;}
printf("Do you Want to Continue yes or no");
ch=getchar();
ch=getchar();
if(ch=='n'||ch=='N')
{ i=0;
p1->next=NULL;}
else
{p1=(STU)malloc(LEN);
cin(p1);}
}
printf("信息输入完毕.");
Indat(head);
}
Indat(STU p){/*把链表中的信息存入到文件*/
if((fp=fopen("stulist","wb"))==NULL)
{printf("can not open file!\n");
return;
}
while(p!=NULL)
if(fwrite(p,LEN,1,fp)!=1)
{printf("file write error\n");
break;}
else
p=p->next;
printf("写入完毕!");
fclose(fp);
}
STU Outdat()/*把文件中的信息放入到链表*/
{ STU head,p1,p2,p4;
while((fp=fopen("stulist","rb"))==NULL);
printf("cannot open infile!\n");
p4=p2=p1=head=(STU)malloc(LEN);
while(1)
{ if(fread(p1,LEN,1,fp)!=1)
{printf("读出完毕!");
p4->next=NULL;
free(p1);
fclose(fp);
return(head);
}
p1=(STU)malloc(LEN);
p2->next=p1;
p4=p2;
p2=p1;
}
}
find(){/*查找学生的信息*/
char name[10];
int b=0;
STU p3;
p3=Outdat();
printf("请输入您要查询信息的用户名:\n");
scanf("%s",name);
while(p3)
if(strcmp(name,p3->name)!=0)
p3=p3->next;
else
{ printf("这是您要查询的信息!\n");
printf("%s\t%d\t%s",p3->name,p3->num,p3->class);
printf("语文:");printf("%d\t",p3->chinese);
printf("英语:");printf("%d\t",p3->english);
printf("数学:");printf("%d\t",p3->math);
printf("计算机:");printf("%d\t",p3->computer);
b=1;printf("信息输出完毕!\n");
break;
}
if(b==0)
printf("对不起!没有与您要查的相关信息!");
}
STU insert()/*插入学生信息*/
{ STU p1,p2,p3,head;
int i=1;
char ch;
p3=Outdat();
head=p3;
p1=(STU)malloc(LEN);
printf("请输入要插入的学生信息!\n");
cin(p1);
while(i)
{ if(p3->next==NULL)
{ p1->next=NULL;
p3->next=p1;
}
else
{p1->next=p3->next;
p3->next=p1;}
printf("Do you Want to Continue yes or no");
ch=getchar();
ch=getchar();
if(ch=='n'||ch=='N')
i=0;
else
{ p1=(STU)malloc(LEN);
printf("请输入要插入的学生信息!\n");
cin(p1);
}
Indat(p3);}
return(head);
}
STU xiugai()/*修改学生信息*/
{ char name[10];
STU head,p3;
int b=0;
p3=Outdat();
head=p3;
printf("请输入您要修改信息的用户名:\n");
scanf("%s",name);
while(p3)
if(strcmp(name,p3->name)!=0)
p3=p3->next;
else
{printf("这是您要修改的信息!\n");
printf("%s\t%d\t%s",p3->name,p3->num,p3->class);
printf("语文:");
printf("%d\t",p3->chinese);
printf("英语:");
printf("%d\t",p3->english);
printf("数学:");
printf("%d\t",p3->math);
printf("计算机:");
printf("%d\t",p3->computer);
b=1;
printf("信息输出完毕!\n");
printf("请输入您的新信息!\n");
cin(p3);
Indat(head);
return;
}
if(b==0)
printf("对不起!没有您要查的相关信息!");
}
STU shanchu()/*删除学生信息*/
{char name[10];
STU head,p1,p3;
char ch;
int b=0;
p3=Outdat();
head=p3;
printf("请输入您要查询信息的用户名:\n");
scanf("%s",name);
while(p3)
if(strcmp(name,p3->name)!=0)
{p1=p3;
p3=p3->next;
}
else
{ printf("这是您要删除的信息!\n");
printf("%s\t%d\t%s",p3->name,p3->num,p3->class);
printf("语文:");
printf("%d\t",p3->chinese);
printf("英语:");
printf("%d\t",p3->english);
printf("数学:");
printf("%d\t",p3->math);
printf("计算机:");
printf("%d\t",p3->computer);
b=1;
printf("信息输出完毕!\n");
printf("您确实想删除以上信息吗!yes or no\n");
ch=getchar();
ch=getchar();
if(ch=='y'||ch=='Y')
{ p1->next=p3->next;
free(p3);
printf("信息删除完毕!\n");
Indat(head);
return;
}
}
if(b==0)
printf("对不起!没有与您要查的相关信息!");
}
xianshi()/*显示文件中的所有信息*/
{ STU p;
p=Outdat();
while(p!=NULL)
{printf("%s\t%d\t%s",p->name,p->num,p->class);
printf("语文:");
printf("%d\t",p->chinese);
printf("英语:");
printf("%d\t",p->english);
printf("数学:");
printf("%d\t",p->math);
printf("计算机:");
printf("%d\t\n",p->computer);
p=p->next;
}
printf("这是所有信息!");
}
eaverage()/*计算学生的平均成绩和名次*/
{STU p3,head;
float a;
char ch;
int i, b=0,j=1;
char name[10];
SCO L,L1,L2;
p3=Outdat();
head=p3=p3->next;
L=L1=(SCO)malloc(NEM);
while(p3)//复制链表;
{ L2=L1;
a=(p3->chinese+p3->english+p3->math+p3->computer)/4;
L2->aver=a;
strcpy(L2->name,p3->name);
L1=(SCO)malloc(NEM);
L2->next=L1;
p3=p3->next;
}
L2->next=NULL;
free(L1);//while
while(j)
{L1=L2=L;
i=1;
printf("请输入您要查的用户名!\n");
scanf("%s",name);
while(L1)
if(strcmp(name,L1->name)!=0)
L1=L1->next;
else
{printf("用户已被找到!\n");
b=1;
while(L2)
if(L1->aver>L2->aver||L1->aver==L2->aver)
L2=L2->next;
else
{ i++;
L2=L2->next;}
printf("此学生的成绩情况是:\n");
printf("%s\t平均分是%f",L1->name,L1->aver);
printf("第%d名!",i);
break;
}
if(b==0) printf("对不起!没有与您要查的相关信息!");
printf("您是否还想继续 yes or no!");
ch=getchar();
ch=getchar();
if(ch=='n'||ch=='N')
j=0;
}
return;
}
chinese()/*语文成绩排名*/
{STU p3,head;
SCO L,L1,L2;
int k,max,j;
p3=Outdat();
p3=p3->next;
head=p3;
max=0;
j=0;
L=L1=(SCO)malloc(NEM);
while(p3)
{ L2=L1;
L2->aver=p3->chinese;
strcpy(L2->name,p3->name);
L1=(SCO)malloc(NEM);
L2->next=L1;
p3=p3->next;
}
L2->next=NULL;
free(L1);
while(L)
{ p3=head;
max++;
while(p3)
if(L->aver>=p3->chinese)
p3=p3->next;
else
{j++;
p3=p3->next;
}
strcpy(stud[j].name,L->name);
stud[j].aver=L->aver;
L=L->next;
}
printf("语文成绩情况:\n");
for(k=0;knext;
head=p3;
max=0;
j=0;
L=L1=(SCO)malloc(NEM);
while(p3)
{ L2=L1;
L2->aver=p3->english;
strcpy(L2->name,p3->name);
L1=(SCO)malloc(NEM);
L2->next=L1;
p3=p3->next;
}
L2->next=NULL;
free(L1);
while(L)
{ p3=head;
max++;
while(p3)
if(L->aver>=p3->english)
p3=p3->next;
else
{j++;
p3=p3->next;
}
strcpy(stud[j].name,L->name);
stud[j].aver=L->aver;
L=L->next;
}
printf("英语成绩情况:\n");
for(k=0;knext;
head=p3;
max=0;
j=0;
L=L1=(SCO)malloc(NEM);
while(p3)
{ L2=L1;
L2->aver=p3->math;
strcpy(L2->name,p3->name);
L1=(SCO)malloc(NEM);
L2->next=L1;
p3=p3->next;
}
L2->next=NULL;
free(L1);
while(L)
{ p3=head;
max++;
while(p3)
if(L->aver>=p3->math)
p3=p3->next;
else
{j++;
p3=p3->next;
}
strcpy(stud[j].name,L->name);
stud[j].aver=L->aver;
L=L->next;
}
printf("数学成绩情况:\n");
for(k=0;knext;
head=p3;
max=0;
j=0;
L=L1=(SCO)malloc(NEM);
while(p3)
{ L2=L1;
L2->aver=p3->computer;
strcpy(L2->name,p3->name);
L1=(SCO)malloc(NEM);
L2->next=L1;
p3=p3->next;
}
L2->next=NULL;
free(L1);
while(L)
{ p3=head;
max++;
while(p3)
if(L->aver>=p3->computer)
p3=p3->next;
else
{j++;
p3=p3->next;
}
strcpy(stud[j].name,L->name);
stud[j].aver=L->aver;
L=L->next;
}
printf("计算机成绩情况:\n");
for(k=0;k printf("%s%f\n",stud[k].name,stud[k].aver);
printf("成绩输出完毕!");
}
void main()/*主函数*/
{ STU p;
int j;
print();
while(1)
{
printf("Enter choice:");
scanf("%d",&j);
if(j13)
{
printf("Enter num from 1 to 13:\n");
exit(1);
}
switch(j)
{case 1:
creat();
break;
case 2:
insert();
break;
case 3:
xiugai();
break;
case 4:
find();
break;
case 5:
print();
break;
case 6:
shanchu();
break;
case 7:
xianshi();
break;
case 8:
eaverage();
break;
case 9:
chinese();
break;
case 10:
english();
break;
case 11:
math();
break;
case 12:
computer();
break;
case 13:
exit(1);
break;
}
scanf("%d",&j);
}
}
————————————用户使用手册——————————
程序功能:建立一个简单的学生管理系统,存储的学生信息至少包括:班级,学号,姓名,各个科目的成绩.能够完成的功能至少有:输入,查询,修改,删除学生信息,计算学生的
平均成绩,名次,按某个科目的成绩排序输出.
完成日期:2006年2月22日
版本:———
运行环境:Windows XP
版权人:黄涛学号:2004551425计算机3班
硬件要求:486以上机器,32M以上RAM,32M硬盘空间
本人保留所有版权.
使用方法:打开文件目录下的可执行文件即可运行程序,程序运行时,屏幕上会显示13个备选的键,每个键都可以完成一个操作,如:插入,删除,修改,学生信息,计算成绩等等······
注意:在使用本程序之前请认真阅读手册.
***********************************************
关于本次毕业设计说明书大概怎么写和今日运程设计说明书怎么写的问题分享到这里就结束了,如果解决了您的问题,我们非常高兴。