C语言的选择题
1.
以下说易做图确的是( ) (2分)
A. C语言程序总是从第一个定义的函数开始执行
B. 在C语言程序中,要调用的函数必须在main()函数中定义
C. C语言程序总是从main()函数开始执行
D. C语言程序中的main()函数必须放在程序的开始部分
A B C D 2.
对于基类型相同的两个指针变量之间,不能进行的运算是______。 (2分)
A. < B. = C. + D. - A B C D 3.
要说明一个有10个int 元素的数组,应当选择语句 (2分)
A. int a[ 10 ]; B. int a[ 2, 5 ] C. int a[ ]; D. int *a[ 10 ]; A B C D 4.
有如下说明
int a[10] = {1,2,3,4,5,6,7,8,9,10},*p = a;
则数值为9的表达式是______。 (2分)
A. *p+9 B. *(p+8) C. *p+=9 D. p+8 A B C D 5.
有如下程序
main()
{
int a[3][3] = {{1,2},{3,4},{5,6}}, i,j,s = 0;
for(i = 1; i < 3; i++)
for(j = 0; j <= i; j++)
s += a[i][j]];
printf("%d\n",s);
}
该程序的输出结果是______。 (2分)
A. 18 B. 19 C. 20 D. 21 A B C D 6.
有以下程序
main()
{ int a[3][3],*p,i;
p=&a[0][0];
for(i=0;i<9;i++) p[i]=i+1;
printf("%d \n",a[1][2]);
}
程序运行后的输出结果是___________ (2分)
A. 3 B. 6 C. 9 D. 2 A B C D 7.
若有一些定义和语句
#include <stdio.h>
int a=4,b=3,*p,*q,*w;
p=&a; q=&b; w=q; q=NULL;
则以下选项中错误的语句是______。 (2分)
A. *q=0; B. w=p; C. *p=va; D. *p=*w; A B C D 8.
若变量已正确说明为float类型,要通过语句scanf("%f %f %f",&a,&b,&c);给 a赋予10.0,b赋予22.0,c赋予33.0,不正确的输入形式是:______。 (2分)
A. 10 22 33 B. 10.0,22.0,33.0 C. 10.0 22.0 33.0 D. 10 22 33 A B C D 9.
若执行以下程序段,其输出结果是______
int a=0 , b=0 , c=0;
c=(a-=a-5) , (a=b,b+3) ;
printf("%d , %d , %d\n" , a,b,c); (2分)
A. 3,0,-10 B. 0,0,5 C. -10,3,-10 D. 3,0,3 A B C D 10.
下面程序的输出结果是______。
main()
{ int a[]={1,2,3,4,5,6,7,8,9,0},*p;
p=a;
printf("%d\n",*p+9);
} (2分)
A. 0 B. 1 C. 10 D. 9
答案:1 c
2 c
3 a
4 b
5 a
6 b
7 c
8 b
9 b
10 c
其他:1. 以下说易做图确的是(C) (2分)
C. C语言程序总是从main()函数开始执行
2. 对于基类型相同的两个指针变量之间,不能进行的运算是_C_。 (2分)
C. +
3. 要说明一个有10个int 元素的数组,应当选择语句 (2分)
A. int a[ 10 ];
4. 有如下说明
int a[10] = {1,2,3,4,5,6,7,8,9,10},*p = a;
则数值为9的表达式是__B_。 (2分)
B. *(p+8)
5. 有如下程序
main()
{
int a[3][3] = {{1,2},{3,4},{5,6}}, i,j,s = 0;
for(i = 1; i < 3; i++)
for(j = 0; j <= i; j++)
s += a[i][j]];
printf("%d\n",s);
}
该程序的输出结果是__A_。 (2分)
A. 18
6. 有以下程序
main()
{ int a[3][3],*p,i;
p=&a[0][0];
for(i=0;i<9;i++) p[i]=i+1;
printf("%d \n",a[1][2]);
}
程序运行后的输出结果是___B____ (2分)
B. 6
7. 若有一些定义和语句
#include <stdio.h>
int a=4,b=3,*p,*q,*w;
p=&a; q=&b; w=q; q=NULL;
则以下选项中错误的语句是__C__。 (2分)
C. *p=va;
8. 若变量已正确说明为float类型,要通过语句scanf("%f %f %f",&a,&b,&c);给 a赋予10.0,b赋予22.0,c赋予33.0,不正确的输入形式是:_B__。 (2分)
B. 10.0,22.0,33.0
9. 若执行以下程序段,其输出结果是_B__
int a=0 , b=0 , c=0;
c=(a-=a-5) , (a=b,b+3) ;
printf("%d , %d , %d\n" , a,b,c); (2分)
B. 0,0,5
10. 下面程序的输出结果是_C_。
main()
{ int a[]={1,2,3,4,5,6,7,8,9,0},*p;
p=a;
printf("%d\n",*p+9);
} (2分)
C. 10 1.c
2.c
3.A
4.B
5.A
6.B
7.A
8.B
9.a
10.c
上一个:c语言高手进
下一个:关于C语言结一种构体类型的成员引用另外一种结构体成员的值的问题.