[计算机类试卷]国家二级C语言机试(操作题)模拟试卷483及答案与解析.doc

上传人:eastlab115 文档编号:498438 上传时间:2018-11-29 格式:DOC 页数:6 大小:31KB
下载 相关 举报
[计算机类试卷]国家二级C语言机试(操作题)模拟试卷483及答案与解析.doc_第1页
第1页 / 共6页
[计算机类试卷]国家二级C语言机试(操作题)模拟试卷483及答案与解析.doc_第2页
第2页 / 共6页
[计算机类试卷]国家二级C语言机试(操作题)模拟试卷483及答案与解析.doc_第3页
第3页 / 共6页
[计算机类试卷]国家二级C语言机试(操作题)模拟试卷483及答案与解析.doc_第4页
第4页 / 共6页
[计算机类试卷]国家二级C语言机试(操作题)模拟试卷483及答案与解析.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、国家二级 C语言机试(操作题)模拟试卷 483及答案与解析 一、程序填空题 1 下列给定程序中,函数 fun的功能是:将形参 a所指数组中的前半部分元素中的值与后半部分元素中的值对换。形参 n中存放数组中数据的个数,若 n为奇数,则中间的元素不动。 例如,若 a所指数组中的数据为: 1, 2, 3, 4, 5, 6, 7, 8, 9,则调换后为:6, 7, 8, 9, 5, 1, 2, 3, 4。 请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不 得更改程序的结构 ! 试题程序: #include stdio h #def

2、ine N 9 void fun(int a, int r1) int i, t, p; /*found*/ P=(n 2=0)? n/2: n/2+ 【 1】 ; for(i=0; i n/2; i+) t=ai; /*found*/ ai=ap+【 2】 ; /*found*/ 【 3】 =t; main() int bN=1, 2, 3, 4, 5, 6, 7, 8, 9, i; printf(“nThe original data: n“); for(i=0; i N; i+) printf(“ 4d“, bi); printf(“n“); fun(b, N); printf(“nTh

3、e data after moving: n“); for(i=0; i N; i+) printf(“ 4 d“, bi); printf(“n“); 二、程序修改题 2 下列给定程序中函数 fun的功能是:把从主函数中输入的 3个数,最大的数放在a中,中间的数放在 b中,最小的数放在 c中。 例如,若输入的数为: 55 12 34,输出的结果应当是: a=55 0, b=34 0,c=12 0。 请改正程序中的错误,使它能得出正确的结果。 注意:不要改动 main函数,不得增行或删行,也不得更改程序的结构 ! 试题程序: #include stdio h void fun(float*a,

4、 float*b, float* c) /*found*/ float*k; if(*a *b) k=*a; *a=*b; * b=k; ) /*found*/ if(*a * c) k=*c; *c=*a; *a=k; if(*b *c) k=*b; *b=*c; *c=k; main() float a, b, c; printf(“Input a b c: “); scanf(“ f f f“, &a, &b, &c); printf(“a= 4 1 f, b= 4 1 f, c= 4 1 fnn“, a, b, c); fun(&a, &b, &c); printf(“a= 4 1 f

5、, b= 4 1 f, c= 4 1 fnn“, a, b, c); 三、程序设计题 3 学生的记录由学号和成绩组成, N名学生的数据已放入主函数中的结构体数组 s中,请编写函数 fun,其功能是:把分数最高的学生数据放在 b所指的数组中。 注意:分数最高的学生可能不止一个,函数返回分数最高的学生人数。 注意:部分源程序给出如下。 请勿改动主函数 main和其他函数中的任何内容,仅在函数 fun的花括号中填入你编写的若干语句。 试题程序: #include stdio h #define N 1 6 typedef struct char hum10; int s; STREC; int fu

6、n(STREC*a, STREC*b) void main() STREC sN=“GA005“, 85, “GA003“, 76, “GA002“, 69, “GA004“, 85, “GA001“, 91, “GA007“, 72, “GA008“, 64, “GA006“, 87, “GA015“, 85, “GA013“, 91, “GA012“, 64, “GA014“, 91, “GA011“, 77, “GA017“, 64, “GA018“, 64, “GA016“, 72; STREC hN; int i, n; n=fun(s, h); printf(“The d high

7、est score: n“, n); for(i=0; i n; i+) printf(“ s 4dn“, hi nHin, hi s); /*输出最高分学生的学号和成绩 */ printf(“n“); 国家二级 C语言 机试(操作题)模拟试卷 483答案与解析 一、程序填空题 1 【正确答案】 (1)1 (2)i (3)ap+i或 *(a+p+i) 【试题解析】 条件运算符组成条件表达式的一般形式:表达式 1 7表达式 2:表达式 3。其求值规则为:如果表达式 l的值为真,则以表达式 2的值作为条件表达式的值,否则以表达式 3的值作为整个条件表达式的值。 填空 1:该处是判断数组元素的个数是

