17
以下变量名全部合法的是()
A)ABC、L10、A_B、_a1B)?
123、print、*p、a+b
C)_12、ZHANG、*P、11FD)Li_Li、P、for、101
18
正确的答案为()
main()
{chargrade;
scanf(“%c”,&grade);
switch(grade)
{case‘a’:
printf(“90——100”);
case‘b’:
printf(“80——89”);
case‘c’:
printf(“70——79”);
case‘d’:
printf(“60——69”);
case‘e’:
printf(“不及格”);
}
A)输入:
b输出:
80——89B)输入:
a输出:
90——100
C)输入:
c输出:
70——79D)输入:
e输出:
不及格
19
以下程序输出的结果为()
main()
{inti,sum=0;
i=0;
while(i<6)
{i++;
if(i==2||i==4)
continue;
sum=sum+i;
}
printf(“%d”,sum);
}
A)15B)13C)9D)14
20
已知函数的调用形式:
fread(buffer,size,count,fp);其中buffer代表()
A)一个整型变量,代表要读入的数据项总数
B)一个文件指针,指向要读的文件
C)一个指针,指向要读入数据的存放地址
D)一个存储区,存放要读的数据项
21
执行语句c*=a+b(设有inta=4,b=2,c=2;)后,c的值为()
A)8B)10C)12D)6
22
以下正确的选项是()
A)10++B)(x+y)--C)++(a1-b2)D)(d++)+(d++)
23
以下程序的输出结果为:
()
main()
{inti,j,k,m;
i=3;
j=6;
k=i++;
m=++j;
printf(“%d,%d,%d,%d”,i,j,k,m);
}
A)3,6,3,7B)4,7,4,C)4,7,3,7D)3,6,3,6
24
表达式3+(!
(4<6)&&(3<=7))的值为()
A)3B)4C)错误的表达式D)5
25
以下正确的if语句是()
A)if(a>b);printf(“%d”,a);B)if(a>b)
elseprintf(“%d”,b);temp=a;a=b;b=temp;
elseprintf(“%d”,temp);
C)f(a>b)D)if(a>b)
{temp=a;a=b;b=temp;};{temp=a;a=b;b=temp;}
elseprintf(“%d”,temp);elseprintf(“%d”,temp);
26
以下程序的输出为()
main()
{intx=0,y=-1;
if(x!
=0)
if(x>0)y=1;
elsey=0;
elsey=5;
printf(“%d”,y);
}
A)1B)-1C)0D)5
27
在C语言中,合法的字符常量是()
A)’\184’ B)’\x43’ C)’ab’ D)″\0″
28
若已定义x和y为double类型,则表达式:
x=1,y=x+3/2的值是()
A)1 B)2 C)2.0 D)2.5
29
若t为double类型,表达式t=1,t+5,t++的值是()
A)1 B)6.0 C)2.0 D)1.0
30
若i、j已定义为int类型,则以下程序段中内循环体的总的执行次数是
for(i=5; i; i--)
for(j=0; j<4; j++){…}
A)20 B)24 C)25 D)30
31
设原来a=12,则表达式a+=a-=a=a*a运算后a的值为()
A)24B)-120C)-264D)0
32
合法的数组定义是()
A)staticinta[5]=″string″;
B)staticinta[5]={0,1,2,3,4,5};
C)staticchara=″string″;
D)staticchara[]={65,66,67,68,69,70};
33
若有以下定义和语句:
charcl='b',c2='e';
printf(″%d,%c\n″,c2-c1,c2-'a'+'A');
则输出结果是():
A)2,M B)3,E C)2,E
D)输出项与对应的格式控制不一致,输出结果不确定
34
下面正确的概念是()
A)数组名的规定与变量名不相同。
B)数组名后面的常量表达式用一对圆括弧括起来。
C)数组名代表数组的首地址。
D)在C语言中,一个数组的数组下标从1开始。
35
在以下一组运算符中,优先级最高的运算符是()
A)<= B)= C)% D)&&
36
C语言中,合法的长整型常数是()
A)0LB)4962C)324562&D)216D
37
假定x和y为double型,则表达式x=2,y=x+3/2的值是()
A)3.500000B)3C)2.000000D)3.000000
38
设正x、y均为整型变量,且x=10,y=3,则以下语句的输出结果是()
printf("%d,%d\n",x--,--y);
A)10,3B)9,3C)9,2D)10,2
39
x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是()
A)INPUTx、y、z;B)scanf("%d%d%d",&x,&y,&z);
C)scanf("%d%d%d",x,y,z);D)read("%d%d%d",&x,&y,&z);
40
以下程序的输出结果是()
main()
{inta=3;
printf("%d\n",(a-=a*a));
}
A)-6B)12C)0D)-12
41
a、b、c、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值位为()
A)0B)1C)2D)3
42
以下是合法变量名的一组是()
A)a#b@cB)4dC)f2_G3D)a=b
43
阅读以下程序:
main()
{intx;
scanf("%d",&x);
if(x--<5)printf("%d",x);
elseprintf("%d",x++);
}
程序运行后,如果从键盘上输人5,则输出结果是()
A)3B)4C)5D)6
44
假定w、x、y、z、m均为int型变量,有如下程序段:
w=1;x=2;y=3;z=4;
m=(ww:
x;m=(mm:
y;m=(mm:
z;
则该程序运行后,m的值是()
A)4B)3C)2D)1
45
设有定义:
longx=-123456L;,则以下能够正确输出变量x值的语句是()。
A)printf("x=%d\n",x);B)printf("x=%2d\n",x);C)printf("x=%8dL\n",x);D)printf("x=%ld\n",x);
46
以下选项中,与k=n++完全等价的表达式是():
A)k=n,n=n+1B)n=n+1,k=nC)k=++nD)k+=n+1
47
有以下程序
main()
{inta=15,b=21,m=0;
switch(a%3)
{case0:
m++;break;
case1:
m++;
switch(b%2)
{default:
m++;
case0:
m++;break;
}
}
printf("%d\n",m);
}
程序运行后的输出结果是()
A)1B)2C)3D)4
48
以下程序的输出结果是:
main()
{inta=5,b=4,c=6,d;
printf(“%d\n”,d=a>b?
(a>c?
a:
c):
(b));
}
A)5B)4C)6D)不确定
49
以下说法不正确的是():
A)C程序是由函数构成的
B)一个C源程序可以包含一个或多个main()函数。
C)C程序总是从main函数开始执行的,而不论main函数在整个程序中的位置。
D)C程序中,每个语句和数据定义的最后都必须有一个分号。
50
执行下面的语句之后,x的值是():
x=(x=3,6*3);
A)3B)6C)18D)1
51
下面表达式中a的值为():
(a为int型,且原来它的值为12)
a*=a-5+3
A)10B)120C)142D)表达式错误
52
设x、y、t均为int型变量,则执行语句:
x=y=3;t=++x||++y;后,y的值为()
A)不定值B)4C)3D)1
53
有以下程序段
intx=3
do
{printf("%d",x-=2);}
while(!
(--x));
其输出结果是
A)1B)30C)1-2D)死循环
54
下面定义的数组a的数组元素个数是():
inta[4][6];
A)15B)24C)4D)6
55
有如下的定义并初始化,则数组元素a[3]的值是:
inta[4]={23,12,3,65};
A)23B)12C)3D)65
56
C语言中用于结构化程序设计的三种基本结构是:
A、顺序结构、择结构、循环结构
B、if、switch、break
C、for、while、do-while
D、if、for、continue
57
以下运算符中优先级最高的是()
A)
=
58
当a=1,b=3,c=5,d=4时,执行完以下一段代码后x的值为()
if(a
if(celse
if(aif(belsex=3;
elsex=6;
elsex=7;
A)1B)2C)3D)6
59
执行以下一段代码后,变量a,b,c的值分别是()
intx=10,y=9;
inta,b,c;
a=(--x==y++)?
--x:
++y;
b=x++;
c=y;
A)a=9,b=9,c=9B)a=8,b=8,c=10C)a=9,b=10,c=9D)a=1,b=11,c=10
60
以下数组定义中不正确的是
A)inta[2][3];B)intb[][3]={0,1,2,3};
C)intc[100][100]={0};D)intd[3][]={{1,2},{1,2,3},{1,2,3,4}};
61
printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列,如果字符串长度小于5,则输出按方式()
A)左起输出该字符串,右补空格B)字符串长度从左到右全部输出
C)右对齐输出字符串,左补空格D)输出错误信息
62
以下正确的选项是()
A)10++B)(x+y)--C)++(a1-b2)D)(d++)+(d--)
63
以下程序的输出结果为:
()
main()
{inti,j,k,m;
i=3;
j=6;
k=++i;
m=j+i--;
printf(“%d,%d,%d,%d”,i,j,k,m);
}
A)3,6,3,10B)4,7,4,9C)3,7,3,11D)3,6,4,10
64
表达式3+(!
(7<1)||(3<=7))的值为()
A)3B)4C)错误的表达式D)5
65
函数调用:
strcat(strcpy(str1,str2),str3)的功能是()
A)将串str1复制到串str2中后再连接到串str3之后
B)将串str1连接到串str2之后再复制到串str3之后
C)将串str2复制到串str1中后再将串str3连接到串str1之后
D)将串str2连接到串str1之后再将串str1复制到串str3中
66
下面程序的输出是
main()
{unsigneda=32768;
printf(″a=%d\n″,a);
}
A)a=32768 B)a=32767 C)a=-32768 D)a=-1
67
运行以下程序的结果为()
main()
{
intnumber=0;
while(number<=1)
{number++;
printf(“%d\n”,number);
}
}
A)0B)1
C)2D)1
2
68
以下斜述正确的是()
A)在C程序中,main函数必须位于程序的最前面。
B)在C程序中每行只能写一条语句。
C)C语言本身没有输入输出语句。
D)在对C程序进行编译过程中,可以发现注释中的拼写错误。
69
已知各变量的说明如下:
inti=8,k,a,b;
unsignedlongw=5;
doublex=1.43,y=5.2;
则以下符合C语言语法的表达式是()
A)a+=a-=(b=4)*(a=3)B)a=a*3=2C)x%(-3)D)y=float(i)
70
以下程序段不是死循环的是()
A)inti=100;
while
(1)
{i=i%100+1;
if(i>100)break;
}
B)for(;;);
C)intk=0;
do{++k;}
while(k>0);
D)ints=36;
while(s);
--s;
71
判断字符串s1是否大于字符串s2,应当使用()
A)if(s1>s2)B)if(strcmp(s1,s2))C)if(strcmp(s2,s1))D)if(strcmp(s1,s2)>0)
72
以下关于宏替换的斜述不正确的是()
A)宏替换不占用运行时间B)宏名无类型
C)宏名必须用大写字母表示D)对宏命令的处理是在连接时进行的
73
若有宏定义如下:
#defineX5
#defineYX+1
#defineZY+Y/2
则执行以下printf语句后,输出的结果是()
inta;a=Y+2;
printf(“%d\n”,Z);
printf(“%d”,--a);
A)7B)12C)9D)11
6656
74
若有语句inta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}}则以下说法不正确的是()
A)a表示指向二维数组的指针B)a+1表示第1行首地址
C)a[1]+2,与*(a+1)+2表示第1行第2列元素地址D)*(a+2)与a[2]是等价的。
75
以下程序的输出结果是
main()
{inti,a[10];
for(i=9;i>=0;i--)a[i]=10-i;
printf("%d%d%d",a[2],a[5],a[8]);
}
A)258B)741C)852D)369
76
当说明一个结构体变量时系统分配给它的内存是()
A)各成员所需内存量总和
B)结构体中第一个成员所需内存量
C)结构体占内存最大者所需容量
D)结构体第后一个成员所需内存量
77
可以作为函数fopen中第一个参数的正确格式是()
A)c:
user\text.textB)c:
\user\text.text
C)”c:
\user\text.text”D)”c:
\\user\\text.text”
78
已知函数的调用形式:
fwrite(buffer,size,count,fp);其中buffer代表()
A)一个整型变量,代表要读入的数据项总数B)一个文件指针,指向要读的文件
C)一个指针,指向要读入数据的存放地址
D)一个指针,指向要输出数据的地址
79
以下说法不正确的是()
A、0||a==aB、1&&a==aC、1||a==1D、0&&a==a
80
下面正确的概念是()
A)数组名的规定与变量名不相同。
B)数组名后面的常量表达式用一对圆括弧括起来。
C)以数组名作为参数时,采取的是“值传送”方式。
D)在C语言中,一个数组的数组下标从0开始。
81
对数组初始化正确的方法是()
A)staticinta(5)={1,2,3,4,5};B)staticinta[5]={1,2,3,4,5};
C)staticinta[5]={1—5};D)staticinta[5]={0,1,2,3,4,5};
82
若有说明:
inti,j=7,*p=&i;则与i=j;等价的语句是()
A)i=*P;B)*p=*&j;C)i=&j;D)i=**p;