C语言上机实习
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#include"math.h"
#include "Conio.h"
# include"stdio.h"
#define M 38
struct student
{
long num;
char name[20];
float score[5];
float aver;
int row;
int m1;
int m2;
}stu[M];
struct chengji
{int num;
char name[20];
float fen;
}course[5];
struct
{int P;
int Q;
int R;
int S;
int L;}count[5];
/*struct
{char a[20];
char b[20];
char c[20];
char d[20];
char e[20];
}bh[5];*/
main() /*主菜单*/
{ char ch1;
do{
printf("\n\n\n\n\n\n\n\n\n");
printf(" ************** C 语程序设计上机实习****************\n");
printf(" ---------------------------------------------------\n\n");
printf(" 1 学生成绩管理\n\n");
printf(" 2 解线性方程组\n\n");
printf(" 3 动画\n\n");
printf(" 4 退出\n\n");
printf(" 输入选择序号\n");
while( (ch1=getchar(), ch1!='1'&& ch1!='2' &&ch1!='3'&&ch1!='4' )) ;
switch(ch1)
{case '1' : section1(); break;
case '2' : section2(); break;
case '3' : section3(); break;
case '4' : exit(0); }
}while(1);
}
section1() /*第1个2级菜单*/
{char ch21;
do{ printf("\n\n\n\n\n\n\n\n\n\n");
printf(" ************学生成绩管理系统****************\n");
printf(" ---------------------------------------------------\n\n");
printf(" 1. 读入原始数据并显示 2. 计算平均分及名次\n\n");
printf(" 3. 计算分数段人数 4. 输出课程平均分\n\n");
printf(" 5. 统计不及格情况 6. 输出优秀学生\n\n");
printf(" 7. 作分布图8. 返回上级菜单\n\n");
printf(" 输入选择序号\n");
while((ch21=getchar(),ch21!='1'&&ch21!='2'&&ch21!='3'&&ch21!='4'&&ch21!='5'&&ch21!='6' &&ch21!='7'&&ch21!='8')) ;
switch(ch21)
{case '1' : function1_1(); break;
case '2' : function1_2(); break;
case '3' : function1_3(); break;
case '4' : function1_4(); break;
case '5' : function1_5(); break;
case '6' : function1_6(); break;
case '7' : function1_7(); break;
case '8' : return(0);}
}while(1);
}
section2() /*第2个2级菜单*/
{ char ch22;
do{ printf("\n\n\n\n\n\n\n\n\n\n");
printf(" ***************** 解线性方程组****************\n");
printf(" -------------------------------------------------\n");
printf(" 1. 解方程组\n\n");
printf(" 2. 返回上级菜单\n\n");
printf(" 输入选择序号\n");
while( (ch22=getchar(), ch22!='1'&& ch22!='2')) ;
switch(ch22)
{case '1' : function2_1(); break;
case '2' : return(0);}
}while(1);
}
section3() /*第3个2级菜单*/
{ char ch23;
do{ printf("\n\n\n\n\n\n\n\n\n\n");
printf(" ***************** 作动画****************\n");
printf(" -------------------------------------------------\n");
printf(" 1. 作动画\n\n");
printf(" 2. 返回上级菜单\n\n");
printf(" 输入选择序号\n");
while (ch23=getchar(), ch23!='1'&& ch23!='2') ;
switch(ch23)
{case '1' : function3_1(); break;
case '2' : return(0);}
}while(1);
}
function1_1()
{
int i,j;
FILE *fp,*fp1;
char str[100];
if((fp=fopen("D:\\成绩表.txt","r"))==NULL)
{printf("cannot open this file\n");
exit(0);
}
if((fp1=fopen("D:\\学生成绩表.txt","w"))==NULL)
{printf("cannot open this file\n");
exit(0);
}
fgets(str,100,fp);
for(i=0;i {fscanf(fp,"%ld%s",&stu[i].num,stu[i].name); for(j=0;j<5;j++) fscanf(fp,"%f",&stu[i].score[j]); } printf("学号姓名英语数学大学物理机械制图C程序设计");