-
有定义语句:int a=10;,则表达式a++的值是10。 ( A )
A.正确
B.错误
-
以下程序段完全正确的是( A )
A.int k, *p=&k; scanf(“%d”,p);
B.int k,*p: *p=&k;scanf(“%d”,p);
C.int *p;scanf(“%d”,p);
D.51 -
以下程序段运行后,循环体运行的次数为(C)
int i=0,a=5;
for(;i<100;i++) i=a+i;
A.15
B.16
C.17
D.= -
有定义:int i=2,j=5;则表达式(++j)(i–)的值为( C)
A.10
B.5
C.12
D.(*(a+i))j++是先加,i–是操作完再减
-
有如下宏定义#define N 10,表示用宏名代替一个( C )。
A.整数
B.常量
C.字符串
D.42注意后面还有一个,所以是字符串
-
以下能对二维数组a进行正确初始化的语句是( ABD)
A.int a[2][3]={{1},{3,4,6}};
B.int a[][3]={1,2,3,4};
C.int a[2][3]={{1,2},{3,4},{5,6}};
D.int a[2][3]={0}; -
下面关于C语言中字符数组的描述正确的是( ABD )
A.可以用输入语句把字符串整体输入给字符数组
B.不可以用赋值语句给字符数组名赋字符串
C.字符数组只能存放字符串
D.字符数组中的内容不一定是字符串 -
若有如下定义:
struct Stu{ int num; char[10] name; char sex; } stu1,*p; p=&stu1;
则对num成员正确的引用有( AB )。
A.(*p).a
B. p->a
C.(*p).stu1.a
D.p ->stu1.a -
下面程序的运行结果是( A )。
int fun(char *str) { char *s = str; while (*s++); return (s - str - 1); } void main() { char str1[]="abcde"; char str2[]="ABCDE"; printf("%d",fun(str1)); }
A.5
B.0
C.正整数
D.42
函数的功能是计算字符串长度,s++即指到了字符串末尾,而str扔指向首部,那么相减再减去1,即减去一个’/0’,即字符串长度 -
C语言中,表达式必须以分号结尾。B
A.正确
B.错误函数以}结束
-
下面选项正确的是( ABCD )。
A.函数参数可以是结构体类型
B.联合类型可以作为函数参数
C.结构体指针可以作为函数参数
D.结构体的成员变量可以作为函数参数 -
有定义:int a,b;则表达式(a=5,b=5,b*2,b++,a+b)的值是( C )
A.12
B.13
C.11
D.7逗号表达式的结果由最后一条语句决定,b*2不改变表达式的值,b++之后b为6,最后a+b得11
-
C语言的整型数据在内存中的存储形式是ASCII码。 ( B )
A.正确
B.错误C语言整形数据在内存中以二进制补码形式存放
-
函数
void foo() { static int val; }
变量val的内存地址位于( A )。
A.未初始化数据段
B.已初始化数据段
C.堆
D.8 -
文件指针fp指向文件末尾时,feof(fp)的返回值是( D )。
A.EOF
B.NULL
C.0
D.19若fp已经指向文件末尾,则feof(fp)函数值为“真”,即返回非零值;否则返回0