实验6数组二维数组和字符数组.docVIP

  • 53
  • 0
  • 约4.21千字
  • 约 21页
  • 2018-12-15 发布于广东
  • 举报
实验6数组二维数组和字符数组.doc

#海工嗲淀针真机科孝系 实验报告书 课 程名: 《C语言程序设计A》 题 目: 头验6数组 维数组 和字符数组 班 级: 软嵌151 学 号: 2015123349 姓 名: 陈汇宁 评语: 成绩: 指导教师: 批阅吋IHj: 年 月 闩 1、 实验内容或题目 设某班有4门课程(语文、数学、英语,程序设计)的成绩。先输入学生人数, 然后按学号从小到人的顺序依次输入学生成绩。编写一个稈序实现统计每门课程全班的总 成绩、平均成绩和最高分,以及毎个学生的总成绩和平均成绩,并按总分从高到低顺序输 出学也的学号、各门课程成绩及总成绩。 从键盘输入10个字符串,由小到大输出。 教材169页的第7和第8题。 编写一个程序,将两个字符串合并成一个字符串。(不允许使用strcat函数) 2、 实验目的与要求 掌握二维数组的定义和输入输出的方法。 掌握与数组有关的算法,如排序、査找。 掌握字符数组和字符中处理函数的使用。 3、 实验步骤与源程序 (1)实验步骤 ⑵源代码 (1)、 #include stdio.h int main() #define N 50 int score[N][6],total[4]; double savg[N],cavg[4]; int i,j,s,n,t; printf(请输入学生的个S scanf(%d,n); for(i=0;in;i++) printfC?请输入第%€1学生的学号:,i+l); scanf(%d,score[i][0]); printf(”请分别输入此学生的语文,数学,英语,计算机的分数: scanf(H%d %d %d %d,score[i][l],score[i][2],score[i][3】,score[i][4】); } for(i=0;in;i++) { score[i][5]=score[i][l]+score[i][2]+score[i][3]+score[i][4]; savg[i] = (double)score[i] [5]/4; } for(i=0;in-l;i++) { for(j=0;jn-l-i;j++) { if (score[j] [5] score[j+1] [5]) { for(s=0;s6;s++) { t=score[j][s]; score [j] [s]=score[j+l] [s]; score[j + l][s]=t; for(i=0;i4;i++) { total[i]=0; for(j=0;jn;j + +) { total [i] = total [i]+score[j][i + l]; } cavg[i] = (double)total[i]/n; } printfC?计算结果如下:\n); printf(?编号\1学号\t语文\t数学\t英语\t体育\t总分\t均分\11); for(i=0;in;i++) { printff?第 %€1名:,i+1); for(j=0;j6;j++) { printf(\t%d,score[i][j]); } printf(,,\t%3.1lf\n,,,savg[i]); } printfC?总分:); printf(\t); for(i=0;i4;i++) printf(:\n 益攻::); ■Drintf (:\t=); for(i=0;i4;i++) { ■Drintf (:\t%3.1lf=cavg il); } sturn 0; } (2K #includestdio.hv 4tinccde string-rv void maino { chars 10】 20Lt 20h int i ,j; for(i=0;i10;i++) { ■orintffs鄞 A 雠 %2d-+}滋册:=i+l); gets(ss); printfnn); for(j=0;j20;j++) ?r(i=0;i20-i;i++) if {strcmp(s=s i+l】)vo) { strcpy(t ss); arcpy(s iLS i+l】); Strcpy(s i+1L t); printf (:郵 As 10-+}琅册,扭/JHJJb苔彌密?过:\n=); for(i=0;i10;i++) puts(ss); (3\ #indudestdio.hv void mofangzhenont m) { inta so】 looh is b, x, y; f or (X=0;x m;x + +) { for(y=o;ym;y++) a XHy】=o; } x=0; y=(m-l)/2; a x】 y】=l; f or(b=2;b =m*mjb + +) { if(x-l0) x=(x-l+m)%m; else x=x

文档评论(0)

1亿VIP精品文档

相关文档