
一.选择题
1、C 语言规定:在一个源程序中,main 函数的位置_________。
A. 只能在程序头部; B. 可以在程序如何位置;
C. 必须在#include 和#define 语句后面;D. 只能在程序最后面。
2、在使用 TurboC2.0 环境编辑程序时,运行某程序使用的菜单项为______。
A. RUN B. FILE C. EDIT D. OPTION
3、下面标识符中正确的是_________。
A. $a#b B. sum C. 1A23BC D. Y•M•D
4、在 C 语言中(以 16 位 PC 机为例),存储一个整型、字符型、双精度实型变量所需的
字节数是_________。
A. 4、1、4 B. 4、1、4
C. 2、1、8 D. 2、2、8
5、下面的变量说明中_____________是正确的。
A. Char:a,b,c; B. Char a,b,c;
C. Char a;b;c; D. Char a,b,c
6、判断 char 型变量 ch 是否为大写字母的正确表达式是________。
A. ‘A’<=ch<=‘Z’ B. (ch>=‘A’)&(ch<=‘Z’)
C. (ch>=‘A’)&&(ch<=‘Z’) D. (‘A’<= ch)AND(‘Z’>= ch)
7、已知 int x=10,y=20,z=30;以下语句执行后 x,y,z 的值是_________。
if(x>y) z=x; x=y; y=z;
A. x=10, y=20, z=30 B. x=20, y=30, z=20
C. x=20, y=30, z=10 D. x=20, y=30, z=30
8、下列程序段运行结果是_________。
int n=0; while(n++<=2); printf(“%d”,n);
A. 2 B. 3 C. 4 D. 死循环
9、下面程序的功能是输出如右图所示形式的金字塔图案。
main( )
{ int i,j;
for(i=1;i<=4;i++)
{ for(j=1;j<=4-i;j++) printf(“ “);
for(j=1; j<=_____; j++) printf(“*”);
printf(“\n”);
}
}
在下划线处应填入的是_________________
A. i B. 2*i-1 C. 2*i+1 D. i+2
10、下列数组定义方式不正确的语句是_________。
A. int x[3]={12,13,14,15};
B. char y[]={‘h’,‘e’,‘l’,‘l’,‘o’};
C. char x[5];
D. char y[][10]={“Hi”,”Hello”};
11、C 语言规定,数组名做实参时,它和对应形参之间的数据传递方式为_____。
A. 由实参传给形参,再由形参传回给实参 B. 单向值传递
C. 地址传递 D. 由用户指定传递方式
12、以下正确的函数定义形式是_______。
A. double fun(int x,y); B. double fun(int x;int y);
C. double fun(x,y); D. double fun(int x,int y);
13、执行下列程序后,其结果为_________。
int a[]={2,4,6,8,10,12},*p;
p=a;
*(p+4)=2;
printf( “%d,%d\n”,*p,*(p+4) );
A. 2,2 B. 0,10 C. 2,10 D. 0,2
14、下面程序的输出结果是:________。
#define POWER(x) (x*x)
main()
{ int i = 4; printf("%d", POWER( i-2) ); }
A. -9 B. -7 C. 5 D. -6
15、有下列结构体,对该结构体变量 stu 的成员项引用不正确的是_______。
*
***
*****
*******