[计算机类试卷]国家二级(C语言)机试模拟试卷287及答案与解析.doc
-
资源ID:503038
资源大小:30.50KB
全文页数:5页
- 资源格式: DOC
下载积分:2000积分
快捷下载

账号登录下载
微信登录下载
下载资源需要2000积分(如需开发票,请勿充值!)
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
[计算机类试卷]国家二级(C语言)机试模拟试卷287及答案与解析.doc
1、国家二级( C语言)机试模拟试卷 287及答案与解析 一、程序填空题( 30分) 1 函数 fun的功能是:将形参 a所指数组中的前半部分元素中的值和后半部分元素中的值对换。形参 n中存放数组中数据的个数,若 n为奇数,则中问的元素不动。 例如:若 a所指数组中的数据依次为: 1、 2、 3、 4、 5、 6、 7、 8、 9,则调换后为: 6、 7、 8、 9、 5、 1、 2、 3、 4。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在考生文件夹下的 BLANKl C中。 不得增行或删行。也不得更改程序的结构 ! #include #define
2、 N 9 void fun(int a, int n) int i, t, p; *found* p=(n 2=0)?n 2: n 2+【 1】; for(i=0; i #include void fun(char*a, char*b, char*c) int i, j; char ch; i=0; j=strlen(b) 1; *found* while(ij) ch=bi; bi=bj; bj=ch; i+; j; while(*a|*b) *found* If(*a) *c=*a; c+; a+; if(*b) *c=*b; c+; b+; *c=0; main() char s1100
3、, s2100, t200; printf(“ nEnter s1 string: “); scanf(“ s“, s1); printf(“ nEnter s2 string: “); scarlf(“ s“, s2); fun(s1, s2, t); printf(“ nThe result is: s n“, t); 三、程序设计题( 40分) 3 请编一个函数 fun,函数的功能是使实型数保留 2位小数,并对第三位进行四舍五入 (规定实型数为正数 )。 例如:实型数为 1234 567,则函数返回 1234 572000; 实型数为 1234 564,则函数返回 1234 562000
4、。 注意:部分源程序存在文件 PROGl C文件中。 请勿改动主函数 main和其他函数中的任何内容,仅在函数 fun的花括号中填入你编写的若干语句。 #include float fun(float h) main() float a; void NONO(); printf(“Enter a: “); scanf (“ f“, &a); printf(“The original data is: “); printf(“ f nkn“, a); printf(“The result: fn“, fun (a); NONO(); void NONO() *请在此函数内打开文件,输入测试数据,
5、 调用 fun函数,输出数据,关闭文件。 * int i; float a; FILE*rf, *wf; rf=fopen(“in dat“, “r“); wf=fopen(“out dat“, “w“); for(i=0; ii) (2)if(*a) 【试题解析】 (1)检查循环控制表达式 ij,就是当 i大于 j时进入循环,而 i的初值小于 j,所以根本不会进入循环,应将 “while(ij)“改为 “while(ij)“。 (2)第二标识下 “If(*a)“, If没有定义,根据题意,这里是判断 a字符串是否已经到达尾部,应使用 if判断,故第二标识处应改为 “if(*a)“。 三、程序设计题( 40分) 3 【正确答案】 long w; w=h*1000+5; return(float)w 1000; 【试 题解析】 进入 fun函数,根据前面的分析: 本题可以分解为,把一个浮点数截成只带两位小数的算法和将小数点后第三位四舍五入的算法。其中,四舍五入,如果值大于 5那么加上 5就会进位;反之,如果小于 5,加上 5就不会进位,所以在扩大后的值加上 5,实现四舍五入的截取。