1. 在C语言中,变量所分配的内存空间大小
A. 均为一个字节
B. 由用户自己定义
C. 由变量的类型决定
D. 是任意的
2. 下列哪些为C语言中合法的字符常数:
A. ‘AB\0’
B. ‘0’
C. “C Language”
D. ‘AB’
3. 在循环结构的循环体中执行break语句,其作用是:
A. 结束本次循环,进行下次循环
B. 继续执行break语句之后的循环体中各语句
C. 跳出该循环体,提前结束循环
D. 终止程序运行
4. 已定义char x[8]; int i;为了给x数组赋值,以下正确的语句是:
A. x[8]=”Turbo C”;
B. x=”Turbo C”;
C. x[]=”Turbo C”;
D. for(i=0; i<7; i++) x[i]=getchar();
5. 设int a[][4]={0, 0};则以下正确的描述是:
A. 数组a的每个元素都可得到初值0
B. 二维数组a的第一维大小为2
C. 数组a的行数为4
D. 只有元素a[0][0]和a[0][1]可得到初值0,其余元素得不到初值0
6. 表达式3/5的值为:
A. 0
B. 0.6
C. 0.600000
D. 1
7. 下面关于函数的描述中,正确的是:
A. 每个函数都必须要有return语句,返回一个返回值
B. 每个函数中只可能有一个return语句
C. 如果一个函数有两个以上的return语句,它们必须全部被执行到
D. 如果函数没有返回值,可以不要return语句
8. 若已定义变量int x; 以下哪个表达式可以正确判断x的取值是在大于等于2小于等于15之间:
A. 2≤x≤15
B. 2≤x and x≤15
C. 2≤x && x≤15
D. x>=2 && x<=15
9. 若已定义变量char *p, array[]=”C Language”; 要想使指针p指向数组array, 以下哪个语句是正确的:
A. p = *array;
B. p = &array[0];
C. p = ”C Language”;
D. array = p;
10. 以下正确的描述是:
A. 在函数外部定义的变量是局部变量
B. 在函数内部定义的变量是全局变量
C. 函数的形参是局部变量
D. 局部变量不能与全局变量同名
11. 下面程序的运行结果是:
int j=1, k=0,m;
m=( ++j) + (k++);
printf (“%d,%d,%d”, ++m, j++, ++k);
A. 2, 2,1
B. 2, 2, 2
C. 3, 2,2
D. 3, 2, 1
12. 下面程序段的运行结果是:
int a= 2,b=2;
a+=b/=a*=3;
printf (“%d” , a) ;
A. 8.3
B. 6.3
C. 6
D. 8
13. 下面程序的运行结果是:
int flag=1;
void fun( int n)
{ int k ;
for ( k=2;k<=n-1&&flag;k++)
if (n%k= = 0) flag = 0 ; }
void main ()
{ fun (34);
printf (“%d”, flag); }
A. 0
B. -1
C. 2
D. 1
14. 下面程序的运行结果是:
char name[3][20]={“Tea”, “Join”, “May”};
int m=0 ,k;
for (k=1;k<=2;k++)
if(strcmp (name [k],name[m])>0) m=k;
puts ( name[m]);
A. Join
B. Join May
C. May
D. Tea
15. 下面程序的运行结果是:
char str[20]=”This is my book”;
str[4]=’\0’; str[9]=’\0’;
printf (“%d”,strlen (str));
A. 15
B. 5
C. 3
D. 4