-> -> ->
2010年全国计算机等级考试二级公共基础知识和C语言程序设计考前冲刺试卷(一)(四)
时间:2011-03-12 10:55:10
微信搜索关注"91考试网"公众号,领30元,获取事业编教师公务员等考试资料40G
一1]+b[m一1][n]。----------------------------------------9、下面函数的功能是将一个字符串的内容颠倒过来,请填空。void fun(char str[]){int i,j,k;for(i=0,j=______,i<j,i++,j一一){k=str[i]; str[i]=str[i]; str[j]=k;}} 参考答案: strlen(str)一1。 for循环的作用用来完成字符串的序,应该先对循环条件初始化,所以应填strlen(str)-l。----------------------------------------10、若X为int类型,请写出与!x等价的c语言表达式__________。 参考答案: x==0 x为真,!x的逻辑意思就是x为假,即x=0,本题中x为int型,也就是整型数值,所以!x为0----------------------------------------11、下列程序的运行结果是________main(){ int a=l,b=10;do{ b-=a;a++}while(b--<0);printf("%d,%d\n",a,b);} 参考答案: 2,8 本题考察do…while语句的功能先执行循环举杯,再判断循环条件是否成立,若为真,则重复执行循环体,否则退出循环。程序开始时a=1''b:10,经过操作b一=a;a++后b=9,a=2,判断条件b一一<O不成立,则退出循环,但b的值被减1,因此结果为a=2,b=8。----------------------------------------12、下列程序的运行结果是_________main(){int i,a[10];a[0]=a[1]=1;for(i=2;i<5;i++)a[i]=a[i-2]+a[i-1];for(i-0;i<5;i++){if(i%2==O)printf("\n");printf("%d",a[i]);}} 参考答案: 11<cR>2 3<cR>5(<cR>代表换行) 本题考察for循环,第一个for循环“for(i=2;i<5;i++)”a[i]=a[i一2]+a[i-1];是将数组中前面两项的和赋值给数组当前元素,可知a的值应为{1,1,2,3,5)。语句if(i%2==O)printf(”\n”)是将数组中的元素以每行2个的形式输出。----------------------------------------13、下列程序的输出结果是_________。#include<stdio.h>int fun(int x){ int P;if(x==0||x==1) return 3; else p=x—fun(x一2); return P; } void main() {printf("n%d",fun(11)); } 参考答案: 4 本题考查函数的递归调用。在主函数中第1次调用fun(1),如果x=11x-二1则返回3,否则返回11fun(9);第2次调用函数fun(9),返回9一fun(7);第3次是fun(7),返回7-fun(5);第4次是调用fun(5),返回5一fun(3);第5次调用fun(3),返回3一fun(1);第6次调用fun(1),返回3。总的返回值是:|| (9-(7一(5一(3—3))))
微信搜索关注"91考试网"公众号,领30元,获取公务员事业编教师考试资料40G