2017年福建省二级C语言试卷真题版 联系客服

发布时间 : 星期二 文章2017年福建省二级C语言试卷真题版更新完毕开始阅读948aaa9db42acfc789eb172ded630b1c59ee9bbb

Word格式

p=a; A) ‘o’ B) ‘w’

C) a[1]的地址 D) a[0]的地址

(75) 若有定义:int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a;,则( B )表达式是错误的。 A) p++ B) a++ C) a[2] D) p[2]

(76) C语言中,对文件操作的一般步骤是( C )。 A) 定义文件指针,读文件,写文件,关闭文件

B) 操作文件,定义文件指针,修改文件,关闭文件 C) 定义文件指针,打开文件,读写文件,关闭文件 D) 打开文件,定义文件指针,读写文件,关闭文件

(76)( D )为正确的变量名。 A) 5_pro B) case C) else D) pro_5

(77) 下面叙述正确的是( B )。 A) 2/3与2%3等价

B) 5/(int)4.0与5/4等价 C) ++2与- -3等价 D) ++2与3等价

(78) 若有定义float x;,要从键盘输入数据6.02赋给x,则应选用( B )语句。 A) scanf (“%8.2f”,&x); B) scanf (“%f”,&x) C) scanf (“%4.2f”,&x) D) scanf (“%1.2f”,&x)

(79) 若有定义:int x,a; 赋值语句a=(x%3= =0)?0:1; 与( D )语句不等价。 A) if (x%3!=0) a=1; else a=0; B) if (!(x%3= =0)) a=1; else a=0; C) if (x%3= =0) a=0; else a=1;

完美整理

Word格式

D) if (x%3) a=0; else a=1;

(80) 以下程序段运行后x的值为( A )。 int i =0,x=2; while (i++<=5) {

x+=2; } A) 14 B) 8 C) 12 D) 10

(81) 下面叙述正确的是( C )。 A) 宏名必须用大写字母表示

B) 一个源程序只能有一个预编译处理命令行 C) 宏展开不占用运行时间,只占用编译时间 D) 预处理命令也是C语句,必须以分号结束

(82)( A )对枚举类型的定义是错误的。 A) enum b{1,2,3}; B) enum a{A,B,C};

C) enum d{X=0,Y=5,Z=9}; D) enum c{D=3,E,F};

(83) C源程序中main( )函数的位置( D )。 A) 必须在自定义函数前面 B) 必须位于程序的最前面 C) 必须在系统库函数后面 D) 可以在自定义函数后面

(84)( A )为合法的常量。 A) 1.23E+8 B) 5,326 C) 3.21E-6.5 D) ‘b_k’

(85) 下面叙述正确的是( A )。

A) C语言中整型与字符型变量的混合运算表达式的结果是整型 B) “abc”+”xxx”是正确表达式

完美整理

Word格式

C) 模运算符”%”两边运算数的数据类型是任意的 D) (3+9)++是正确表达式

(86) 若有定义:int a=1,b=2,c=3,d=4,t=2,k=2; 语句(t=a

(87) 若有定义:int x; char c=’A’;则正确的赋值表达式是( D )。(说明:’A’的ASCII码的十进制值为65,’a’的ASCII码的十进制值为97) A) x=c+’CBA’ B) x=c+’ABC’ C) x=’ABC’ D) x=c+32

(88) 下面叙述正确的是( B )。

A) for循环只能用于循环次数已经确定的情况

B) for循环的循环体可包含多条语句,但必须用花括号{}括起来 C) 在for循环中,不能用break语句跳出循环体 D) for循环是先执行循环体语句,后判断表达式

(89) 若有定义:int a[10],i=2;,能正确引用a数组的是( B )。 A) a(7) B) a[10-i] C) a[10] D) a[9+i]

(90) 若有定义:int a[3][4]={{1,2},{3,4},{5,6,7}};,则a[1][1]的值为( B )。 A) 3 B) 4 C) 1 D) 2

(91) 以下程序段的运行结果是( D )。

union

{ int num1; int num2; }s;

s.num1=20;

完美整理

Word格式

s.num2=30;

printf(“%d”,s.num1); A) 2030 B) 20 C) 50 D) 30

(92) 若有定义:int a,b=5;,语句a=(b/2)+b%2;运行后a的值为( B )。 A) 4 B) 3 C) 0 D) 2

(93) 若有定义:char c1=’A’,c2=’B’;,语句printf(“%d+%d=%d”,c1,c2,c1+c2);运行后的结果为( A )。(说明:’A’的ASCII码的十进制值为65) A) 65+66=131 B) A+B=AB C) A+B=131 D) 65+66=AB

(94) 以下程序的运行结果是( C )。

fun( )

{ static int a=0; a++;

printf(“%d “,a); }

main( ) { int i;

for (i=1;i<=2;i++) fun( ); } A) 0 1 B) 1 1 C) 1 2 D) 0 0

(95) 下面程序运行后,文件d_f.dat的内容是( A )。

main( )

{ FILE *fp; int i=10,j=20; fp=fopen(“d_f.dat”,”w”); fprintf(fp,”%d “,i); fclose(fp);

fp=fopen(“d_f.dat”,”a”);

完美整理