1、【
单选题
】
有如下程序:
main( )
{ int n[5]={0,0,0},i,k=2;
for(i=0;i&printf("%d\n",n[k]););
}
该程序的输出结果是( )。
[1分]
答案:
2、【
单选题
】
若变量a、i已正确定义,且i已正确赋值,合法的语句是( )。
[1分]
、
a==l
、
++i
、
a=a++=5
、
a=int(i)
答案:
3、【
单选题
】
下列能正确进行字符串赋值的是( )。
[1分]
、
char s[5]={”ABCI)E”);
、
char s[5]={'A','B','C','D','E'};
、
char*s;s="ABCDE";
、
char*s;printf("%S",s);
答案:
4、【
单选题
】
与“y=(x>0?1:x<0?-1:0)”;的功能相同的if 语句是( )。
[1分]
、
if(x>0)y=1;
else if(x<0)y=1;
else y=0;
、
if(x)
if(x>0)y=1;
else if(x<0)y=-l;
else y=0;
、
y=-l
if(x)
if(x>O)y=1;
else if(x=-0)y=0;
else y=-l;
、
y=0;
if(x>=0)
if(x>=0)y=1;
else y=-l;
答案:
5、【
单选题
】
若有“double a;”,则正确的输入语句是( )。
[1分]
、
scanf("%1f",a);
、
scanf("%f",&a);
、
seanf("%1f",&a);
、
scanf("1e",&a);
答案:
6、【
单选题
】
若变量a、b、x、i都已正确定义并赋值,则以下符合C语言语法的表达式是( )。
[1分]
、
a+=a-=(b=4)*(a=3)
、
x%(-3);
、
a=a*3=2
、
y=float(i)
答案:
7、【
单选题
】
简单的交换排序方法是( )。
[1分]
、
快速排序
、
选择排序
、
堆排序
、
冒泡排序
答案:
8、【
单选题
】
下列程序的输出结果是( )。
#include
int b=2:
int func(int*a)
{ b+=*a;return b;}
main()
{ int a=1,t=2;
t+=func(&a):
printf("%d\n",t);
}
[1分]
答案:
9、【
单选题
】
有以下程序:
void fun2(char a,char b) {printf(”%c%c”,a,b); }
char a='A',b='B';
void funl( ){a='C';b='D';}
main( )
{ funl( );
printf("%c%c",a,b);
fun2('E','F');
}
程序的运行结果是( )。
[1分]
、
CDEF
、
ABEF
、
ABCD
、
CDAB
答案:
10、【
单选题
】
下列程序的输出结果是( )。
#include
main()
{ int a=0,i;
for(i=1;i<5;i++)
{ switch(i)
{ case 0:
case 3:a+=1;
case 1:
case2 :a =2
default:a+=3;
}
}
printf("%d",a);
}
[1分]
答案:
11、【
单选题
】
概要设计中要完成的事情是( )。
[1分]
、
系统结构和数据结构的设计
、
系统结构和过程的设计
、
过程和接口的设计
、
数据结构和过程的设计
答案:
12、【
单选题
】
栈和队列的共同特点是( )。
[1分]
、
都是先进先出
、
都是先进后出
、
只允许在端点处插入和删除元素
、
没有共同点
答案:
13、【
单选题
】
下列可作为C语言赋值的语句的是( )。
[1分]
、
x一3,y=5
、
a=b=6
、
i--;
、
a,c
答案:
14、【
单选题
】
设x=015,则x=x^017的值是( )。
[1分]
、
00001111
、
11111101
、
00000010
、
1 1000000
答案:
15、【
单选题
】
对下列二叉树进行中序遍历的结果是( )。
[1分]
、
ACBDFEG
、
ACBDFGE
、
ABDCGEF
、
FcADBEG
答案:
16、【
单选题
】
下面的函数调用语句中func函数的实参个数是( )。
func((f2v1,v2),(v3,v4,v5),(v6,max(v7,v8)))
[1分]
答案:
17、【
单选题
】
下列程序中c的二进制值是( )。
char a=2,b=4,c;
c=a^b>>2;
[1分]
、
00000011
、
00010100
、
00011100
、
00011000
答案:
18、【
单选题
】
有以下程序:
void funl(char*p)
{ char*q;
q=P;
while(*q!='\O')
{(*q)++;q++;}
}
main()
{ char a[]={"Program"),*P;
p=&a[3];funl(p);
printf("%s\n",a);
}
程序执行后的输出结果是( )。
[1分]
、
Prohsbn
、
Prphsbn
、
Progsbn
、
Program
答案:
19、【
单选题
】
若程序中有宏定义行:#define N 100则以下叙述中正确的是( )。
[1分]
、
宏定义行中定义了标识符N的值为整数100
、
在编译程序对C源程序进行预处理时用100替换标识符N
、
对C源程序进行编译时用100替换标识符N
、
在运行时用100替换标识符N
答案:
20、【
单选题
】
表达式'5'-'1'的值是( )。
[1分]
、
整数4
、
字符4
、
表达式不合法
、
字符6
答案:
21、【
单选题
】
结构化分析方法是面向( )的自顶向下、逐步求精进行需求分析的方法
[1分]
答案:
22、【
单选题
】
表示关系X<=Y<=Z的C语言表达式为( )。
[1分]
、
(X<=Y)&&(Y<=Z)
、
(X<=Y)AND(Y<=Z)
、
(X<=Y<=Z)
、
(X<一Y)&(Y<一Z)
答案:
23、【
单选题
】
有下列函数定义:
int fun(double a,double b)
{return a*b;}
若下列选项中所用变量都已经正确定义并赋值,错误的函数调用是( )。
[1分]
、
if(fun(x,y)){……}
、
z=fun(fun(x,y),fun(x,y));
、
z=fun(fun(X,y)x,y);
、
fun(x,y);
答案:
24、【
单选题
】
以下叙述中不正确的是( )。
[1分]
、
在不同的函数中可以使用相同名字的变量
、
函数中的形式参数是局部变量
、
在一个函数内定义的变量只在本函数范围内有效
、
在一个函数内的复合语句中定义的变量在本函数范围内有效
答案:
25、【
单选题
】
设有定义语句:
int x[-6]={2,4,6,8,5,7),*p=X,i;
要求依次输出X数组6个元素中的值,不能完成此操作的语句是( )。
[1分]
、
for(i=0;i<6;i++)printf("%2d",*(p++));
、
for(i=0;i<6;i++)printf("%2d",*(pq-i));
、
for(i=0;i<6;i++)printf("%2d",*p++);
、
for(i=0;i<6;i++)printf("%2d",*(p)++);
答案:
26、【
单选题
】
若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是( )。
[1分]
、
函数的实参和其对应的形参共占同一存储单元
、
形参只是形式上的存在,不占用具体存储单元
、
同名的实参和形参占同一存储单元
、
函数的形参和实参分别占用不同的存储单元
答案:
27、【
单选题
】
以下函数返回a所指数组中最小的值所在的下标值:
fun(int*a,int n)
{ int i,j=0,P;
p=j;
for(i=j;i<N;I++)&NBSP;
if(a[i]<A[J])____RETURN(P);
}
在下划线处应填入的是( )。
[1分]
、
i=P
、
a[p]=a[i]
、
p=j
、
p=i
答案:
28、【
单选题
】
下述程序用来输出两个字符串前7个字符中对应相等的字符及其位置号,则程序空白上应该填写的是( )。
#include
main()
{ char s1[]="chinese",s2[]="japanese";
int i;
for(i=0;s1[i]='\0'&&s2[i]!='\0';i++)
if(s1[i]==s2[i]&&i<7)
_____________;
}
[1分]
、
putchar(s2[i]);putchar(i)
、
puts(s1[i],i)
、
printf("%c%d\n",s2[i]。i)
、
printf("%C",s1[]);printf("%d\n",i)
答案:
29、【
单选题
】
在16位编译系统上,若有定义“int a[]={10,20,30},*p=&a;”,当执行“P++;”后,下列说法错误的是( )。
[1分]
、
P向高地址移了一个字节
、
P向高地址移了一个存储单元
、
P向高地址移了两个字节
、
P与a+1等价
答案:
30、【
单选题
】
下列程序的输出结果是( )。
#include
main()
{ int a[2][3]={{1,2,3),{4,5,6)),(*p)[3],i;
p=a ;
for(i=0;i<3;i++)
{ if(i<2)
p[1][i]=p[1][i]-1;
else
p[1][i]=1;
}
printf("%d\n",a[o][1]+a[1][1]+a[1][2]);
}
[1分]
答案:
31、【
单选题
】
有如下程序:
main( )
{ int x=23;
do
{printf(”%d”,x--);}
while(!x);
}
该程序的执行结果是( )。
[1分]
、
321
、
23
、
不输出任何内容
、
陷入死循环
答案:
32、【
单选题
】
下列程序的输出结果是( )。
#include
main()
{ int a=3,b=2,c=1;
if(a<B)
if(b<0)c=0;
else c++:
printf("%d\n",c);
}
[1分]
答案:
33、【
单选题
】
有以下程序:
main()
{ int i,j,x=0;
for(i=0;i<2;i++)
{ x++;
for(j=0;j<=3;j++)
{if(j=0;j<=3;j++)
x++;
}
x++;
}
printf("x=%d\n",x);
}
程序执行后的输出结果是( )。
[1分]
答案:
34、【
单选题
】
已知i、j、k为int型变量,若要从键盘输入2、3、4< CR>,使i、j、k的值分别为2、3、4,下列正确的输入语句是( )。
[1分]
、
scanf("%3d,‰3d,%3d",&i,&j,%k);
、
scanf("%d,%d,%d",&i,8Lj,&k);
、
scanf("%d%d%d",&i,&j,&k);
、
scanf("i=%d,j=%d,k=%d",&i,&j,&k);
答案:
35、【
单选题
】
有以下程序:
main()
{ int a=1,b=3,C=5,*P;
int*p1=&a,*p2=&b,*p3=&c;
*p=*p1*(*p2);
}
执行后的输出结果是( )。
[1分]
答案:
36、【
单选题
】
以下程序的输出结果是( )。
main()
{ int a=7,b=8,*P,*q,*r;
p=&a;q=&b;
r=P;P=q;q=r;
printf("%d,%d,%d,%a\n",*P,*q,a,b);
}
[1分]
、
8,7,8,7
、
7,8,7,8
、
8,7,7,8
、
7,8,8,7
答案:
37、【
单选题
】
下述程序的输出结果是( )。
#include
main()
{ char chE2][5]-{”1234”,”5678”},*p[2];
int i,j,s=0;
for(i=0;i<2;i++)
p[i]=ch[i];
for(i=0;i<2;i++)
{ s=p[i][j]一'0';
printf("%d",s);}
}
[1分]
、
6357
、
6135
、
1357
、
691357
答案:
38、【
单选题
】
下面描述中,不属于软件危机表现的是( )。
[1分]
、
软件过程不规范
、
软件开发生产率低
、
软件质量难以控制
、
软件成本不断提高
答案:
39、【
单选题
】
以下程序的输出结果是( )。
main()
{ char*s="12134211";
int v[4]=(0,0,0,0),k,i;
for(k=0;s[k];k++)
{ switch(s[k])
{ case'1':i=0;
case'2':i=1;
case'3':i=2;
case'4':i=3;}
}
v[i]++:
}
for(k=0;k<4;k++)printf("%d",v[k]);
[1分]
、
4 2 1 1
、
0 0 0 8
、
4 6 7 8
、
8 8 8 8
答案:
40、【
单选题
】
对长度为n的线性表进行顺序查找,在最坏情况下需要比较的次数为( )。
[1分]
答案: