当前位置:编程学习 > C/C++ >>

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语言结一种构体类型的成员引用另外一种结构体成员的值的问题.

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,