找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2394|回复: 1
打印 上一主题 下一主题
收起左侧

C程序设计课程实践:学生成绩管理系统

[复制链接]
跳转到指定楼层
楼主
ID:268159 发表于 2017-12-28 09:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
北京信息科技大学
课程设计报告

课程名称    C程序设计课程实践
    学生考试成绩统计分析
指导教师                   
设计起止日期
设计地点                           


          信息管理学院      
      __信息管理与信息系统_
姓名/学号                      


  
1.  课程实践目的:
  通过本实践使学生对函数、数组、结构体、指针有更深入的了解,在实际应用中学会使用C语言编写程序解决具体问题。
  
  
  2. 课程实践内容:
  编写一程序,能实现对某班学生三门课程考试成绩(高数、英语、体育)的统计与分析,具体功能如下:
  
a)         能进行学生信息(学号、姓名)和三门课程成绩的录入;
  
b)         能计算出总成绩的最高分、最低分、平均分;
  
c)         能统计总成绩在各分值段的成绩比例及及格率,如下表所示:
  
   
 
   
   
 
   
   
270~300
   
   
 
   
   
240~269
   
   
 
   
   
 
   
   
 
   
   
210~239
   
   
 
   
   
180~209
   
   
 
   
   
 
   
   
150~179
   
   
 
   
   
149以下
   
   
及格率
   
   
成绩
   
   
 
   
   
7
   
   
   
   
 
   
   
16
   
   
   
   
 
   
   
 
   
   
 
   
   
16
   
   
   
   
 
   
   
19
   
   
   
   
 
   
   
 
   
   
12
   
   
   
   
 
   
   
12
   
   
   
   
70.73%
   
   
分布
   
   
 
   
   
8.54%
   
   
19.51%
   
   
19.51%
   
   
23.17%
   
   
14.63%
   
   
14.63%
   























  
  d)       可按总评成绩排序(降序),并在屏幕显示;
  
