[计算机类试卷]国家二级C语言机试(选择题)模拟试卷47及答案与解析.doc
《[计算机类试卷]国家二级C语言机试(选择题)模拟试卷47及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级C语言机试(选择题)模拟试卷47及答案与解析.doc(24页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C语言机试(选择题)模拟试卷 47及答案与解析 一、选择题 1 一个栈的初始状态为空。现将元素 1、 2、 3、 4、 5、 A、 B、 C、 D、 E依次入栈,然后再依次出栈,则元素出栈的顺序是 ( A) 12345ABCDE ( B) EDCBA54321 ( C) ABCDE12345 ( D) 54321EDCBA 2 下列叙述中正确的是 ( A)循环队列有队头和队尾两个指针,因此,循环队列是非线性结构 ( B)在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况 ( C)在循环队列中,只需要队尾指针就 能反映队列中元素的动态变化情况 ( D)循环队列中元素的个数是由
2、队头指针和队尾指针共同决定 3 有以下程序 #include fun(inta,intb) intstaticm=0,i=2; i=i+m+1; m=i+a+b; returnm; main() intk=4,m=1,p; p=fun(k,m); printf(“%d,“,p); p=fun(k,m); printf(“%dn“,p); 程序运行后的输出结果是 ( A) 8,17 ( B) 7,16 ( C) 8,8 ( D) 7,17 4 下列叙述中正确的是 ( A)顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的 ( B)顺序存储结构只针对线性结构,链式存储结构只针对非
3、线性结构 ( C)顺序存储结构能存储有序表,链式存储结构不能存储有序表 ( D)链式存储结构比顺序存储结构节省存储空间 5 数据流图中带有箭头的线段表示的是 ( A)控制流 ( B)事件驱动 ( C)模块调用 ( D)数据流 6 在软件开发中,需求分析阶段可以使用的工具是 ( A) N S图 ( B) DFD图 ( C) PAD图 ( D)程序流程图 7 在面向对象方法中,不属于 “对象 “基本特点的是 ( A)一致性 ( B)分类性 ( C)多态性 ( D)标识唯一性 8 一间宿舍可住多个学生,则实体宿舍和学生之间的联系是 ( A)一对一 ( B)一对多 ( C)多对一 ( D)多对多 9
4、在数据管理技术发展的三个阶段中,数据共享最好的是 ( A)人工管理阶段 ( B)文件系统阶段 ( C)数据库系统阶段 ( D)三个阶段相同 10 有三个关系 R、 S和 T如下: 由关系 R和 S通过运算得到关系 T,则所使用的运算为 ( A)笛卡尔积 ( B)交 ( C)并 ( D)自然连接 11 以下不能用于描述算法的是 ( A)文字叙述 ( B)程序语句 ( C)伪代码和流程图 ( D) E-R图 12 以下选项中合法的实型常量是 ( A) 0 ( B) 3.13e-2.1 ( C) 914 ( D) 2.0*10 13 以下叙述中正确的是 ( A) a是实型变量, a=10在 C语言中
5、是允许的,因此可以说:实型变量中可以存放整型数 ( B)在赋值表达式中,赋值号的右边可以是变量,也可以是任意表达式 ( C)若有 int a=4,b=9; 执行了 a=b后, a的值已由原值改变为 b的值, b的值变为0 ( D)若有 int a=4,b=9; 执行了 a=b;b=a;之后, a的值为 9, b的值为 4 14 以下选项中合法的变量是 ( A) 5a ( B) _10_ ( C) A% ( D) sizeof 15 不能正确表示数学式 的表达式是 ( A) a/c*b ( B) a*b/c ( C) a/ b* c ( D) a*(b/c) 16 有以下程序 #include
6、main() inta=3; printf(“%dn“,(a+=a-=a*a); 程序运行后的输出结果是 ( A) 3 ( B) 9 ( C) 0 ( D) -12 17 若变量已正确定义,以下选项中非法的表达式是 ( A) a!=4|b ( B) a=1/2*(x=y=20,x*3) ( C) a % 4 ( D) A + 32 18 有以下程序 #include main() intx=35,B;charz=B; B=(x) printf(“%dn“,B); 程序运行后的输出结果是 ( A) 1 ( B) 0 ( C) 35 ( D) 66 19 与数学表达式 xyz对应的 C语言表达式是
7、 ( A) (x=y)|(y=x) ( B) (x=y=z) ( C) (x=y)!(y=z) ( D) (x=y) if(x 0.0)y=0.0; elseif(x 5.0) elseif(x 10.0)y=1.0/x; elsey=10.0; printf(“%fn“,y); 程序运行后的输出结果是 ( A) 0.000000 ( B) 0.250000 ( C) 0.500000 ( D) 1.000000 21 有以下程序 #include main() inti,sum; for(i=1;i 6;i+)sum+=i; printf(“%dn“,sum); 程序运行后的输出结果是 (
8、A)随机值 ( B) 0 ( C) 15 ( D) 16 22 有以下程序 #include main() inta=3; do printf(“%d,“,a-=2); while(!(-a); printf(“n“); 程序运行后的输出结果是 ( A) 1 ( B) 1, -2, ( C) 3,0, ( D) 1,0 23 有以下程序 #include voidfun(inta,intb,intc) a=b;b=c;c=a; main() inta=10,b=20,c=30; fun(a,b,c); printf(“%d,%d,%dn“,c,b,a); 程序运行后的输出 结果是 ( A) 1
9、0,20,30 ( B) 30,20,10 ( C) 20,30,10 ( D) 0,0,0 24 有以下程序 #include main() intc6=10,20,30,40,50,60,*p,*s; p=c;s= printf(“%dn“,s-p); 程序运行后的输出结果是 ( A) 5 ( B) 50 ( C) 6 ( D) 60 25 有以下程序 #include main() inta3=0,i,j,k=2; for(i=0;i k;i+) for(j=0;j k;j+)aj=ai+1; printf(“%dn“,a1); 程序运行后的输出结果是 ( A) 0 ( B) 2 ( C
10、) 1 ( D) 3 26 有以下程序 #include main() inta5=2,4,6,8,10,*p,*k; p=a;k= printf(“%d“,*(p+); printf(“%dn“,*k); 程序运行后的输出结果是 ( A) 4 6 ( B) 4 4 ( C) 2 2 ( D) 2 4 27 有以下程序 #include main() intaa33=2,4,6,i,*p= for(i=0;i 2;i+) if(i=0)aaii+1=*p+1; else+p; printf(“%d“,*p); 程序运行后的输出结果是 ( A) 2 6 ( B) 2 3 ( C) 4 3 ( D
11、) 4 6 28 以下 fun函数返回数组中最大值的下标 #include intfun(int*s,intn) inti,k; for(i=0,k=i;i intfun(chars) char*p=s; while(*p!=0)p+; return(p-s); main() printf(“%dn“,fun(“0ABCDEF“); 程序运行后的输出结果是 ( A) 1 ( B) 6 ( C) 7 ( D) 0 30 若有以下程序段 charstr412=“aa“,“bbb“,“ccccc“,“d“,*strp4; inti; for(i=0;i 4;i+)strpi=stri; 不能正确引用
12、字符串的选项是 ( A) str0 ( B) strp ( C) strp3 ( D) *strp 31 有以下程序 #include #include voidfun(char*s) chara10; strcpy(a,“STRING“); s=a; main() char*p=“PROGRAM“; fun(p); printf(“%sn“,p); 程序运行后的输出结果是 (此处 代表空格 ) ( A) STRING ( B) STRING ( C) STRING ( D) PROGRAM 32 有以下程序 #include voidfun(intn,int*s) intf; if(n=1)
13、*s=n+1; else fun(n-1, *s=f; main() intx=0; fun(4, printf(“%dn“,x); 程序运行后的输出结果是 ( A) 3 ( B) 1 ( C) 2 ( D) 4 33 有以下程序 #include main() charc25=“6938“,“8254“,*p2; inti,j,s=0; for(i=0;i 2;i+) pi=ci; for(i=0;i 2;i+) for(j=0;pij 0;j+=2) s=10*s+pij-0; printf(“%dn“,s); 程序运行后的输出结果是 ( A) 9284 ( B) 9824 ( C) 69
14、82 ( D) 6385 34 有以下程序 #include voidfun(int*s) staticintj=0; dosj+=sj+1;while(+j 2); main() inti,a10=1,2,3,4,5; for(i=1;i 3;i+)fun(a); for(i=1;i 5;i+)printf(“%d“,ai); printf(“n“); 程序运行后的输出结果是 ( A) 34756 ( B) 5745 ( C) 5795 ( D) 35745 35 有以下程序段 int*p; p=_malloc(sizeof(int); 若要求使 p指向一个 int型的动态存储单元,在横线处
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 选择题 模拟 47 答案 解析 DOC
