2017年国家计算机二级题库2(C语言)
-
设有下列程序:
#include<stdio.h>
#include<string.h>
main()
{ int i;
char s[10],t[10];
gets(t);
for(i=0;i<2;i++)
{ gets(s);
if(strcmp(t,s)<0)strcpy(t,s);
}
printf("%s\n",t);
}
程序运行后,从键盘上输入(<CR>代表回车符):DEF<CR>BADEP<CR>QTHRG<CR>,则程序的输出结果是______。
-
若有下列说明和语句,则对结构体变量st中成员i的引用方式不正确的是( )。
Struct stu
{ int i;
int name;
}st,*p;
p=&St;
- A.st.i
- B.*p.i
- C.(*p).i
- D.p->i
-
软件生命周期中所花费用最多的阶段是
- A.详细设计
- B.软件编码
- C.软件测试
- D.软件维护
-
函数delete(s,i,n)是作用是从字符串s中删除从第i个字符开始的n个字符,请填空。
void delete(char s[],int i, int n)
{ int j,k,length=0;
while(s[length])
【 】 ;
-i;
j=i
}
if( 【 】)
{ k=i+n;
if(i+n<=length)
while(k<length)
s[j++]=s[k++];
s[j]='\0';
}
-
若有以下语句:
typedef struct S
{int g;char h;}T;
以下叙述中正确的是( )。
- A.可用S定义结构体变量
- B.可用T定义结构体变量
- C.S是struct类型的变量
- D.T是struct S类型的变量
-
若有下列定义(设int类型变量占2个字节):
int i=8;
则下列语句:
printf("i=%08d",i);
输出的结果是( )。
- A.i=8
- B.i=00000008
- C.i=08
- D.8
-
- A.75310246
- B.01234567
- C.76310462
- D.13570246
-
以下叙述中错误的是______。
- A.C程序必须由—个或—个以上的函数组成
- B.函数调用可以作为—个独立的语句存在
- C.若函数有返回值,必须通过return语句返回
- D.函数形参的值也可以传回给对应的实参
-
十六进制数FF.1转换成十进制数是 ( )
- A.255.0625
- B.255.125
- C.127.0625
- D.127.125
-
数据的存储结构是指______。
- A.数据所占的存储空间量
- B.数据的逻辑结构在计算机中的表示
- C.数据在计算机中的顺序存储方式
- D.存储在外存中的数据
-
设有下列二叉树:
对此二叉树先序遍历的结果为
- A.ABCDEF
- B.DBEAFC
- C.ABDECP
- D.DEBFCA
-
在面向对象方法中,实现信息隐蔽是依靠( )。
- A.对象的继承
- B.对象的多态
- C.对象的封装
- D.对象的分类
-
有下列程序: fun(int x) {int p; if(x==0‖x==1)return(3); p=x-fun(x-2); return p; } main() {printf("%d\n",fun(7));} 执行后的输出结果是( )。
- A.7
- B.3
- C.2
- D.0
-
人们提出了用______的原理来设计软件,这就是软件工程学诞生的基础。
- A.计算机科学
- B.数学
- C.工程学
- D.运筹学
-
以下程序的输出结果是_______。 main() { int i,a[10]; for(i=9;i>=0;i-)a[i]=10-i; print("%d%d%d,a[2],a[5],a[8]); }
- A.258
- B.741
- C.852
- D.369
-
若要用函数fopen打开一个新的二进制文件,该文件要既能读也能写,则应以哪种方式打开文件( )。
- A.wb
- B.wb+
- C.rb+
- D.rb
-
下列程序的运行结果为( )。
#deflne MAX(x,y)(x)>(y)(x):(y)
main()
{ int a=2,b=3,c=1,d=3,t;
printf("%d\n",(MAX(a+b,c+D) )*100);
}
- A.500
- B.5
- C.4
- D.400
-
请选出可用作C语言用户标识符的一组( )。
- A.void define WORD
- B.a3_b3 _123 IF
- C.For _abc case
- D.2a DO sizeof
-
数据流图用于抽象描述一个软件的逻辑模型,数据流图由一特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是______。
- A.控制流
- B.加工
- C.数据存储
- D.源和潭
-
下列选项中合法的赋值语句是( )。
- A.a=b=34
- B.a=34,b=34
- C.i-1;
- D.m=(int)(x+y);
-
已知字母a的ASCII码为十进制数97,下面程序的输出结果是( )。 #include<stdio.h> main() { char c1,c2; c1='a'+'6'-'0'; c2='a'+'3'-'0'; printf("%c,%c\n",c1,c2); }
- A.输出无定值
- B.d,e
- C.e,f
- D.g,d
-
已知小写字母a的ASCII码为97,大写字母A的ASCII码为65,以下程序的结果是______。 main() { unsigned int a=32,b=66; printf("%c\n", b|b); }
- A.66
- B.98
- C.b
- D.B
-
以下选项中,能用作数据常量的是______。
- A.0115
- B.0118
- C.1.5e1.5
- D.115L