8、奇数还是偶数,为奇数时要使当前位置加1,使 p指向数组中间位置。 填空 2和填空 3:这里是一个比较常见的数组位置调换程序,应填入 i和 ap+i或*(a+p+i)。 变量交换算法:如果变量 a、 b互换,需借助第 3个变量 temp完成,即 temp=a;a=b; b=temp;。 二、程序修改题 2 【正确答案】 (1)float k; (2)if( *a *c) 【试题解析】 本题考查:变量定义,根据给定程序语句确定变量类型; if语句条件表达式。 (1)观察程序中的 k,在赋值语句中, k是以变量的形式进行赋值而非指针,所以将k定义为指针是错误的。 (2)此处 if语句是为了将小于 *

9、c的值放入 *c中,所以改为 if( *a *c)。 三、程序设 计题 3 【正确答案】 int fun (STREC *a, STREC *b) int i,j =0,max =a0 s; for(i=0; i N; i+) if (max ai s)/*找出最大值 */ max =ai s; for(i=0; i N; i+) if(max=ai s) bj+=ai; /*找出成绩与 max相等的学生的记录,存入结构体 b中 */ return j; /*返回最高成绩的学生人数 */ 【试题解析】 本题考查:结构体数组操 作;用循环判断结构查找数组中的最大值。 该程序使用两个循环判断语句,第 1个循环判断语句的作用是找出最大值;第 2个循环判断语句的作用是找出与 max相等的成绩(即最高成绩)的学生记录,并存入 b中。 对于如何找出数组中最大值(多个相等)的方法,我们已经不陌生。如何对结构体数组进行类似操作呢? 掌握以下语句: if (max ai s) max =ai s;

展开阅读全文
相关资源
猜你喜欢
  • ASTM C1134-1990(2012)e1 Standard Test Method for Water Retention of Rigid Thermal Insulations Following Partial Immersion《部分浸入后刚性热绝缘材料水分保持的标准试验方法》.pdf ASTM C1134-1990(2012)e1 Standard Test Method for Water Retention of Rigid Thermal Insulations Following Partial Immersion《部分浸入后刚性热绝缘材料水分保持的标准试验方法》.pdf
  • ASTM C1134-2017 Standard Test Method for Water Retention of Rigid Thermal Insulations Following Partial Immersion《刚性绝热材料部分浸渍后保水性的标准试验方法》.pdf ASTM C1134-2017 Standard Test Method for Water Retention of Rigid Thermal Insulations Following Partial Immersion《刚性绝热材料部分浸渍后保水性的标准试验方法》.pdf
  • ASTM C1135-2000(2005) Standard Test Method for Determining Tensile Adhesion Properties of Structural Sealants《测定结构密封件的粘着抗拉强度特性的标准试验方法》.pdf ASTM C1135-2000(2005) Standard Test Method for Determining Tensile Adhesion Properties of Structural Sealants《测定结构密封件的粘着抗拉强度特性的标准试验方法》.pdf
  • ASTM C1135-2000(2011) Standard Test Method for Determining Tensile Adhesion Properties of Structural Sealants《测定结构密封件的粘着抗拉强度特性的标准试验方法》.pdf ASTM C1135-2000(2011) Standard Test Method for Determining Tensile Adhesion Properties of Structural Sealants《测定结构密封件的粘着抗拉强度特性的标准试验方法》.pdf
  • ASTM C1135-2015 Standard Test Method for Determining Tensile Adhesion Properties of Structural Sealants《测定结构密封料的粘着抗拉强度特性的标准试验方法》.pdf ASTM C1135-2015 Standard Test Method for Determining Tensile Adhesion Properties of Structural Sealants《测定结构密封料的粘着抗拉强度特性的标准试验方法》.pdf
  • ASTM C1136-2006 Standard Specification for Flexible Low Permeance Vapor Retarders for Thermal Insulation《隔热用柔性、低渗透蒸气阻化剂的标准规范》.pdf ASTM C1136-2006 Standard Specification for Flexible Low Permeance Vapor Retarders for Thermal Insulation《隔热用柔性、低渗透蒸气阻化剂的标准规范》.pdf
  • ASTM C1136-2008 Standard Specification for Flexible Low Permeance Vapor Retarders for Thermal Insulation.pdf ASTM C1136-2008 Standard Specification for Flexible Low Permeance Vapor Retarders for Thermal Insulation.pdf
  • ASTM C1136-2009 Standard Specification for Flexible Low Permeance Vapor Retarders for Thermal Insulation《隔热用柔性、低渗透蒸气阻化剂的标准规范》.pdf ASTM C1136-2009 Standard Specification for Flexible Low Permeance Vapor Retarders for Thermal Insulation《隔热用柔性、低渗透蒸气阻化剂的标准规范》.pdf
  • ASTM C1136-2010 Standard Specification for Flexible Low Permeance Vapor Retarders for Thermal Insulation《隔热用柔性低渗透性蒸汽缓凝剂标准规范》.pdf ASTM C1136-2010 Standard Specification for Flexible Low Permeance Vapor Retarders for Thermal Insulation《隔热用柔性低渗透性蒸汽缓凝剂标准规范》.pdf
  • 相关搜索

    当前位置:首页 > 考试资料 > 职业资格

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1