1. 如有
static char stu[20]=”I like C !”;
char *p=stu;
while(*p)中的*p 与下面条件表达式等价的是_________。
A)
A) p==0 B) p=!0 C) *p!=’\0’ D) *p==’\0’
2. 若有以下定义和语句:
char *s1="abcde",*s2="abcd";
printf("%d\n",strlen(strcpy(s1,s2)));
则输出的结果是_______ 。
A )5 . B. 4 C. 9 D. 10
3. 已知有以下的说明,那么执行语句 a=p+2;后, a[0]的值等于多少?(单选)
float a[3]={1.2,45.6,-23.0};
float *p=a;
A. 1.2 B. 45.6 C. -23.0 D. 语句有错
4.
已知:int a[ ]={1,2,3,4,5,6,7,8,9,10,11,12} ,*p=a;则值为 3 的表达式
是______。
A) p+=2,*(p++
) B) p+=2,*++ p C) p+=3,*p++ D) p+=2,++*p
5. 阅读程序,选择程序的输出结果。
#include <stdio.h>
void main( )
{ static char a[]="Program",*ptr;
for(ptr=a;ptr<a+7;ptr+=2)
putchar(*ptr); }
A)Program B)Porm C)
有语法错误
D)Por ,
6. 阅读程序,选择程序的输出结果。
#include<stdio.h>
main( )
{ static char a[ ]=”language”,b[ ]=”program”;
char *ptrl=a,*ptr2=b
;
int k
;
for(k=0;k<7;k++)
if(*(ptrl+k)= =*(ptr2+k))
printf(“%c”,*(ptrl+k))
;
}
A) gae B) ga C) language D)有语法错误
7. 命令行参数定义正确的写法_______ 。
A) main(int z,char *y[])
B)main(int argc,char argv[])
C)main(char *argc,char *argv[])
D)main(int argv,int *argv[])
8. 下面对枚举变量的定义中,正确的是_______
。
A. enum color{red,blue,green;}a,b;
B. enum color={red,blue,green}a,b
;
C. enum color={“red” ”
, blue” ”
, green”}a,b;
D. enum color{red,blue,green}a,b;
9. 执行以下语句后的输出结果为_______ 。