给出以下定义:char a[]=″abc″;char b[]={′a′,′b′,′c′};则正确的叙述是()

题目
单选题
给出以下定义:char a[]=″abc″;char b[]={′a′,′b′,′c′};则正确的叙述是()
A

数组a和数组b等价

B

数组a和数组b的长度相同

C

数组a的长度大于数组b的长度

D

数组a的长度小于数组b的长度

参考答案和解析
正确答案: C
解析: 暂无解析
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下面判断正确的是

A.char*a="china";等价于char *a;*a="china";

B.char str[5]={"china"};等价于char str[]={"china"};

C.char*S="china";等价于char *S;S="china";

D.char c[4]="abc",d[4]="abc";等价于char c[4]=d[4]="abc";


正确答案:C
解析: 选项A)char *a;*a=“china”应改为 a=china;,选项B)应该是char str[6];D)项表述方法有错误。

第2题:

有以下程序: includemain(){char*p,*q; p=(char *)malloc(sizeof(char)* 20);q=p; sca

有以下程序: # include<stdio.h> main() { char*p,*q; p=(char *)malloc(sizeof(char)* 20);q=p; scanf("%s %s",p,q);printf("%s %s\n",p,q); } 若从键盘输入;abc def<回车>,则输出结果是 ______。

A.def def

B.abc def

C.abe d

D.d d


正确答案:A
解析:本题考查%s控制符在scanf函数中的应用。scanf函数中%s控制符的作用是将键盘输入的字符串送到内存,输入的字符串从第一个非空格字符算起,遇到空格或回车就认为是输入结束。本题中执行语句scanf("%s%s",p,q)时,从键盘输入abc def回车>后,指针变量p指向字符串"abc\0",q指向字符串"def\0",但是由于p和q指向同一个存储单元,所以存储单元中存放的是"def\0",printf函数的输出结果为def def。

第3题:

以下能正确定义字符串的语句是

A)char str[]={' \ 064'};

B)char str="kx43";

C)char str=";

D)char str[]="\0";


正确答案:D
(15)D) 解析 : 字符串常量是用一对双引号括起来的字符序列 , 用字符数组来存放 , 不用大括号 。

第4题:

设有定义“stmct{int a;float b;char c}abc,*p_abc=&abc;”,则对结构体成员a的引用方法可以是abc.a和p_abc______。


正确答案:
若结构体变量abc有成员a,并有指针p_abc指向结构变量abe,则引用变量abe成员s的标记形式有abe.a和 p_abc->a。

第5题:

以下能正确定义字符串的语句是( )。

A.char str[]={'\064'};

B.char str="\x43";

C.char str=";

D.char str[]="\0";


正确答案:D
解析:C语言中,字符串是用一对双引号括起来的字符序列,并用字符型数组来存放,故选项A)、C)不是字符中;选项B)定义的是一个字符变量str,不能用来存放字符串,所以不正确。

第6题:

有以下程序:includemain(){char *p,*q;p=(char*)malloc(sizeof(char)*20);q=p;scanf(

有以下程序: #include <stdlib.h> main() { char *p,*q; p=(char*)malloc(sizeof(char)*20); q=p; scanf("%s%s",p,q); ptintf("%s%s\n",p,q); } 若从键盘输入abc def<回车>,则输出的结果是( )。

A.def def

B.abc def

C.abc d

D.d d


正确答案:A
解析:本题首先定义两个字符型指针变量p和q,通过malloc()函数申请20个字符的存储空间,并把它的首地址赋给p,再把p的值赋给小p和q指向同一个存储区。在scanf()语句中读取字符串到p和q指向的字符串,先把abc读取到p指向的存储区中,第一个空格是结束标记,第二个空格是分隔符,再把def存放到q指向的存储区,把原先的内容覆盖。所以p和q指向的存储区内容是def,故最后输出的def,def。4个选项中A正确。

第7题:

若要说明一个类型名STP,使得定义语句STP s;等价于char *s;,以下选项中正确的是

A.typedef STP char *s;

B.typedef *char STP;

C.typedef STP *char;

D.typedef char* STP ;


正确答案:D

第8题:

设有定义"struct {int a; float b; char c;} abc, *p_abc=&abc;",则对结构体成员a的引用方法可以是abc.a和p_abc【20】a。


正确答案:
->

第9题:

若指针ps已正确定义,要使ps指向能够存储8个字符的动态存储单元,以下不正确的语句是( )

A.ps=(char*)malloc(8);

B.ps=(char *)malloc(sizeof(char)* 8);

C.ps=(char*)calloc(8,sizeof(char))

D.ps=8*(char*)malloc(sizeof(char))


正确答案:D

第10题:

若要说明一个类型名STP,使得定义语句STPs;等价于char*s;以下选项中正确的是

A.typedef STP char *s

B.typedef*char STP;

C.typedef STP *char;

D.typedef char* STP;


正确答案:D
解析:指针类型的自定义的形式如下:typedef类型说明符*用户类型名。不难看出只有选项D是正确的定义形式。

更多相关问题