首页>计算机等级考试>历年真题>正文
2010年9月计算机等级考试真题及答案:二级C模拟

www.zige365.com 2011-12-14 14:20:04 点击:发送给好友 和学友门交流一下 收藏到我的会员中心

(12) 【13】10

解析:该for语句以i为0,j为10初始化,循环条件是i《=j,每次循环后i增1、j减1,循环体是将i与j的和赋给k。这样变量k将保存的是最后一次赋给它的值。一次循环后i为1、j为9,二次循环后i为2、j为8,……,五次循环后i为5、j为5,继续第六次循环,将i与j的和10存于k后,i为6、j为4,结束循环。所以循环执行后k为10。

(13) 【14】7

解析: 本题综合考查带参数的宏以及三目运算符的计算方法,“?”运算符是一个三目运算符,其一般形式是《表达式1》?《表达式2》:《表达式3》。“?” 运算符的含义是先求表达式1的值,如果为真,则求表达式2的值并把它作为整个表达式的值;如果表达式1的值为假,则求表达式3的值并把它作为整个表达式的值。注意,在本题中宏替换时可采用逐步求解,最终为7》6?7:6*10,即t=7》6?7:60,其值为t=7。

(14) 【15】60

解析:本题中,代码定义3行2列的2维数组a,定义指向两个元素的一维数组指针p,并让p指向两维数组a的首行。则代码*(*(p+2)+1)中的p+2指向两维数组a的第三行a[2],*(p+2)指向a[2][0],*(p+2)+1指向a[2][1],*(*(p+2)+1)是引用a[2][1],其值是60。

(15) 【16】1000 10

解析: 对于define宏定义语句,系统会在编译前进行替换。

i2=1000/f(N)

i2=1000/f(10)

i2=1000/(10*10)

i2=10

i1=1000/s(N)

i1=1000/s(10)

i1=1000/10*10

i1=1000

(16) 【17】12

解析: 函数有一个形参num,循环前变量k置1,循环中,表达式num%10是取num的个位,将num的个位值累乘于k中,然后num除以10。循环直至num为0结束,这是逐一求出num十进制表示的各位数字,并累乘于变量k的循环,函数最后返回k。函数fun6的功能是求整数的各位数字的积。所以程序输出12。

(17) 【18】–1

【19】*sn

解析:C语言中实参变量和形参变量的数据传递是单向的“值传递”方式。指针变量作函数也要遵循这一规则。调用函数不可能改变实参指针变量的值,但可以改变实参指针变量所指变量的值。

(18)【20】*ss!= ′\0′

解析: 从字符串ss中找出子字符串的方法是:从第1个字符开始,对字符串进行遍历;若ss串的当前字符等于t串的第1个字符,两字符串的指针自动加1,继续比较下一个字符;若比较至字符串的结尾,则跳出循环;若ss串的字符和c串的字符对应不同,继续对ss串的下一个字符进行处理。本程序是采用逐一比较的方式找出出现的次数。循环的作用是在串中从左到右逐一走动,if(*ss==c)的作用是进行判断是否相同,若与c相同则表示又出现一次。

本新闻共6页,当前在第6页  1  2  3  4  5  6  

我要投稿 新闻来源: 编辑: 作者:
相关新闻