C语言题库试题
1、有以下程序
#include
int f(int b[][4])
{ int i,j,s=0;
for(j=0;j<4;j++)
{ i=j;
if(i>2) i=3-j;
s+=b[i][j];
}
return s;
}
void main( )
{ int a[4][4]={{1,2,3,4},{0,2,4,5},{3,6,9,12},{3,2,1,0}};
printf("%d\n",f(a));
}
执行后的输出结果是
A)12 B)11 C)18 D)16
2、以下函数调用语句中,含有的实参个数是
fun_sum(a,a+1,(a+2,a+3));
A 2 B 5 C 3 D 有语法错误
3、下面程序的输出是
A) 1 B) 2 C) 7 D) 10
#include
int m=13;
int fun2(int x, int y)
{ int m=3;
return(x*y-m);
}
void main()
{ int a=7, b=5;
printf("%d\n",fun2(a,b)/m);
}
4、以下叙述中,不正确的是( )
A、在C语言中,逗号运算符的优先级最低
B、在C语言中,sum和SUM是两个不同的变量
C、在程序运行过程中,变量的值不可以改变
D、整型常量可以以十进制、八进制和十六进制整数形式来表示
5、设有 int x=11; 则表达式 (x++ * 1/3) 的值是
A) 3 B) 4 C) 11 D) 12
6、若运行时给变量x输入12,则以下程序的运行结果是
main()
{ int x,y;
scanf(“%d”,﹠x);
y=x>12 ? x+10 : x-12;
printf(“%d\n”,y);
}
A) 0 B) 3 C) 2 D) 1
7、若变量已正确说明为int类型,要给a、b、c输入数据,以下正确的输入语句是
A)read(a,b,c); B)scanf(“ %d%d%d” ,a,b,c);
C)scanf(“ %d%d%f” ,﹠a,﹠b,﹠c); D)scanf(“ %d%d%d”,﹠a,﹠b,﹠c);
8、有以下程序
main()
{ char a,b,c,*d;
a='\'; b='\xbc';
c='\0xab'; d="\0127";
printf("%c%c%c%c\n",a,b,c,*d);
}
编译时出现错误,以下叙述中正确的是
A) 程序中只有a='\';语句不正确
B) b='\xbc';语句不正确
C) d="\0127";语句不正确
D) a='\';和 c='\0xab';语句都不正确
9、当a=1,b=3,c=5,d=5时,执行下面一段程序后,x的值为
A) 1 B) 2 C) 3 D) 6
9、if(a〈b)
if(c〈d) x=1;
else
if(a〈c)
if(b〈d) x=2;
else x=3;
else x=6;
10、有以下程序
#include "stdio.h"
void main()
{
int i=1,j=2,k=3;
if(i++==1﹠﹠(++j==3||k++==3))
printf("%d %d %d\n",i,j,k);
}
程序运行后的输出结果是( )
A)1 2 3 B)2 3 4
C)2 2 3 D)2 3 3
11、有以下程序
#include "stdio.h"
void main()
{
int i=1,j=2,k=3;
if(i++==1﹠﹠(++j==3||k++==3))
printf("%d %d %d\n",i,j,k);
}
程序运行后的输出结果是( )
A)1 2 3 B)2 3 4
C)2 2 3 D)2 3 3
12、以下程序的输出结果是___。
#include
void main ( )
{
int a=1;
a+=(a=8);
printf("%d\n",a;)
}
A. 8
B. 9
C. 16
D. 10
13、以下程序输出的结果是____。
main( )
{ int a=1,b