- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一战到底C语言答题赛
一、选择题(每题5分,共150分)
1、C语言可执行程序的开始执行点是( C )。
A、程序中第一条可执行语句
B、程序中第一个函数
C、程序中的main函数
D、包含文件中的第一个函数
2、阅读下列程序:
#define?MA(x)?x*(x-1)
main()?
{??
int?a=1,b=2;???
printf(%d?\n,MA(1+a+b));
}
则程序的运行结果是(B )
A、6
B、8
C、10
D、12
3、关于注释,下列描述中错误的是(D)。
A、注释只是对代码的解释说明,只在源文件中有效
B、注释可分为单行注释与多行注释
C、单行注释的符号为//
D、多行注释间可以嵌套使用
4、阅读下列函数:
int func(char *x)
{
char *y = x;
while (*y++)
return (y - x - 1);
}
该函数的功能是(A )
A、求字符串的长度
B、比较两个字符串的大小
C、将字符串x复制到字符串y
D、将字符串x连接到字符串y
5、在C语言中,函数的隐含存储类别是( A )。
auto
int
static
D、extern
6、定义变量int a, double d,则表达式a+d的数据类型为(D)。
A、char
B、int
C、float
D、double
7、若有定义int a = 1,b = 2, c = 3, d = 4,则表达式ab?a:cd?a:d的结果为(D)。
A、4
B、3
C、2
D、1
8、在指令MOV AX,[1000H]中,源操作数的寻址方式( B)
A、立即寻址
B、直接寻址
C、段内间接寻址
D、寄存器寻址
9、如果要求在if后的判断条件是a不等于0,则下列选项中能正确表达这一关系的(D)。
A、a0
B、!a
C、a=0
D、a
10、使得DOS功能调用时,子程序的编号应放在(A )寄存器中。
A、AH
B、AL
C、AX
D、任意指定
11、关于算法,下列叙述错误的是(B )。
A、算法正确的程序最终一定会结束
B、算法正确的程序可以有0个输出
C、算法正确的程序可以有0个输入
D、算法正确的程序对于相同的输入一定有相同的结果
12、下列程序段正确的输出结果( B )
int i;
for(i = 1;i7; i++)
{ if(i%3 == 0) continue;
printf(%d\n,i);
}
A、1 2 3 4 5 6
B、1 2 4 5
C、1 2 3
D、1 2
13、有如下结构体定义:
struct aa
{
int r1; double r2; float r3;
union uu{ char u1[5]; long u2[2];}ua;
}mya;
则sizeof(struct aa)的值是( D)。
A、30
B、29
C、24
D、32
14、下列叙述中错误的是(D )。
A、C语言源程序经编绎后生成后缀为.obj的目标程序
B、C程序经过编绎、链接步骤之后才能开成一个真正可执行的二进制机器指令文件
C、用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中
D、C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令
15、在一个单链表中,在指针q指的结点后插入指针p指向的结点,则下列代码正确的是( D)
A、q-next = p-next; p-next = q;
B、p-next = q-next; q = p;
C、q-next = p-next; p-next = q;
D、p-next = q-next; q-next = p;
16、关于C语言中的全局变量,下列描述中正确的是(B )
A、全局变量的作用域一定比局部变量的作用域范围大
B、静态类别变量的生存周期贯穿于整个程序的运行期间
C、函数的形参都属于全局变量
D、未在定义语句中赋初值的auto变量和static变量的初值都是随机值
17、函数f定义如下,执行语句“sum = f(4)+f(2)”后,sum的值应为(C)。
int f(int m){static int i = 0; int s = 0; for(; i=m; i++) s+=i; return s;}
A、13
B、16
C、10
D、8
18、在执行int arr[][3] = {1,2,3,4,5,6}:语句后,arr[1][0]的值为(A )
A、4
B、1
C、2
D、5
19、若有以下定义和语句:double r = 99, *p = r; *p
原创力文档


文档评论(0)