1、下列程序运行后的输出结果是 ( ) 。 A
#define f(x)(x*x)
int main()
{
int i1,i2;
i1=f(8)/f(4);
i2=f(4+4)/f(2+2);
printf("%d,%d\n",i1,i2);
}
A.4,3 B.4,4 C64,28 D.64,64
2、若以下选项中的变量已正确定义,则正确的赋值语句是 ( )。 A
A.x3=0x12:
B.x1=26.8%3;
C.1+2=x2;
D.x4=1+2=3;
3、若有定义int aa[8];则不能代表数组元素aa[1]地址的是 ( )。 A
A.&aa[0]++
B.&aa[0]+1
C.aa+1
D.&aa[1]
4、若有定义:int a=1b=10;如图所示,执行下列程序段后,b的值为( )。B
int main()
{
int a=1,b=10;
do{
b-=a;
a++;
}while(b--<0);
printf("%d",b);
return 0;
}
A.9 B.8 C.-1 D.-2
5、若有定义:int x,y;则循环语句的循环次数为:for(x=0,y=0;(y!=123)(x<4);x++)。D
A.不确定次
B.无限次
C.4次
D.3次
6、C语言中,while 和do-while 循环的主要区别是( )。B
A.while的循环控制条件比do-while 的循环控制条件严格
B.do-while 的循环体至少无条件执行一次
C.do-while允许从外部转到循环体内
D.do-while 的循环体可以是复合语句
7、若二维数组y有m列,则排在y[i][j]前的元素个数为 ( )。C
A.i*m+j
B.j*m+i
C.i*m+j-1
D.i*m+j+1C
8、有定义语句:int(*prt)[3] ,则标识符prt ( )。C
A.是一个指向整型变量的指针
B.是一个指针数组名,每个元素都是一个指向整数变量的指针
C.是一个指针,它指向一个具有三个元素的一维
数组
D定义不含法
9、设有程序段:
#define N 3
#define M N+2
float a[M][N];
则数组a的元素个数和最后一个元素分别为( )。A
A. 15,a[4][2] B.15,a[3][5] C.8,a[4][2] D.15,a[5][3]
10、下列程序运行后的输出结果是()。A
int mian()
{
int a=16,b=22,m=0;
switch(a%3)
{
case 0:m+=1;break;
case 1:m+=2;
switch(b%3)
{
case 1:m+=4;break;
default:m+=3;
}
}
printf("%d\n",m);
return 0;
}
A.6 B.3 C.5 D.2
有不懂的可以评论哦!!!