中国石油大学(华东)C语言在线测评答案第12章结构体和共用体(2013级亲测正确)_第1页
中国石油大学(华东)C语言在线测评答案第12章结构体和共用体(2013级亲测正确)_第2页
中国石油大学(华东)C语言在线测评答案第12章结构体和共用体(2013级亲测正确)_第3页
中国石油大学(华东)C语言在线测评答案第12章结构体和共用体(2013级亲测正确)_第4页
中国石油大学(华东)C语言在线测评答案第12章结构体和共用体(2013级亲测正确)_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、12.1 修改学生的各科成绩给定程序通过定义并赋初值的方式,利用结构体变量存储了一名学生的学号、姓名和3门课的成绩。函数fun的功能是将该学生的各科成绩都乘以一个系数a。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:只需提交补充完整的fun函数和main函数预设代码/*found*/ void fun(_1_ *ss,float a)     int i;    for(i=0; i<3; i+)/*found*/    ss->_2_ *=a;int main

2、(   )     STU std= 1,"Zhanghua",76.5,78.0,82.0 ;    float a;    scanf("%f",&a);/*found*/    fun(_3_,a);    show(std);    return 0;/* PRESET CODE BEGIN - NEVER TOUCH CODE BELOW

3、*/#include <stdio.h>#include <string.h>#include <stdio.h>typedef struct int num; char name9; float score3;STU;void show(STU tt) int i; printf("%d %s : ",tt.num,); for(i=0; i<3; i+) printf("%5.1f",tt.scorei); printf("n");/* PRESET CODE END - N

4、EVER TOUCH CODE ABOVE */*found*/ void fun(STU *ss,float a) int i; for(i=0; i<3; i+)/*found*/ ss->scorei *=a;int main( ) STU std= 1,"Zhanghua",76.5,78.0,82.0 ; float a; scanf("%f",&a);/*found*/ fun(&std,a); show(std); return 0;12.2 修改学生信息程序通过定义学生结构体变量,存储了学生的学号、姓名和 3

5、门课的成绩。函数 fun 的功能是对形参 b 所指结构体变量中的数据进行修改 , 最后在主函数中输出修改后的数据。例如 : b 所指变量 t 中的学号、姓名、和三门课的成绩依次是 : 10002 、 "ZhangQi" 、 93 、 85 、 87 ,修改后输出 t 中的数据应为: 10004 、 " LiJie " 、 93 、 85 、 87 。请在程序的下划线处填入正确的内容并把下划线删除 , 使程序得出正确的结果。不得增行或删行,也不得更改程序的结构!注意:只需提交补充完整的fun函数和main主函数预设代码void fun( struct st

6、udent  *b)/*found*/    b_1_ = 10004;/*found*/    strcpy(b_2_, "LiJie");int main()     struct student  t=10002,"ZhangQi", 93, 85, 87;    int  i;/*found*/    fun(_3_);    printf

7、("No: %ld  Name: %snScores:",t.sno, );    for (i=0; i<3; i+)  printf("%6.2f", t.scorei);    printf("n");    return 0;/* PRESET CODE BEGIN - NEVER TOUCH CODE BELOW */#include <stdio.h>#include <stri

8、ng.h>struct student long sno; char name10; float score3;/* PRESET CODE END - NEVER TOUCH CODE ABOVE */void fun( struct student *b)/*found*/ b->sno = 10004;/*found*/ strcpy(b->name, "LiJie");int main() struct student t=10002,"ZhangQi", 93, 85, 87; int i;/*found*/ fun(&

9、;t); printf("No: %ld Name: %snScores:",t.sno, ); for (i=0; i<3; i+) printf("%6.2f", t.scorei); printf("n"); return 0;12.3 学生信息的排序程序通过定义学生结构体数组,存储了若干名学生的学号、姓名和 3 门课的成绩。函数 fun 的功能是将存放学生数据的结构体数组,按照姓名的字典序(从小到大)排序。请在程序的下划线处填入正确的内容并把下划线删除 , 使程序得出正确的结果。注意:只需提交补充完整的fun