e)         能按学号或姓名查询某个学生的成绩信息;
  要求:学生个人信息和成绩用结构体数组(学号、姓名、高数、英语、体育、总成绩)表示;每个功能都独立编写一个函数实现。
  
  
  3. 实践步骤:
  
  4. 实践总结:
  
  
  
  
  
  
  
  

  1.   
  2. #include "conio.h"
  3. #include "stdio.h"
  4. #include "string.h"
  5. struct stu{
  6. char name[20];
  7. char xh[20];
  8. float score[20],zf,pj;}student[60];
  9. int clen=0;
  10. char course[10][20];
  11. FILE *fp;
  12. FILE *f;
  13. int len;
  14. main()
  15. {int i=0,j;
  16. textcolor(YELLOW);
  17. textbackground(10);
  18. zhuzuo();
  19. clrscr();
  20. if((fp=fopen("course.txt","r"))!=NULL)
  21.   {while(!feof(fp))
  22.    fgets(course[clen++],20,fp);
  23. for(i=0;course[i][0]!='\0';i++)
  24. {for(j=0;course[i][j]!='\0';j++)
  25. if(course[i][j]=='\n')course[i][j]='\0';}     }
  26. else {printf(" 文件不存在,请创建course.txt文件!\n");
  27.       printf("注意事项请参看readme.txt\n");
  28.       delay(100000);
  29.       delay(100000);
  30.       exit(0);}
  31. chushihua();
  32. clen--;
  33. if(len>0)len--;
  34. while(1)
  35. {clrscr();
  36.    printf("            --------成绩管理系统--------\n");
  37.    printf("            -----1.输入--\n");
  38.    printf("            -----2.输出--\n");
  39.    printf("            -----3.查询--\n");
  40.    printf("            -----4.求平均--\n");
  41.    printf("            -----5.求总成绩--\n");
  42.    printf("            -----6.排序--\n");
  43.    printf("            -----7.删除--\n");
  44.    printf("            -----8.插入--\n");
  45.    printf("            -----9.修改--\n");
  46.    printf("            -----0.退出--\n");
  47.    printf("            -----------------------------\n");
  48. switch(getche())
  49. {case '1':shuru();break;
  50. case '2':shuchu();break;
  51. case '3':chaxun();break;
  52. case '4':qiuping();break;
  53. case '5':qiuzong();break;
  54. case '6':paixu();break;
  55. case '7':shanchu();break;
  56. case '8':charu();break;
  57. case '9':xiugai();break;
  58. case '0':chuwen();
  59.          printf("\n\n       正在退出.....");delay(10000);
  60.          exit(0);break;
  61. default:printf("输入错误!\n");
  62.         printf("请重选按键选择菜单.\n按任意键返回!\n");
  63.         getche();
  64.         continue;
  65. }
  66. }
  67. fcloseall();}

  68. shuru()
  69. {
  70. while(1)
  71. {clrscr();
  72.   printf("--1.从屏幕输入--\n");
  73.   printf("--0.返回上一级菜单--\n");
  74.   switch(getche())
  75. {case '1':pinru();break;
  76.   case '0':return;
  77.   default:printf("输入错误!\n");
  78.         printf("请重选按键选择菜单.\n按任意键返回!\n");
  79.         getche();
  80.         continue;}
  81.       
  82. }}
  83. pinru()
  84. {char yn;
  85. int i,j;char name1[20],xh1[20];float p[15];
  86. while(1){
  87. q:clrscr();
  88. fflush(stdin);
  89. printf("请输入姓名:");
  90. gets(name1);
  91. printf("请输入学号:");
  92. gets(xh1);
  93. fflush(stdin);
  94. for(i=0;i<clen;i++)
  95. {printf("请输入%s成绩:",course[i]);
  96. scanf("%f",&p[i]);fflush(stdin);}
  97. if(name1[0]=='\0'||name1[0]=='\n'||xh1[0]=='\0'||xh1[0]=='\n')
  98. {printf("\n\n        输入错误,请按任意键重输!\n");getch();goto q;}
  99. printf("\n\n             确认要读入这些数据吗(Y/N)");
  100. yn=getche();
  101. if(yn=='y'||yn=='Y')
  102. {strcpy(student[len].name,name1);
  103. strcpy(student[len].xh,xh1);
  104. for(i=clen-1;i>=0;i--)
  105. student[len].score[i]=p[i];
  106. len++;}
  107. printf("\n\n             还继续吗?(Y/N)");
  108. yn=getche();
  109. if(!(yn=='y'||yn=='Y'))
  110. break;}}


  111. shuchu()
  112. {
  113. while(1)
  114. {clrscr();
  115. printf("--1.输出到屏幕--\n");
  116. printf("--2.输出到文件--\n");
  117. printf("--0.返回上一级菜单--\n");
  118.   switch(getche())
  119. {case '1':chupin();break;
  120.   case '2':chuwen();break;
  121. case '0':return;
  122.   default:printf("输入错误!\n");
  123.         printf("请重选按键选择菜单.\n按任意键返回!\n");
  124.         getche();
  125.         continue;}
  126. }
  127. }
  128. chupin()
  129. {char yn;
  130. int i,j,k=0,m=1;
  131. while(1)
  132. {clrscr();
  133. if(len==0)
  134. {printf("\n\n        无记录!\n");
  135. printf("按任意键返回...\n");
  136. getch();
  137. break;}
  138. a: printf("\nNO.  姓名              学号              ");
  139. for(i=0;i<clen;i++)
  140. printf("%s    ",course[i]);
  141. printf("总成绩    平均分    \n");
  142. for(;k<len;k++)
  143. {printf("%-4d%-18s%-18s",m++,student[k].name,student[k].xh);
  144.   for(j=0;j<clen;j++)
  145.    printf("%-10.2f",student[k].score[j]);
  146.    printf("%-10.2f%-10.2f",student[k].zf,student[k].pj);
  147.    printf("\n\n");
  148. if(k%6==0&&k!=0){
  149. printf("按任意键继续....");
  150. getch();
  151. clrscr();
  152. k++;
  153. goto a;}}
  154. printf("\n\n\n           还想在浏览一遍吗(Y/N)");
  155. yn=getche();
  156. if(!(yn=='y'||yn=='Y'))
  157. break;
  158. else {i=k=0;m=1;}
  159.   }
  160. }
  161. chuwen()
  162. {char yn;
  163. int k;
  164. f=fopen("chengji.dat","wb+");
  165. for(k=0;k<len;k++)
  166. fwrite(&student[k],sizeof(struct stu),1,f);
  167. printf("\n\n\n           按任意键结束 ......");
  168. getch();
  169. fclose(f);}

  170. chaxun()
  171. {
  172. while(1)
  173. {clrscr();
  174. printf("--1.按学号查询--\n");
  175. printf("--2.按姓名查询--\n");
  176. printf("--3.按成绩查询--\n");
  177. printf("--0.返回上一级菜单--\n");
  178.   switch(getche())
  179. {case '1':chaxue();break;
  180.   case '2':chaxing(); break;
  181.   case '3':chacheng(); break;
  182.   case '0':return;
  183.   default:printf("输入错误!\n");
  184.         printf("请重选按键选择菜单.\n按任意键返回!\n");
  185.         getche();
  186.         continue;}
  187. }}

  188. chaxue()
  189. {
  190. while(1){clrscr();
  191. printf("          ----1.精确查询----\n");
  192. printf("          ----2.模糊查询----\n");
  193. printf("          ----0.返回上一级菜单----\n");
  194. switch(getch())
  195. {case '1':jingxue();break;
  196.   case '2':moxue();break;
  197.   case '0':return;}}}

  198. jingxue()
  199. {int i,p=0;
  200. char xh1[20],yn;
  201. while(1)
  202. {clrscr();
  203. printf("\n       请输入要查询的学号:");
  204. gets(xh1);
  205. fflush(stdin);
  206. clrscr();
  207. printf("  查询结果如下:\n");
  208. for(i=0;i<len;i++)
  209. if(strcmp(xh1,student[i].xh)==0)
  210. {p++; chashu(i,p); }
  211. if(p==0) printf("\n\n     无此记录!\n");
  212. printf("\n\n        还继续吗(Y/N).....");
  213. yn=getch();
  214. if(!(yn=='y'||yn=='Y'))
  215. break;}}


  216. moxue()
  217. {int i,j=0,k,p=0,flag,m=0;
  218. char xh1[20],yn;
  219. while(1)
  220. {clrscr();
  221. printf("\n       请输入要查询的学号或学号的子串:");
  222. gets(xh1);
  223. fflush(stdin);
  224. clrscr();
  225. printf("  查询结果如下:\n");
  226. for(i=0;i<len;i++)
  227. {m=0;flag=0;
  228. while(student[i].xh[m]!='\0')
  229.   {j=m;k=0;
  230.    while(student[i].xh[j]==xh1[k])
  231.     {j++;k++;
  232.      if(xh1[k]=='\0') {flag=1;break;}}
  233.      if(flag) {p++; chashu(i,p);break; }
  234.       m++;}}
  235.     if(p==0) printf("\n\n     无此记录!\n");
  236. printf("\n\n        还继续吗(Y/N).....");
  237. yn=getch();
  238. if(!(yn=='y'||yn=='Y'))
  239. break;}}

  240. chaxing()
  241. {
  242. while(1){clrscr();
  243. printf("          ----1.精确查询----\n");
  244. printf("          ----2.模糊查询----\n");
  245. printf("          ----0.返回上一级菜单----\n");
  246. switch(getch())
  247. {case '1':jingxing();break;
  248.   case '2':moxing();break;
  249.   case '0':return;}}}

  250. jingxing()
  251. {int i,p=0;
  252. char xm1[20],yn;
  253. while(1)
  254. {clrscr();
  255. printf("\n       请输入要查询的姓名:");
  256. gets(xm1);
  257. fflush(stdin);
  258. clrscr();
  259. printf("  查询结果如下:\n");
  260. for(i=0;i<len;i++)
  261. if(strcmp(xm1,student[i].name)==0)
  262. {p++; chashu(i,p); }
  263. if(p==0) printf("\n\n     无此记录!\n");
  264. printf("\n\n        还继续吗(Y/N).....");
  265. yn=getch();
  266. if(!(yn=='y'||yn=='Y'))
  267. break;}}


  268. moxing()
  269. {int i,j=0,k,p=0,flag,m=0;
  270. char xm1[20],yn;
  271. while(1)
  272. {clrscr();
  273. printf("\n       请输入要查询的姓名或姓名的子串:");
  274. gets(xm1);
  275. fflush(stdin);
  276. clrscr();
  277. printf("  查询结果如下:\n");
  278. for(i=0;i<len;i++)
  279. {m=0;flag=0;
  280. while(student[i].name[m]!='\0')
  281.   {j=m;k=0;
  282.    while(student[i].name[j]==xm1[k])
  283.     {j++;k++;
  284.      if(xm1[k]=='\0') {flag=1;break;}}
  285.      if(flag) {p++; chashu(i,p);break; }
  286.       m++;}}
  287.     if(p==0) printf("\n\n     无此记录!\n");
  288. printf("\n\n        还继续吗(Y/N).....");
  289. yn=getch();
  290. if(!(yn=='y'||yn=='Y'))
  291. break;}}

  292. chacheng()
  293. {
  294. while(1){clrscr();
  295. printf("          ----1.查询平均分----\n");
  296. printf("          ----2.查询总成绩----\n");
  297. printf("          ---3.查询某门课成绩----\n");
  298. printf("          ----0.返回上一级菜单----\n");
  299. switch(getch())
  300. {case '1':chaping();break;
  301.   case '2':chazong();break;
  302.   case '3':chakecheng();break;
  303.   case '0':return;}}}
  304. chaping()
  305. {
  306. clrscr();
  307. printf("          总成绩查询\n");
  308. printf("\n         请选择以下操作功能\n");
  309. printf("1. > \n");
  310. printf("2. >= \n");
  311. printf("3. < \n");
  312. printf("4. <= \n");
  313. printf("5. != \n");
  314. printf("6. == \n");
  315. printf("7. between(成绩1,成绩2) \n");
  316. s: switch(getch())
  317. {case '1':dayu(-1,1);break;
  318. case '2':dadeng(-1,1);break;
  319. case '3':xiaoyu(-1,1);break;
  320. case '4':xiaodeng(-1,1);break;
  321. case '5':budeng(-1,1);break;
  322. case '6':deng(-1,1);break;
  323. case '7':between(-1,1);break;
  324. default:printf("按键错误,请按任意键返回重选择功能!");
  325.         getch();goto s;}
  326. }        

  327. chazong()
  328. {
  329. clrscr();
  330. printf("          平均分查询\n");
  331. printf("\n         请选择以下操作功能\n");
  332. printf("1. > \n");
  333. printf("2. >= \n");
  334. printf("3. < \n");
  335. printf("4. <= \n");
  336. printf("5. != \n");
  337. printf("6. == \n");
  338. printf("7. between(成绩1,成绩2) \n");
  339. s: switch(getch())
  340. {case '1':dayu(-1,2);break;
  341. case '2':dadeng(-1,2);break;
  342. case '3':xiaoyu(-1,2);break;
  343. case '4':xiaodeng(-1,2);break;
  344. case '5':budeng(-1,2);break;
  345. case '6':deng(-1,2);break;
  346. case '7':between(-1,2);break;
  347. default:printf("按键错误,请按任意键返回重选择功能!");
  348.         getch();
  349.          goto s;}}


  350. chakecheng()
  351. {int i=0,d,k=1;
  352. clrscr();
  353. printf("     课程如下:\n");
  354. A: for(;i<clen;i++)
  355.   {printf("%d.   %s\n",k++,course[i]);
  356.    if((i+1)%10==0)
  357.    {printf("    按任意键继续...");getch();i++;goto A;}}
  358. printf("  请选择要求平均分的的课程编号");
  359. printf("(1--%d):",clen);
  360. scanf("%d",&d);
  361. if(d>clen||d<1)
  362. {printf("\n\n课程编号错误,请按任意键重输\n\n");
  363.   getch();
  364.   clrscr();
  365.   goto A;}
  366. S: clrscr();
  367. printf("\n         请选择以下操作功能\n");
  368. printf("1. > \n");
  369. printf("2. >= \n");
  370. printf("3. < \n");
  371. printf("4. <= \n");
  372. printf("5. != \n");
  373. printf("6. == \n");
  374. printf("7. between(成绩1,成绩2) \n");
  375. switch(getch())
  376. {case '1':dayu(d-1,3);break;
  377. case '2':dadeng(d-1,3);break;
  378. case '3':xiaoyu(d-1,3);break;
  379. case '4':xiaodeng(d-1,3);break;
  380. case '5':budeng(d-1,3);break;
  381. case '6':deng(d-1,3);break;
  382. case '7':between(d-1,3);break;
  383. default:printf("按键错误,请按任意键返回重选择功能!");
  384.         getch();
  385.          goto S;}}

  386. dayu(int i,int flag)
  387. {int k,p=0;
  388. char yn;
  389. float cj;
  390. while(1)
  391. {clrscr();p=0;
  392. if(flag==3)printf("请输入要查询的%s成绩:",course[i]);
  393. else if(flag==2)printf("请输入要查询的总成绩:");
  394. else if(flag==1)printf("请输入要查询的平均成绩:");
  395. scanf("%f",&cj);
  396. for(k=0;k<len;k++)
  397. { if(flag==3)
  398.    if(student[k].score[i]>cj)
  399.     {p++;chashu(k,p);}
  400.   if(flag==2)
  401.    if(student[k].zf>cj)
  402.     {p++;chashu(k,p);}
  403. if(flag==1)
  404.    if(student[k].pj>cj)
  405.     {p++;chashu(k,p);}}
  406. if(p==0) printf("无符合条件的记录!");
  407. printf("\n\n        还继续吗(Y/N).....");
  408. yn=getch();
  409. if(!(yn=='y'||yn=='Y'))
  410. break;}}


  411. dadeng(int i,int flag)
  412. {int k,p=0;
  413. char yn;
  414. float cj;
  415. while(1)
  416. {clrscr();p=0;
  417. if(flag==3)printf("请输入要查询的%s成绩:",course[i]);
  418. else if(flag==2)printf("请输入要查询的总成绩:");
  419. else if(flag==1)printf("请输入要查询的平均成绩:");
  420. scanf("%f",&cj);
  421. for(k=0;k<len;k++)
  422. { if(flag==3)
  423.    if(student[k].score[i]>=cj)
  424.     {p++;chashu(k,p);}
  425.   if(flag==2)
  426.    if(student[k].zf>=cj)
  427.     {p++;chashu(k,p);}
  428. if(flag==1)
  429.    if(student[k].pj>=cj)
  430.     {p++;chashu(k,p);}}
  431. if(p==0)printf("无符合条件的记录!");
  432. printf("\n\n        还继续吗(Y/N).....");
  433. yn=getch();
  434. if(!(yn=='y'||yn=='Y'))
  435. break;}}



  436. xiaoyu(int i,int flag)
  437. {int k,p=0;
  438. char yn;
  439. float cj;
  440. while(1)
  441. {clrscr();p=0;
  442. if(flag==3)printf("请输入要查询的%s成绩:",course[i]);
  443. else if(flag==2)printf("请输入要查询的总成绩:");
  444. else if(flag==1)printf("请输入要查询的平均成绩:");
  445. scanf("%f",&cj);
  446. for(k=0;k<len;k++)
  447. { if(flag==3)
  448.    if(student[k].score[i]<cj)
  449.     {p++;chashu(k,p);}
  450.   if(flag==2)
  451.    if(student[k].zf<cj)
  452.     {p++;chashu(k,p);}
  453. if(flag==1)
  454.    if(student[k].pj<cj)
  455.     {p++;chashu(k,p);}}
  456. if(p==0)printf("无符合条件的记录!");
  457. printf("\n\n        还继续吗(Y/N).....");
  458. yn=getch();
  459. if(!(yn=='y'||yn=='Y'))
  460. break;}}



  461. xiaodeng(int i,int flag)
  462. {int k,p=0;
  463. char yn;
  464. float cj;
  465. while(1)
  466. {clrscr();p=0;
  467. if(flag==3)printf("请输入要查询的%s成绩:",course[i]);
  468. else if(flag==2)printf("请输入要查询的总成绩:");
  469. else if(flag==1)printf("请输入要查询的平均成绩:");
  470. scanf("%f",&cj);
  471. for(k=0;k<len;k++)
  472. { if(flag==3)
  473.    if(student[k].score[i]<=cj)
  474.     {p++;chashu(k,p);}
  475.   if(flag==2)
  476.    if(student[k].zf<=cj)
  477.     {p++;chashu(k,p);}
  478. if(flag==1)
  479.    if(student[k].pj<=cj)
  480.     {p++;chashu(i,p);}}
  481. if(p==0)printf("无符合条件的记录!");
  482. printf("\n\n        还继续吗(Y/N).....");
  483. yn=getch();
  484. if(!(yn=='y'||yn=='Y'))
  485. break;}}


  486. budeng(int i,int flag)
  487. {int k,p=0;
  488. char yn;
  489. float cj;
  490. while(1)
  491. {clrscr();p=0;
  492. if(flag==3)printf("请输入要查询的%s成绩:",course[i]);
  493. else if(flag==2)printf("请输入要查询的总成绩:");
  494. else if(flag==1)printf("请输入要查询的平均成绩:");
  495. scanf("%f",&cj);
  496. for(k=0;k<len;k++)
  497. { if(flag==3)
  498.    if(student[k].score[i]!=cj)
  499.     {p++;chashu(k,p);}
  500.   if(flag==2)
  501.    if(student[k].zf!=cj)
  502.     {p++;chashu(k,p);}
  503. if(flag==1)
  504.    if(student[k].pj!=cj)
  505.     {p++;chashu(k,p);}}
  506. if(p==0)printf("无符合条件的记录!");
  507. printf("\n\n        还继续吗(Y/N).....");
  508. yn=getch();
  509. if(!(yn=='y'||yn=='Y'))
  510. break;}}



  511. deng(int i,int flag)
  512. {int k,p=0;
  513. char yn;
  514. float cj;
  515. while(1)
  516. {clrscr();p=0;
  517. if(flag==3)printf("请输入要查询的%s成绩:",course[i]);
  518. else if(flag==2)printf("请输入要查询的总成绩:");
  519. else if(flag==1)printf("请输入要查询的平均成绩:");
  520. scanf("%f",&cj);
  521. for(k=0;k<len;k++)
  522. { if(flag==3)
  523.    if(student[k].score[i]==cj)
  524.     {p++;chashu(k,p);}
  525.   if(flag==2)
  526.    if(student[k].zf==cj)
  527.     {p++;chashu(k,p);}
  528. if(flag==1)
  529.    if(student[k].pj==cj)
  530.     {p++;chashu(k,p);}}
  531. if(p==0)printf("无符合条件的记录!");
  532. printf("\n\n        还继续吗(Y/N).....");
  533. yn=getch();
  534. if(!(yn=='y'||yn=='Y'))
  535. break;}}


  536. between(int i,int flag)
  537. {int k,p=0;
  538. char yn;
  539. float cj1,cj2;
  540. while(1)
  541. {clrscr();p=0;
  542. printf("输入的 ”成绩1“ 一定要小于 “成绩2“\n");
  543. printf("请输入要查询的%s成绩1:",course[i]);
  544. scanf("%f",&cj1);
  545. printf("请输入要查询的%s成绩2:",course[i]);
  546. scanf("%f",&cj2);
  547. for(k=0;k<len;k++)
  548. { if(flag==3)
  549.    if(student[k].score[i]>=cj1&&student[k].score[i]<=cj1)
  550.     {p++;chashu(k,p);}
  551.   if(flag==2)
  552.    if(student[k].zf>=cj1&&student[k].zf<=cj1)
  553.     {p++;chashu(k,p);}
  554. if(flag==1)
  555.    if(student[k].pj>=cj1&&student[k].pj<=cj1)
  556.     {p++;chashu(k,p);}}
  557. if(p==0)printf("无符合条件的记录!");
  558. printf("\n\n        还继续吗(Y/N).....");
  559. yn=getch();
  560. if(!(yn=='y'||yn=='Y'))
  561. break;}}



  562. chashu(int i,int p)
  563. {int k;
  564. if(p%5==0){printf("按任意键继续.....");getch();clrscr();}
  565. printf("\nNO.  姓名              学号              ");
  566. for(k=0;k<clen;k++)
  567. printf("%s    ",course[k]);
  568. printf("总成绩    平均分    \n");
  569. printf("%-4d%-18s%-18s",i+1,student[i].name,student[i].xh);
  570.   for(k=0;k<clen;k++)
  571.    printf("%-10.2f",student[i].score[k]);
  572.    printf("%-10.2f%-10.2f",student[i].zf,student[i].pj);
  573.    printf("\n\n");
  574. }

  575. qiuping()
  576. {
  577. while(1)
  578. {clrscr();
  579. printf("--1.求个人平均--\n");
  580. printf("--2.求集体平均--\n");
  581. printf("--3.某门课的平均--\n");
  582. printf("--0.返回上一级菜单--\n");
  583. switch(getche())
  584. {case '1':pingge();break;
  585. case '2':pingji();break;
  586. case '3':pingmen();break;
  587. case '0':return;
  588. default:printf("输入错误!\n");
  589.         printf("请重选按键选择菜单.\n按任意键返回!\n");
  590.         getche();
  591.         continue;}}}


  592. pingmen()
  593. {int i=0,j,k=1,d;
  594. char yn;
  595. double zf1=0;
  596. while(1){
  597. clrscr();
  598. printf("     课程如下:\n");
  599. A:for(;i<clen;i++)
  600. {printf("%d.   %s\n",k++,course[i]);
  601. if((i+1)%10==0)
  602. {printf("    按任意键继续...");getch();i++;goto A;}}
  603. f:printf("  请选择要求平均分的的课程编号");
  604. printf("(1--%d):",clen);
  605. scanf("%d",&d);
  606. if(d>clen||d<1)
  607. {printf("\n课程编号错误,请按任意键重输\n");getch(); clrscr(); goto f;}
  608. for(i=0;i<len;i++)
  609. zf1+=student[i].score[d-1];
  610. printf("\n班级的%s平均分为:\n",course[d-1]);
  611. printf("       %-10.2f",zf1/len);
  612. printf("\n\n             还继续吗?(Y/N)");
  613. yn=getche();
  614. if(!(yn=='y'||yn=='Y'))
  615.   break;}
  616.   printf("\n\n按任意键返回菜单....");
  617.   getch();
  618. }
  619.    

  620. pingge()
  621. {int i,j,k=0,m=1;char yn;
  622. clrscr();
  623. for(i=0;i<len;i++)
  624.   {student[i].zf=0;
  625.     for(j=0;j<clen;j++)
  626.      student[i].zf+=student[i].score[i];
  627.    student[i].pj=student[i].zf/(clen-1);}
  628.   printf("\n\n      计算完毕,输出吗(Y/N)");
  629.   yn=getch();
  630. a:if(!(yn=='y'||yn=='Y'))
  631.    return;
  632.    else
  633.      {printf("\nNO.  姓名              学号              平均分\n");
  634.    for(;k<len;k++)
  635.    {printf("%-4d%-18s%-18s",m++,student[k].name,student[k].xh);
  636.     printf("%-10.2f",student[k].pj);
  637.     printf("\n\n");
  638.    if(k%8==0&&k!=0){
  639.    printf("按任意键继续....");
  640.    getch();
  641.    clrscr();
  642.    k++;
  643.    goto a;}}
  644.    printf("\n\n\n           还想在浏览一遍吗(Y/N)");
  645.    yn=getche();
  646. if(yn=='y'||yn=='Y')
  647.     {k=0;m=1;clrscr();goto a;}}}

  648. pingji()
  649. {double zf1=0;
  650. int i,j;
  651. clrscr();
  652. for(i=0;i<len;i++)
  653.   {student[i].zf=0;
  654.     for(j=0;j<clen;j++)
  655.      student[i].zf+=student[i].score[i];}
  656.    for(i=0;i<len;i++)
  657.    zf1+=student[i].zf;
  658.     zf1/=(clen-1);
  659. printf("\n       正在计算,请稍后.......\n");
  660.   delay(100000);
  661.   delay(100000);
  662.     printf("\n\n               班级平均分为:\n");
  663.     printf("                   %.4f",zf1);
  664.    printf("\n\n按任意键返回菜单....");
  665.    getch();}
  666.    

  667. qiuzong()
  668. {while(1)
  669. {clrscr();
  670. printf("--1.求个人总成绩--\n");
  671. printf("--2.求集体总成绩--\n");
  672. printf("--3.某门课的总成绩--\n");
  673. printf("--0.返回上一级菜单--\n");
  674. switch(getche())
  675. {case '1':zongge();break;
  676.   case '2':zongji();break;
  677.   case '3':menzong();break;
  678.   case '0':return;

  679.   default:printf("输入错误!\n");
  680.         printf("请重选按键选择菜单.\n按任意键返回!\n");
  681.         getche();
  682.         continue;}}}

  683. menzong()
  684. {int i=0,j,k=1,d;
  685. char yn;
  686. double zf1=0;
  687. while(1){
  688. clrscr();
  689. printf("     课程如下:\n");
  690. A:for(;i<clen;i++)
  691. {printf("%d.   %s\n",k++,course[i]);
  692. if((i+1)%10==0)
  693. {printf("    按任意键继续...");getch();i++;goto A;}}
  694. f:printf("  请选择要汇总的的课程编号");
  695. printf("(1--%d):",clen);
  696. scanf("%d",&d);
  697. if(d>clen||d<1)
  698. {printf("\n课程编号错误,请按任意键重输\n");getch(); clrscr(); goto f;}
  699. for(i=0;i<len;i++)
  700. zf1+=student[i].score[d-1];
  701. printf("\n班级的%s总成绩为:\n",course[d-1]);
  702. printf("       %-10.2f",zf1);
  703. printf("\n\n             还继续吗?(Y/N)");
  704. yn=getche();
  705. if(!(yn=='y'||yn=='Y'))
  706. break;}
  707. printf("\n\n按任意键返回菜单....");
  708.    getch();
  709. }
  710.    
  711.   





  712. zongge()
  713. {int i,j,k=0,m=1;char yn;
  714. clrscr();
  715. for(i=0;i<len;i++)
  716.   {student[i].zf=0;
  717.     for(j=0;j<clen;j++)
  718.      student[i].zf+=student[i].score[i];
  719. printf("\n\n      计算完毕,输出吗(Y/N)");
  720.   yn=getch();
  721. a:  if(!(yn=='y'||yn=='Y'))
  722.    return;
  723.    else
  724.      {printf("\nNO.  姓名              学号              总成绩\n");
  725.      for(;k<len;k++)
  726.      {printf("%-4d%-18s%-18s",m++,student[k].name,student[k].xh);
  727.       printf("%-10.2f",student[k].zf);
  728.       printf("\n\n");
  729.       if(k%8==0&&k!=0)
  730.      {
  731.       printf("按任意键继续....");
  732.       getch();
  733.       clrscr();
  734.       k++;
  735.       goto a;}}
  736.   

  737.     printf("\n\n\n           还想在浏览一遍吗(Y/N)");
  738.     yn=getche();
  739.     if(yn=='y'||yn=='Y')
  740.     {k=0;m=1;clrscr();goto a;}}}}


  741. zongji()
  742. {int i,j;char yn;
  743. double zf1=0;
  744. clrscr();
  745. for(i=0;i<len;i++)
  746.   {student[i].zf=0;
  747.     for(j=0;j<clen;j++)
  748.      student[i].zf+=student[i].score[i];
  749.      zf1+=student[i].zf;}
  750.   printf("\n       正在计算,请稍后.......\n");
  751.   delay(100000);
  752.   delay(100000);
  753.   printf("\n\n               班级总成绩为:\n");
  754.     printf("                   %.4f",zf1);
  755.    printf("\n\n按任意键返回菜单....");
  756.    getch();}
  757.    


  758. shanchu()
  759. {
  760. while(1)
  761. {clrscr();
  762. printf("--1.删除整条记录--\n");
  763. printf("--0.返回上一级菜单--\n");
  764. switch(getche())
  765. {case '1':shanquan();break;
  766.   case '0':return;
  767.   default:printf("输入错误!\n");
  768.         printf("请重选按键选择菜单.\n按任意键返回!\n");
  769.         getche();
  770.         continue;}}}


  771. shanquan()
  772. {int i,m,j;
  773. char yn;
  774. while(1)
  775. {clrscr();
  776. if(len==0){printf("\n   无记录!   按任意键结束..");getch();break;}
  777. printf("请输入要删除的记录号");
  778. printf("(1--%d):",len);
  779. scanf("%d",&m);fflush(stdin);
  780. if(m>len||m<1){printf("\n\n    记录号错误,请按任意键重输");getch();continue;}
  781. printf("\n");
  782. printf("\n\n    确认要删出该记录吗(Y/N)\n");
  783. yn=getch();
  784. if(yn=='y'||yn=='Y')
  785. for(i=m-1;i<len;i++)
  786. {strcpy(student[i].name,student[i+1].name);
  787. strcpy(student[i].xh,student[i+1].xh);
  788. for(j=0;j<clen;j++)
  789. {student[i].score[j]=student[i+1].score[j];}
  790. student[i].pj=student[i+1].pj;
  791. student[i].zf=student[i+1].zf;
  792. printf("\n       正在删除.......\n");
  793.   delay(100000);
  794.   delay(100000);
  795. printf("\n\n     已删除!\n");
  796. len--;}
  797. printf("\n\n             还继续吗?(Y/N)");
  798. yn=getche();
  799. if(!(yn=='y'||yn=='Y'))
  800. break;}}


  801. charu()
  802. {
  803. while(1)
  804. {clrscr();
  805. printf("\n--    1.插入记录--\n");
  806. printf("--    0.返回上一级菜单--\n");
  807. switch(getche())
  808. {case '1':cha();break;
  809.   case '0':return;
  810.   default:printf("输入错误!\n");
  811.         printf("请重选按键选择菜单.\n按任意键返回!\n");
  812.         getche();
  813.         continue;}}}

  814. cha()
  815. {int i,m=0,j,flag;
  816. char yn;
  817. while(1)
  818. {clrscr();flag=0;
  819. if(len==0){printf("\n        无记录!  只能插在一号记录上\n");
  820.            printf("\n\n     插入吗?(Y/N)\n");
  821.            yn=getch();
  822.            if(!(yn=='y'||yn=='Y'))break;
  823.            else
  824.              {flag=1;}}
  825. else{
  826. A: printf("请输入要插入的记录号位置");
  827.    printf("(1--%d):",len+1);
  828.    scanf("%d",&m);fflush(stdin);
  829.    printf("\n确定吗(Y/N)");
  830.   yn=getch();
  831.   if(yn=='y'||yn=='Y')
  832.   flag=1;}

  833. if(flag==1)
  834.   if(m==0&&len==0)
  835.    {len=1;
  836.     printf("是否输入数据?(Y/N)");
  837.     yn=getch();
  838.     if(!(yn=='y'||yn=='Y'))break;
  839.    else charushu(0);}
  840. else
  841.   {if(m>len+1||m<1)
  842.   {printf("\n\n    记录号错误,请按任意键重输!");getch();continue;}
  843.   yidong(m-1);
  844.   printf("是否输入数据?(Y/N)");
  845.    yn=getch();
  846.   if(!(yn=='y'||yn=='Y'))break;
  847.   else charushu(m-1);}
  848.   printf("\n\n             还继续吗?(Y/N)");
  849.   yn=getche();
  850.   if(!(yn=='y'||yn=='Y'))
  851.   break;
  852. }}



  853. yidong(int i)
  854. {int j,k;
  855. for(j=len;j>i;j--)
  856.    {strcpy(student[j].name,student[j-1].name);
  857.     strcpy(student[j].xh,student[j-1].xh);  
  858.    for(k=0;k<clen;k++)
  859.     student[j].score[k]=student[j-1].score[k];
  860.     student[j].zf=student[j-1].zf;
  861.     student[j].pj=student[j].pj;}

  862.   {strcpy(student[i].name,"");
  863.     strcpy(student[i].xh,"");  
  864.    for(k=0;k<clen;k++)
  865.     student[i].score[k]=0;
  866.     student[i].zf=0;
  867.     student[i].pj=0;}
  868. }

  869. charushu(int j)
  870. {int i;
  871. char name[20],xh[20];
  872. float score[20];
  873. char yn;
  874. while(1){clrscr();
  875. printf("     请输入姓名:");
  876. gets(name);
  877. printf("     请输入学号:");
  878. gets(xh);
  879. for(i=0;i<clen;i++)
  880. {printf("     请输入%s成绩:",course[i]);
  881. scanf("%f",&score[i]);}
  882. printf("\n对输入的数据确定吗(Y/N)");
  883. yn=getch();
  884. if(yn=='y'||yn=='Y')
  885. {strcpy(student[j].name,name);
  886. strcpy(student[j].xh,xh);
  887. for(i=0;i<clen;i++)
  888.   student[j].score[i]=score[i];
  889. break;}
  890. else
  891.   {printf("\n       重新输入?(Y/N)\n");
  892.    yn=getch();
  893.    if(!(yn=='y'||yn=='Y'))
  894.    break;}
  895.     }}

  896. paixu()
  897. {while(1)
  898. {clrscr();
  899. printf("--1.按学号排序--\n");
  900. printf("--2.按姓名排序--\n");
  901. printf("--3.按成绩排序--\n");
  902. printf("--0.返回上一级菜单--\n");
  903. switch(getche())
  904. {case '1':xuepai();break;
  905.   case '2':nmpai(); break;
  906.   case '3':cjpai();break;
  907.   case '0':return;
  908.   default:printf("输入错误!\n");
  909.         printf("请重选按键选择菜单.\n按任意键返回!\n");
  910.         getche();
  911.         continue;}}}


  912. xuepai()
  913. {int i,j,flag;
  914. char yn;
  915. a: clrscr();
  916. printf("-------按学号排序--------\n");
  917. printf("--1.按学号升序--\n");
  918. printf("--2.按学号降序--\n");
  919. printf("--0.返回上一级菜单--\n");
  920. switch(getch())
  921. {case '1':flag=1;break;
  922. case '2':flag=2;break;
  923. case '0':return;
  924. default:printf("按键错误,请按任意键返回重选功能.");
  925.         getch();goto a;}
  926. for(i=0;i<len;i++)
  927.   for(j=len-1;j>=i+1;j--)
  928.       if(flag==1)
  929.       {  if(strcmp(student[j-1].name,student[j].name)>0)
  930.         jiaohuan(j);}
  931.     else
  932.         if(strcmp(student[j-1].name,student[j].name)<0)
  933.             jiaohuan(j);
  934. printf("\n\n      想看一下排序结果吗(Y/N)?");  
  935. yn=getch();
  936. if(yn=='y'||yn=='Y')
  937. chupin();}

  938. nmpai()
  939. {int i,j,flag;char yn;
  940. a: clrscr();
  941. printf("-------按姓名排序--------\n");
  942. printf("--1.按姓名升序--\n");
  943. printf("--2.按姓名降序--\n");
  944. printf("--0.返回上一级菜单--\n");
  945. switch(getch())
  946. {case '1':flag=1;break;
  947. case '2':flag=2;break;
  948. case '0':return;
  949. default:printf("按键错误,请按任意键返回重选功能.");
  950.         getch();goto a;}
  951. for(i=0;i<len;i++)
  952.   for(j=len-1;j>=i+1;j--)
  953.    if(flag==1)
  954.     {if(strcmp(student[j-1].name,student[j].name)>0)
  955.       jiaohuan(j);}
  956.    else
  957.         if(strcmp(student[j-1].name,student[j].name)<0)
  958.             jiaohuan(j);
  959. printf("\n\n      想看一下排序结果吗(Y/N)?");  
  960. yn=getch();
  961. if(yn=='y'||yn=='Y')
  962. chupin();}


  963. cjpai()
  964. {int k=1,d,i,m=0,j,flag;
  965. char  yn;
  966. a: clrscr();
  967. printf("-------按成绩排序--------\n");
  968. printf("--1.按成绩升序--\n");
  969. printf("--2.按成绩降序--\n");
  970. printf("--0.返回上一级菜单--\n");
  971. switch(getch())
  972. {case '1':flag=1;break;
  973. case '2':flag=2;break;
  974. case '0':return;
  975. default:printf("按键错误,请按任意键返回重选功能.");
  976.         getch();goto a;}

  977. printf("\n     课程如下:\n");
  978. A:for(;m<clen;m++)
  979. {printf("%d.   %s\n",k++,course[m]);
  980. if((m+1)%10==0)
  981. {printf("\n    按任意键继续...");getch();m++;goto A;}}
  982. if((m+2)%10==0)
  983. {printf("\n    按任意键继续...");getch();goto A;}
  984. printf("%d.   平均分\n%d    总成绩\n",m+1,m+2);
  985. f:printf("\n\n  请选择要排序的的课程编号");
  986. printf("(1--%d):",clen+2);
  987. scanf("%d",&d);
  988. if(d>clen+2||d<1)
  989. {printf("\n课程编号错误,请按任意键重输\n");getch(); clrscr(); goto f;}
  990. for(i=0;i<len;i++)
  991.   for(j=len-1;j>=i+1;j--)
  992.    if(d==(clen+1))
  993.     {if(flag==1)
  994.      {if(student[j-1].pj>student[j].pj)
  995.       jiaohuan(j);}
  996.      else
  997.       if(student[j-1].pj<student[j].pj)
  998.        jiaohuan(j);}
  999.    else if(d==(clen+2))
  1000.     {if(flag==1)
  1001.       {if(student[j-1].zf>student[j].zf)
  1002.        jiaohuan(j);}
  1003.      else
  1004.       if(student[j-1].zf<student[j].zf)
  1005.         jiaohuan(j);}
  1006.    else
  1007.    { if(flag==1)
  1008.       {if(student[j-1].score[d]>student[j].score[d])
  1009.        jiaohuan(j);}
  1010.      else
  1011.       if(student[j-1].score[d]<student[j].score[d])
  1012.        jiaohuan(j);}
  1013. printf("\n\n      想看一下排序结果吗(Y/N)?");  
  1014. yn=getch();
  1015. if(yn=='y'||yn=='Y')
  1016. chupin();}





  1017. jiaohuan(int j)
  1018. {char p[20];
  1019. int i;
  1020. float f;
  1021. strcpy(p,student[j].name);
  1022. strcpy(student[j].name,student[j-1].name);
  1023. strcpy(student[j-1].name,p);
  1024. strcpy(p,student[j].xh);
  1025. strcpy(student[j].xh,student[j-1].xh);
  1026. strcpy(student[j-1].xh,p);
  1027. for(i=0;i<clen;i++)
  1028. {f=student[j].score[i];
  1029. student[j].score[i]=student[j-1].score[i];
  1030. student[j-1].score[i]=f;}
  1031. f=student[j].pj;
  1032. student[j].pj=student[j-1].pj;
  1033. student[j-1].pj=f;
  1034. f=student[j].zf;
  1035. student[j].zf=student[j-1].zf;
  1036. student[j-1].zf=f;
  1037. }



  1038. chushihua()
  1039. {if((f=fopen("chengji.dat","rb"))!=NULL)
  1040.   {while(!feof(f))
  1041.    fread(&student[len++],sizeof(struct stu),1,f);
  1042.    fclose(f);
  1043. }
  1044. else {printf(" 文件不存在,请创建chengji.dat文件!\n");
  1045.       printf("注意事项请参看readme.txt\n");
  1046.       delay(100000);
  1047.       delay(100000);
  1048.       exit(0);}
  1049. }

  1050. xiugai()
  1051. {while(1)
  1052. {clrscr();
  1053. printf("--1.修改学号--\n");
  1054. printf("--2.修改姓名--\n");
  1055. printf("--3.修改成绩--\n");
  1056. printf("--4.全部修改--\n");
  1057. printf("--0.返回上一级菜单--\n");
  1058. switch(getche())
  1059. {case '1':xiuxue();break;
  1060.   case '2':xiuxing(); break;
  1061.   case '3':xiucheng();break;
  1062.   case '4':xiuquan();break;
  1063.   case '0':return;
  1064.   default:printf("输入错误!\n");
  1065.         printf("请重选按键选择菜单.\n按任意键返回!\n");
  1066.         getche();
  1067.         continue;}}}

  1068. xiuquan()
  1069. {int i,m;
  1070. char name[20],xh[20];
  1071. float score[20];
  1072. char yn;
  1073. while(1){
  1074. if(len==0){printf("无记录!   按任意键结束..");getch();break;}
  1075. printf("请输入要修改的记录号");
  1076. printf("(1--%d):",len);
  1077. scanf("%d",&m);fflush(stdin);
  1078. if(m>len||m<1){printf("记录号错误,请按任意键重输");getch();continue;}
  1079. printf("\n");
  1080. printf("\n  姓名现有值为: %s\n",student[m-1].name);
  1081. printf("     请输入修改值:");
  1082. gets(name);
  1083. printf("\n  学号现有值为: %s\n",student[m-1].name);
  1084. printf("     请输入修改值:");
  1085. gets(xh);
  1086. for(i=0;i<clen;i++)
  1087. {printf("\n  %s现有值为: %f\n",course[i],student[m-1].score[i]);
  1088. printf("     请输入修改值:");
  1089. scanf("%f",&score[i]);}
  1090. printf("\n对输入的数据确定吗(Y/N)");
  1091. yn=getch();
  1092. if(yn=='y'||yn=='Y')
  1093. {strcpy(student[m-1].name,name);
  1094. strcpy(student[m-1].xh,xh);
  1095. for(i=0;i<clen;i++)
  1096.   student[m-1].score[i]=score[i];}
  1097. printf("\n\n             还继续吗?(Y/N)");
  1098. yn=getche();
  1099. if(!(yn=='y'||yn=='Y'))
  1100.   break;}}


  1101. xiucheng()
  1102. {int i,m,d,k=1;
  1103. float f;char yn;
  1104. while(1)
  1105. {clrscr();
  1106. if(len==0){printf("无记录!   按任意键结束..");getch();break;}
  1107. printf("请输入要修改的记录号");
  1108. printf("(1--%d):",len);
  1109. scanf("%d",&m);fflush(stdin);
  1110. if(m>len||m<1){printf("记录号错误,请按任意键重输");getch();continue;}
  1111. printf("\n");
  1112. A:for(i=0;i<clen;i++)
  1113. {printf("%d.   %s\n",k++,course[i]);
  1114. if((i+1)%10==0)
  1115.   {printf("    按任意键继续...");getch();k++;goto A;}}
  1116. printf("  请选择要修改的课程编号");
  1117. printf("(1--%d):",clen);
  1118. scanf("%d",&d);
  1119. if(d>clen||d<1){printf("课程编号错误,请按任意键重输");getch();continue;}
  1120. printf("\n  现有值为:%.2f\n\n",student[m-1].score[d-1]);
  1121. printf("     请输入修改值:");
  1122. scanf("%f",&f);
  1123. printf("\n确定吗(Y/N)");
  1124. yn=getch();
  1125. if(yn=='y'||yn=='Y')
  1126. student[m-1].score[d-1]=f;
  1127. printf("\n\n             还继续吗?(Y/N)");
  1128. yn=getche();
  1129. if(!(yn=='y'||yn=='Y'))
  1130. break;}}

  1131. xiuxue()
  1132. {int i,m,d;
  1133. char xue[20];char yn;
  1134. while(1)
  1135. {clrscr();
  1136. if(len==0){printf("无记录!   按任意键结束..");getch();break;}
  1137. printf("请输入要修改的记录号");
  1138. printf("(1--%d):",len);
  1139. scanf("%d",&m);fflush(stdin);
  1140. if(m>len||m<1){printf("记录号错误,请按任意键重输");getch();continue;}
  1141. printf("\n");
  1142. printf("\n  学号现有值为:%s\n\n",student[m-1].xh);
  1143. printf("     请输入修改值:");
  1144. gets(xue);
  1145. printf("\n确定吗(Y/N)");
  1146. yn=getch();
  1147. if(yn=='y'||yn=='Y')
  1148. strcpy(student[m-1].xh,xue);
  1149. printf("\n\n             还继续吗?(Y/N)");
  1150. yn=getche();
  1151. if(!(yn=='y'||yn=='Y'))
  1152. break;}}

  1153. xiuxing()
  1154. {int i,m,d;
  1155. char nm[20];char yn;
  1156. while(1)
  1157. {clrscr();
  1158. if(len==0){printf("无记录!   按任意键结束..");getch();break;}
  1159. if(len==0){printf("无记录!   按任意键结束..");getch();break;}
  1160. printf("请输入要修改的记录号");
  1161. printf("(1--%d):",len);
  1162. scanf("%d",&m);fflush(stdin);
  1163. if(m>len||m<1){printf("记录号错误,请按任意键重输");getch();continue;}
  1164. printf("\n");
  1165. printf("\n  姓名现有值为:%s\n\n",student[m-1].name);
  1166. printf("     请输入修改值:");
  1167. gets(nm);
  1168. printf("\n确定吗(Y/N)");
  1169. yn=getch();
  1170. if(yn=='y'||yn=='Y')
  1171. strcpy(student[m-1].name,nm);
  1172. printf("\n\n             还继续吗?(Y/N)");
  1173. yn=getche();
  1174. if(!(yn=='y'||yn=='Y'))
  1175. break;}}


  1176. zhuzuo()
  1177. {clrscr();

  1178. printf("\n\n\n\n\n               ------------------------------------------\n");
  1179. printf("               -----欢迎使用学生成绩管理系统-----\n");
  1180. printf("                       版本:v1.0\n");
  1181. printf("                       著作时间:2006.11.20\n");
  1182. printf("                       作者:马万里\n");
  1183. printf("                       地址:算计科学与工程学院\n");
  1184. printf("               ------------------------------------------\n");
  1185. printf("                          按任意键继续.....\n");
  1186. getche();
  1187. }

复制代码


完整的Word格式文档51黑下载地址:
C程序设计课程实践.doc (43 KB, 下载次数: 13)


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:270888 发表于 2018-1-3 17:20 | 只看该作者
执行不了啊。提示有错误
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表