a==10||a==11||a==12||a==13
a>9&&a<14
!
(a<=9)&&!
(a>=14)
~A
~~~1
以下程序运行的结果是()。
*#include
*main()
*{inta=3,b=4,c=8,d=4,m=1,n=3;
*printf("%d\n",(m=a>b)&&(n=c>d))
*}
0
1
2
3
~A
~~~1
能正确表示“当x的取值范围在[1,10]和[100,110]范围内为真,否则为假”的表达式是()。
(x>=1)&&(x<=10)&&(x>=100)&&(x<=110)
(x>=1)||(x<=10)||(x>=100)||(x<=110)
(x>=1)&&(x<=10)||(x>=100)&&(x<=110)
(x>=1)||(x<=10)&&(x>=100)||(x<=110)
~C
~~~1
若有定义:
inta=4,b=5;floatx=3.4,y=2.1;则下面表达式的值为()。
*(float)(a+b)/2+(int)x%(int)y
5.5
55
5.500000
55.00000
~C
~~~1
若a为int型变量,则执行以下语句后,a的值为()。
*a=5;a+=a-=a*a;
25
-40
40
-14
~B
~~~1
若已定义x和y为整型变量,且x=7,则表达式y=2.3+x/2的值是()。
6
5
5.0
6.0
~B
~~~1
有以下程序:
*main()
*{inty=1,x=2,z=3;
*printf("%d,%d\n",(++x,y++),z+2);
*}
*执行后的输出结果是()。
3,5
2,5
3,3
1,5
~D
~~~1
以下程序的输出结果是()。
*main()
*{inta=1,b=2;
*printf("%d,%d\n",--a,++b);
*}
1,2
1,3
0,2
0,3
~D
~~~1
C语言程序的执行是()。
从程序的主函数开始,到程序的主函数结束
从程序的主函数开始,到程序的最后一个函数结束
从程序的第一个函数开始,到程序的最后一个函数结束
从程序的第一个函数开始,到程序的主函数结束
~A
~~~1
下面说法正确的是()。
一个C程序可以有多个函数
一个C语言的函数中只允许有一对花括号
C语言一个语句可以写在一行内,也可以写在多行内
在对C程序进行编译时,可以发现注释行中的拼写错误
~C
~~~1
以下说法不正确的是()。
C程序是以函数为基本单位的,整个程序由函数组成
C语言程序的一条语句可以写在不同的行上
C程序的注释行对程序运行不起作用,所以注释应该尽可能少写
C程序的每个语句都以分号结束
~C
~~~1
以下标示符不是关键字的是()。
break
char
Switch
return
~C
~~~7
若要求定义具有10个int型元素的一维数组a,则下列定义语句中错误的是()。
#defineN10
*inta[N]
#definen5
*inta[2*n]
inta[5+5]
intn=10,a[n]
~D
~~~7
下设有如下程序段
*chars[20]="Beijing",*p;
*p=s;
*则执行p=s;语句后,以下叙述正确的是()。
可以用*p表示s[0]
s数组中元素的个数和p所指字符串长度相等
s和p都是指针变量
数组s中的内容和指针变量p中的内容相同
~A
~~~7
下列数组定义中错误的是()。
intx[][3]={0};
intx[2][3]={{1,2},{3,4},{5,6}};
intx[][3]={{1,2,3},{4,5,6}};
intx[2][3]={1,2,3,4,5,6};
~B
~~~7
有以下程序:
*main()
*{inti,t[][3]={9,8,7,6,5,4,3,2,1};
*for(i=0;i<3;i++)printf("%d",t[2-i][i]);
*}
*程序执行后的输出结果是()。
753
357
369
751
~B
~~~7
若有定义语句:
inta[3][6];,按内存中的存放顺序,a数组的第10元素是()。
a[0][4]
a[1][3]
a[0][3]
a[1][4]
~B
~~~7
以下错误的定义语句是()。
intx[][3]={{0},{1},{1,2,3}};
intx[4][3]={{1,2,3},{1,2,3},{1,2,3}};
intx[4][]={{1,2,3},{1,2,3},{1,2,3}};
intx[][3]={1,2,3,4};
~C
~~~7
以下不正确的定义语句是()。
doublex[5]={1.0,2.0,3.0,4.0,5.0};
inty[5]={0,1,2,3,4,5}};
charc[]={'1','2','3','4','5'};
charc2[]={'a','b','c'};
~B
~~~7
若有以下定义,则正确引用数组元素的是()。
*inta[5],*p=a;
*&a[5]
*a+2
*(p+5)
*(a+2)
~D
~~~7
若有说明:
inta[][3]={0,0};则不正确的叙述是()。
数组a的每个元素的初值都是0
数组a的第一维大小为1
数组a的行数为1
只有元素a[0][0]和a[0][1]初值为0,其余元素得不到初值0
~D
~~~7
下列二维数组初始化语句中,不正确的是()。
intb[][2]={1,2,3,4,5,6,7};
intb[3][5]={0,0,0};
intb[][4]={{1,2},{3,4,5},{6}};
intb[3][2]={(1,2),(3,4),(5,6)};
~D
~~~7
有以下程序:
*main()
*{intaa[5][5]={{1,2,3,4},{5,6,1,8},{5,9,10,2},{1,2,5,6}};
*ints=0,i;
*for(i=0;i<4;i++)
*s+=aa[i][2];
printf("%d",s);
*}
*程序运行后的输出结果是()。
26
19
10
20
~B
~~~7
###
~~~1
若已知:
a=1,b=2,则表达式:
!
(a]。
~~~1
若s是int型变量,且s=8,则s%3+(s+1)%3表达式的值为[<2>]。
~~~1
若x和n均是int型变量,且x=12,n=5,则执行y=x%=(n%=2)表达式后y的值为[<0>]。
###
~~~1
以下说法中正确的是()。
C语言程序的执行都是从程序的第一个函数开始
在C语言程序中,要调用的函数必须在main()函数中声明
任何C语言程序的执行都是从main()函数开始
C语言程序中的main()函数必须放在程序的最前面
~C
~~~1
以下合法的标识符是()。
123
#256
a.55
abhj1_2_3
~D
~~~1
以下程序的运行结果是()。
#include
*main()
*{inta=3,b=4,c=8,d=4,m=1,n=3;
*printf("%d\n",(m=a>b)&&(n=c>d));
*}
0
1
2
3
~A
~~~1
有定义语句:
intb;charc[10];,则正确的输入语句是()。
scanf("%d%s",&b,&c);
scanf("%d%s",&b,c);
scanf("%d%s",b,c);
scanf("%d%s",b,&c);
~B
有下列程序:
*main()
*{intm,n,p;
*scanf("m=%dn=%dp=%d",&m,&n,&p);
*printf("%d%d%d",m,n,p);
*}
*若想从键盘上输入数据,使变量m的值为123,n的值为456,p的值为789,则正确的输入是()。
m=123n=456p=789
m=123n=456p=789
m=123,n=456,p=789
123456789
~A
~~~1
要求当A的值为奇数时,表达式的值为“假”,A的值为偶数时,表达式的值为“真”。
则以下能满足要求的是()。
A%2==1
!
(A%2==0)
!
(A%2)
A%2
~C
~~~1
当把四个表达式用作if语句的控制表达式时,有一个选项与其他三个选项含义不同,这个选项是()。
k%2
k%2==1
(k%2)!
=0
!
k%2==1
~D
~~~1
下列不能正确计算代数式(1/3)sin2(1/2)值的C语言表达式是()。
1/3*sin(1/2)*sin(1/2)
sin(0.5)*sin(0.5)/3
pow(sin(0.5),2)/3
1/3.0*pow(sin(1.0/2),2)
~A
~~~1
在printf的格式字符中,e格式字符的作用是()。
以十六进制无符号形式输出整数
以带符号的十进制形式输出整数
以指数形式输出实数
以字符形式输出,且只输出一个字符
~C
~~~1
若要从键盘读入含有空格字符的字符串,应使用函数()。
getc()
gets()
getchar()
scanf()
~B
当a=4,b=5,c=7,d=6时,执行下面一段程序:
*if(a
*if(c*else
*if(a*if(b*elsex=3;
*elsex=4;
*elsex=5;
*执行后,x的值为()。
1
2
3
4
~B
~~~1
下面4个关于C语言的结论中错误的是()。
可以用do...while语句实现的循环一定可以用while语句实现
可以用for语句实现的循环一定可以用while语句实现
可以用while语句实现的循环一定可以用for语句实现
do...while语句与while语句的区别是关键字“while”出现的位置不同
~D
~~~1
关于字符常量,以下叙述正确的是()。
空格不是一个字符常量
字符常量能包含大于一个的字符
单引号中的大写字母和小写字母代表的是相同的字符常量
所有的字符常量都可以作为整型量来处理
~D
~~~1
有以下函数定义:
*intfun(doublea,doubleb)
*{returna*b;}
*若以下选项中所有变量都已经定义并赋值,错误的函数调用是()。
if(fun(x,y)){......}
z=fun(fun(x,y),fun(x,y));
z=fun(fun(x,y)x,y);
fun(x,y);
~C
~~~1
执行以下语句段后,xy的值是()。
*int*pt,xy;
*xy=200;
*pt=&xy;
*xy=*pt+30;
200
170
260
230
~D
~~~1
下面各语句行中,能正确进行赋值字符串操作的是()。
chars[5]={'a','b','c','d','e'};
char*s;gets(s);
char*s;s="ABCDEF";
chars[5];scanf("%s",&s);
~B,C
~~~1
以下有关宏的不正确的是()。
宏名无类型
宏定义不做语法检查
宏名必须用大写字母表示
双引号中出现的宏名不进行替换
~C
~~~1
下面说法正确的是()。
一个C程序可以有多个主函数
一个C语言的函数中只允许有一对花括号
C程序的书写格式是自由的,一个语句可以写在一行上,也可以写在多行内
在对C程序进行编译时,可以发现注释行中的拼写错误
~C
若a为int型变量,则执行以下语句后,a的值为()。
*a=5;
*a+=a-=a*a;
25
-40
40
-14
~B
能正确表示逻辑关系“a>=5或a<=0”的C语言表达式是()。
a>=5ora<=0
a>=0||a<=5
a>=5&&a<=0
a>=5||a<=0
~D
以下能正确表示x在-5到5(含-5和5)内,值为“真”的表达式是()。
(x>=-5)&&(x<=5)
!
(x>=-5||x<=5)
x<5&&x>-5
(x<-5)||(x<5)
~A
以下关于运算符优先顺序描述中正确的是()。
算术运算符<关系运算符<赋值运算符<逻辑运算符
赋值运算符<逻辑运算符<关系运算符<算术运算符
逻辑运算符<关系运算符<算术运算符<赋值运算符
关系运算符<算术运算符<赋值运算符<逻辑运算符
~B
~~~1
以下合法的C语言赋值语句是()。
a=b=1
a=inta+b
a=2,b=3
i++;
~D
~~~1
若i、j已定义成int型,则以下程序段中内循环体的总执行次数是()。
*for(i=6;i>0;i--)
*for(j=0;j<4;j++){...}
2