单选题以下选项中正确的语句组是(  )。A char s[]; s=BOOK!;B char*s; s={BOOK!};C char s[10]; s=BOOK!;D char*s; s=BOOK!;

题目
单选题
以下选项中正确的语句组是(  )。
A

char s[]; s=BOOK!;

B

char*s; s={BOOK!};

C

char s[10]; s=BOOK!;

D

char*s; s=BOOK!;

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

以下语句或语句组中,能正确进行字符串赋值的是( )。

A.char*sp;*sp="right!";

B.char s[10];s="right!";

C.char s[10];*s="right!";

D.char*sp="right!";


正确答案:D
解析:本题的考点是C语言的数组和指针。C的数组名是一个特殊类型的指针,固定指向数组第一个元素的位置,运行过程中不能再改变其指向。因此选项B、C都是错误的。指针可以指向任何单元,但选项A是错误的,因为赋值语句“*sp=”right!”;”是错误的,正确写法是“sp=”right!”;”。而对于选项D,由于“char*sp="right!";”是定义指针同时赋初值,因此是正确的。

第2题:

下面各语句中,能正确进行赋字符串操作的语句是

A.char s[5]= { "ABCDE" };

B.char s[5]= { 'A' ,' B' ,' C' ,' D' ,' E' };

C.char *s; s = "ABCBE";

D.char *s; scanf("%s", s);


正确答案:C

第3题:

以下选项中正确的语句组是

A)char s[]; s="BOOK!";

B)char *s; s={"BOOK!"};

C)char s[10]; s="BOOK!";

D)char *s; s="BOOK!";


正确答案:D

第4题:

以下语句或语句组中能正确进行字符串赋值的是( )。

A.ehar以*sp; * sp = "right!";

B.char s[10] ;s = "right!";

C.char s [10]; * s = "right !";

D.char * sp = "right !";


正确答案:D
解析:选项A)应将*sp="right!";中的*叩改为sP,即把字符串"right!”的首地址赋给指针变量sp;选项B)中的s代表数组的首地址,不能给它赋字符串,只能在定义数组时,对其进行初始化;选项C)中的。s指的是数组的第一个元素,不能给它赋字符串。

第5题:

下列选项中正确的语句组是

A.char s[8]; s={"Beijing"};

B.char s[8]; s="Beijing";

C.char *s; s={"Beijing"};

D.char *s; s="Beijing";


正确答案:D
解析:C语言不允许通过赋值语句给字符数组赋值,故选项A),C)不正确,而“{}”是在定义变量的同时对变量进行初始化时使用,在赋值时不能使用。

第6题:

( 12 )请将下面的程序补充完整,使得程序输出 “ 飘是张娜的书 ” 。

#include <iostream>

using namespace std;

class Book{

public:

Book(char *str) {strcpy(title,str);}

【 12 】 void PrintInfo() {cout<<title<<endl;}

protected:

char title[50];

};

class MyBook:public Book{

public:

MyBook(char *s1,char *s2= " 张娜 " ):

【 13 】 {strcpy(owner,s2);}

virtual void PrintInfo() {cout<<title<< " 是 " owner<< " 的书 " <<endl;}

private:

char owner[10];

};

int main(){

Book *prt=new MyBook( " 飘 " );

prt->PrintInfo();

return 0;

}


正确答案:

                                           13.答案暂缺

第7题:

下列选项中正确的语句是( )。

A.chars[3];s="BOOK!";

B.char*s;s={"BOOK!"};

C.chars[10];s="BOOK";

D.char*S;s="BOOK!";


正确答案:D
D。【解析】在选项D中.字符指针s指向字符串常量BOOK!。故选项D正确。

第8题:

(32)以下选项中正确的语句组是

A)char s[];s=”BOOK!”; B) char *s;s={”BOOK!”};

C)char s[10];s=”BOOK!”; D) char *s;s=”BOOK!”;


正确答案:D

第9题:

请将下面的程序补充完整,使得程序输出“飘是张娜的书”。

include

using namespace std

class Book{

public:

Book(char*str)|strcpy(title,str);

______void Printlnfo(){cout<<title<<endl;}

protected:

char title[50];

};

class MyBook:public Book{

public:

MyBook(char*s1,char*S2=“张娜”):

______strcpy(owner,s2);}

virtual void PrintInfo(){cout<<title<<“是”<<owner<<“的书”<<endl;}

private:

charowner[10];

};

int main(){

Book*ptr=new MyBook(“飘”);

ptr->Printlnfo();

return 0;

}


正确答案:virtual MyBook(char*s2)。
virtual MyBook(char*s2)。

第10题:

以下选项中正确的语句组是______。

A.chars[];s="BOOK!";

B.char*s;s={"BOOK!"};

C.chars[10];s="BOOK!";

D.char*s;S="BOOK!";


正确答案:D
解析:选项A和选项C中,都是绐数组第—个元素赋初值,因为在C语言中,定义的数组名可以认为是—个存入地址值的指针变量名,其中的地址值是数组第—个元素的地址,即在默认情况下,程序使用数组名是指向该数组的首地址, —个地址只能存入一个数据,因此这两个选项是错误的;选项B和选项D都是用字符指针指向—个字符串,它只能指向—个字符变量或其他字符类型数据,不能同时指向多个字符数据,更不能把这些字符存放到变量中(指针变量只能存放地址),因此选项B是错误的,只有选项D是正确的。

更多相关问题