华清远见C补习测试题

2019-08-30 13:54

Linux就业班C语言基础补习课程测验

日期: 姓名 分数

一、 选择题下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。请

将正确的答案填在答题卷相应的位置。(每题2分,共30分)

(1) 以下关于C语言的叙述中正确的是

A)C语言中的注释只能出现在语句或表达式的两边 B)C语言中的变量可以在使用之前的任何位置进行定义

C)在C语言算术表达式的书写中,运算符两侧的运算数类型必须一致 D)C语言的数值常量中夹带空格不影响常量值的正确表示

(2) 以下叙述错误的是

A)一个C程序可以包含多个不同名的函数 B)一个C程序只能有一个主函数

C)C程序在书写时?有严格的缩进要求?否则不能编译通过 D)C程序的主函数必须用main作为函数名

(3) 有以下程序

#include main() {

int A=0,B=0,C=0; C=(A-=A-5); (A=B,B+=4);

printf(“%d, %d, %d\\n”,A,B,C); } 程序运行后输出的结果是

A) 0,4,5 B) 4,4,5 C) 4,4,4 D) 0,0,0

(4) 有如下嵌套的if语句

if(a

if(a

if(b

以下选项中与上述if语句等价的语句是 A) k=(a

B) k=(ac) ? b:c); C) k=(a

D) k=(a

(5) 有以下程序

#include main() { int s = 0,n; for (n=0; n<3; n++) { switch(s) { case 0: case 1: s+=1; case 2: s+=2;break; case 3: s+=3; Default: s+=4; } printf(\ }

} 程序运行后的结果是

A) 1,2,4 B) 1,3,6 C) 3,10,10 D) 3,10,14

(6) 有以下程序(a,b,c的ascii码值分别为97,98,99)

#include main ( ) {

char *s={\ do {

printf(\ ++s; } while (*s);

} 程序运行后的输入结果是

A)abc B)789 C)7890 D)979899

(7) 有以下程序

#include main() {

int i,j,m=1; for(i=1;i<3;i++) {

for(j=3;j>0;j--) {

if(i+j > 3)

}

continue; m *= i*j;

}

printf(“m=%d\\n”,m); }

程序运行后的输出结果是

A) m=6 B) m=2 C) m=4 D) m=5

(8) 下列语句组中,正确的是

A) char *s;s=”Olympic”; B) char s[7]; s=”Olympic”; C) char *s;s={“Olympic”}; D) char s[7]; s={”Olympic”};

(9) 以下关于return语句的叙述中正确的是

A)一个自定义函数中必须有一条return语句

B)一个自定义函数中可以根据不同情况设置多条return语句 C)定义成void类型的函数中可以有带返回值的return语句

D)没有return语句的自定义函数在执行结束时不能返回到调用处

(10) 设有定义double a[10], *s=a;,以下能够代表数组元素a[3]的是

A)(*s)[3] B)?*(s+3) C) *s[3] D)?*s+3

(11) 若有以下定义和语句

char s1[10]=”abcd!”,?s2=”\\n123\\\\”;

printf (”%d %d\\n”, strlen(s1), strlen(s2) ); 则输出结果是

A) 5 5 B) 10 5 C) 10 7 D) 5 8

(12) 有以下程序

#include int f(int m) {

static int n = 0; n += m; return n; }

main ( ) {

int n=0;

printf(“%d,”, f(++n)); printf(“%d\\n”, f(n++)); } 程序运行后的输出结果是

A)1,2 B)1,1 C)2,3 D)3,3

(13) 以下选项中叙述错误的是

A)C程序函数中定义的赋有初值的静态变量,每调用一次函数,赋一次初值

B)在C程序的同一函数中,各复合语句内可定义变量,其作用域仅限于本复合语句内 C)C程序函数中定义的自动变量,系统不自动赋确定的初值 D)C程序函数的形参不可以说明为static型变量

(14) 有以下程序

void fun(char *w, int m) {

char s,*p1, *p2; p1 = w;

p2 = w+m-1; while (p1

s=*p1; *p1=*p2; *p2=s; p1++; p2--; } }

main( ) {

Char a[]=\ fun( a, strlen(a) ); puts(a);

} 程序运行后的输出结果是

A)654321 B)116611 C)161616

(15) 有以下程序

void swap(int a, int b) { int t = a; a = b; b = t; }

int main() { int m = 3, n = 4; swap(m++, ++n); printf(\}

程序运行后的输出结果是

D)123456 A)5,4 B)4,5 C)3,4 D)4,3

二、 填空题,请将每空正确的答案写在答卷的相应位置。((1)—(8)题,每题

2分,第(9)题6分,共22分)

(1) 设a、b、c都是整型变量?如果a的值为1?b的值为2?则执行c=a++||b++语句后变量a、b

的值分别是 。

(2) unsigned char a = 255; char b=a; printf(“%d”,b); 输出结果为: 。 (3) 请写出浮点型变量a与10比较是否相等的表达式: 。 (4) int i=10, j=10, k=3; k*=i+j; k最后的值是 40 ?

(5) int a=1, b=2, c=a>=1||++b; b++; printf(“%d”, b); 输出结果为: 3 。 (6) void main()

{

int x = 1,y = 2;

printf(\ printf(\ printf(\

}上面程序输出的结果是: 2 , 3 , 。

(7) 以下程序段的输出结果是 “red”,”green”,”blue”main() {

char *ch[4]={“red”,”green”,”blue”}; int i=0;

while (ch[i]) {

putchar (ch[i][0]); i++; } }

(8) 有以下程序

void fun(char *str) {

char temp; int n,i;

n = strlen (str); temp = str[n-1]; for (i=n-1; i>0; i--) str[i] = str[i-1]; str[0] = temp; }

main() {

char s[50];

scanf(“%s”,s); fun(s);

printf(“%s\\n”,s);

乱码 。


华清远见C补习测试题.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:现代光电子技术实验专题-李旭东

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: