【计算机类职业资格】二级C语言机试-139及答案解析.doc
-
资源ID:1325649
资源大小:32.50KB
全文页数:5页
- 资源格式: DOC
下载积分:5000积分
快捷下载

账号登录下载
微信登录下载
下载资源需要5000积分(如需开发票,请勿充值!)
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
【计算机类职业资格】二级C语言机试-139及答案解析.doc
1、二级 C 语言机试-139 及答案解析(总分:100.00,做题时间:90 分钟)一、填空题(总题数:1,分数:30.00)在给定程序中,函数 fun 的功能是:将形参 n 所指变量中的每一位为偶数的数去除,剩余的数按原来高位到低位的顺序组成一个新的数,并通过形参指针 n 传回所指变量。例如,输入一个数:13245698,新的数为:1359。请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。注意:源程序是考生文件夹下的 BLANK1.C。不得增行或删行,也不得更改程序的结构。文件 BLANK1.C 内容如下:#includestdio.hvoid fun(unsigned
2、long *n)unsigned long x=0,i;int t;i=1;while(*n)/*found*/t=*n% (1) ;/*found*/if(t%2!= (2) )x=x+t*i:i=i*10:*n=*n/10:/*found*/*n= (3) ;void main( )unsigned long n;printf(“Please input(0n100000000):“);scanf(“%1d“, )解析:解析 本题考的是数据分离的算法,分离出两位整数的个位和十位,然后按照题目要求进行重新组合。数据的分离通常采用“/”、“%”来实现。a 和 b 是两个两位的正整数,所以 a/
3、10、b/10 分离出d、b 变量的十位,a%10、b%10 分离出 a、l,变量的个位,参数 c 是指针,通过它将组成的新数传回所指的变量,所以注意应该对*c 进行赋值。归纳总结 本套试题的程序填空和程序设计题考查的是数据分离的算法。此类题目的处理方法通常有两种。第一种:在知道整数确切位数的情况下,要求分离出整数的每一位,通常采用“/”和“%”两种运算的结合。常用程序为:设有整型变量 a 且已正确赋值一个正整数,则gw=a%10; /*分离出个位*/sw=a/10%10;/*分离出十位*/bw=a/100%10;/*分离出百位*/第二种:在不知道位数的情况下,通常采用循环,每次分离整数的个位,再通过整除 10 的运算将个位丢掉,原来的十位则又变成了个位,以此类推进行处理。常用程序段为:设有整型变量 a 且已正确赋值。while(a!=0)t=a%10; /*分离出整数的个位*/_; /*横线部分根据程序要求对存放在 t 中的数据进行处理*/a=a/10; /*采用整除的方法,将正整数的个位丢掉,高位数据依次向低位移动*/