10、函数。预设代码void fun(struct student  a, int  n)/*found*/ _1_ t;  int  i, j;/*found*/  for (i=0; i<_2_; i+)    for (j=i+1; j<n; j+)/*found*/      if (strcmp(_3_) > 0)        t = ai;   ai

11、= aj;  aj = t;  /* PRESET CODE BEGIN - NEVER TOUCH CODE BELOW */#include <stdio.h>#include <string.h>struct student long sno; char name10; float score3;/* PRESET CODE END - NEVER TOUCH CODE ABOVE */void fun(struct student a, int n)/*found*/ struct student t; int i, j;/*found*/

12、for (i=0; i<n-1; i+) for (j=i+1; j<n; j+)/*found*/ if (strcmp(,) > 0) t = ai; ai = aj; aj = t; 12.4 找出指定分数范围内的学生学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中, 请编写函数fun,它的功能是:把指定分数范围内的学生数据放在h所指的数组中,分数范围内的学生人数由函数值返回。 例如,输入的分数是60 69, 则应当把分数在60到69的学生数据进行输出,包含60分和69分的学生数据。主函数中将把60放在low中,把69

13、放在heigh中。 注意:只需提交fun函数STREC sN="GA005",85,"GA003",76,"GA002",69,"GA004",85,"GA001",96,"GA007",72,"GA008",64,"GA006",87,"GA015",85,"GA013",94,"GA012",64,"GA014",91,"GA011"

14、,90,"GA017",64,"GA018",64,"GA016",72;12.5找出分数最低的学生学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中, 请编写函数fun,它的功能是:把分数最低的学生数据放在b所指的数组中,注意:分数最低的学生可能不止一个,函数返回分数最低的学生的人数。 注意: 只需提交fun函数/* PRESET CODE BEGIN - NEVER TOUCH CODE BELOW */#include <stdio.h>#define N 16typedef struct ch

15、ar num10; int s;STREC;/* PRESET CODE END - NEVER TOUCH CODE ABOVE */int fun(STREC s,STREC h)int j,min,count=0;min=s0.s;for(j=1;j<N;j+)if(sj.s<min)min=sj.s;for(j=0;j<N;j+)if(sj.s=min)hcount=sj;count+;return count;/* PRESET CODE BEGIN - NEVER TOUCH CODE BELOW */int main() STREC sN="GA05&

16、quot;,85,"GA03",76,"GA02",69,"GA04",85,"GA01",91,"GA07",72,"GA08",64,"GA06",87,"GA015",85,"GA013",91,"GA012",64,"GA014",91,"GA011",91,"GA017",64,"GA018",64,&quo

17、t;GA016",72; STREC hN; int i,n; n=fun(s,h); for(i=0;i<n; i+) printf("%s %4dn",hi.num,hi.s); return 0;/* PRESET CODE END - NEVER TOUCH CODE ABOVE */12.6求平面上两点距离编写程序,计算二维平面上两点p1和p2间的直线距离。输入:两点的坐标值 输出:两点的距离 注意:只需提交fun函数/* PRESET CODE BEGIN - NEVER TOUCH CODE BELOW */#include <stdio

18、.h>#include "math.h"typedef struct double x,y;POINT2D;/* PRESET CODE END - NEVER TOUCH CODE ABOVE */double fun(POINT2D p1,POINT2D p2)double m=0;m=(p2.x-p1.x)*(p2.x-p1.x);m+=(p2.y-p1.y)*(p2.y-p1.y);m=(double)(sqrt(m);return m;/* PRESET CODE BEGIN - NEVER TOUCH CODE BELOW */int main() POI

19、NT2D p1,p2; double e; scanf("%lf%lf",&p1.x,&p1.y); scanf("%lf%lf",&p2.x,&p2.y); e=fun(p1,p2); printf("%lfn",e); return 0;/* PRESET CODE END - NEVER TOUCH CODE ABOVE */12.7加密编写程序,按下表所示的码表将明文中指定的明码转换为暗码(其他字符不变),形成密文并输出。输入:明文 输出:与输入相对应的密文 注意:只需提交fun函数/* PRESET CODE BEGIN - NEVER TOUCH CO

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论