首页/ 题库 / [单选题]若有定义:char *st= "how 的答案

若有定义:char *st= "how are you "; 下列程序段中正确的是A.char a[11], *p; strcpy(p=a+1,&st[4]);B.char a[11]; strcpy(++a, st);C.char a[11]; strcpy(a, st);D.char a[], *p; strcpy(p=&a[1],st+2);

单选题
2022-01-09 16:00
A、char a[11], *p; strcpy(p=a+1,&st[4]);
B、char a[11]; strcpy(++a, st);
C、char a[11]; strcpy(a, st);
D、char a[], *p; strcpy(p=&a[1],st+2);
查看答案

正确答案
A

试题解析
本题综合考查字符数组的赋值和strcpy函数的用法。C语言不允许用赋值表达式对字符数组赋值,如下面的语句就是非法的:str1="China",如果想把“China”这5个字符放到数组str1中,除了逐个输入外,还能使用strcpy函数,该函数的功能是将一个字符串复制到一字符数组中。例如,strcpy(str1,"China");或strcpy(str1,str2);注意,不能企图用以下语句来实行赋值(将str2的值传给str1):str1=str2;不能用赋值语句将一个字符串常量或字符数组直接给一个字符数组。strcpy函数的结构是:strcpy(字符数组1,字符串2)其中,需要注意的是,字符数组1的长度不应小于字符串2的长度,“字符数组1”必须写成数组名形式,如(str1),“字符串2”可以是字符数组名,也可以是字符串常量,不能用赋值语句将一个字符串常量或字符数组直接给一个字符数组。

标签:
感兴趣题目
有以下程序#include void  fun(char *a, char *b){ while(*a=='*') a++; while(*b=*a) {  b++;  a++; }}main(){ char *s=*****a*b**** , t[80]; fun(s,t); puts(t);}程序的运行结果是(  )。
若有以下定义: struct tt{char name[10];char sex;}aa={"aaaa",′F′},*p=&aa; 则错误的语句是( )。选项格式:scanf("%c",a选项格式:sex);a选项格式:
有以下程序: #include  main() {  char a[30],b[30];  scanf(%s,a);  gets(b);  printf(%s%s,a,b); } 程序运行时若输入: how are you?I am fine<回车> 则输出结果是(  )。
若有下面的程序段:char s[]="china";char*p;p=s;则下列叙述正确的是
下面程序段的运行结果是()。  char a[7]= “abcdef”;  char b[4]= “ABC”;  strcpy(a,b);  printf(“%c”,a[5]);
程序中若有如下说明和定义语句:char fun(char *);main(){ char *s="one",a[5]={0},(*f1)()=fun,ch; ...}以下选项中对函数fun的正确调用语句是( )。A.(*f1)(a) B.*f1(*s) C.fun(&a) D.ch=*f1(s)
若有以下说明和语句: struct st{int n;char*ch;}; struct st a[3]={5,"abc",7,"def",9,"ghk"},*p=a; 则值为6的表达式是______。
若有以下说明和语句: struct st{int n;char*ch;} struct st a[3]={5,"abc"7,"def",9",ghk"),*p=a; 则值为6的表达式是______。
若有如下说明: union s {char a[9] int b; float c; }t; 则下列叙述正确的是( )
若有定义语句:“char S[3][10],(*k)[3],*p;”,则以下赋值语句正确的是( )。
程序中若有如下说明和定义语句: char fun(chat*); main() {char*s="one",a[5]={0},(*f1)()=fun,ch; } 以下选项中对函数fun的正确调用语句是( )。
已知有数组定义char a[3][4];下列表达式中错误的是
相关题目
若有以下定义和语句,则输出结果是( )char *a =”ABCD”;cout<<a;
阅读下面程序段,则执行后输出的结果是
#include "stdio.h"
main()
{ char fun(char,int);
char a=′A′;
int b=13;
a=fun(a,b);
putchar(a);}
char fun(char a,int b)
{char k;
k=a+b;
return k;}
设有定义int a=1;float f=12;char c=’a’;,则下列表示错误的是
有以下程序 #include<stdio.h> main( ) {char a[3O],b[30]; scanf("%S",a); gets(b); printf("%s %s\n",a,b); } 程序运行时若输入: how are you? I am fine<回车> 则输出结果是( )。
若有以下语句,则正确的描述是char a[]="toyou";char b[]={′t′,′o′,′y′,′o′,′u′};
有以下程序: void fun2(char a,char b) {printf(”%c%c”,a,b); } char a=A,b=B; void funl( ){a=C;b=D;} main( ) { funl( ); printf("%c%c",a,b); fun2(E,F); } 程序的运行结果是( )。
下面说明不正确的是A.char a[10]="china"; B.char a[10],*p=a;p="china";C.char *a;a="china"; D.char a[10],*p;p=a="china"
下列与char*pa[3][5]={"a","bb","ccc"}等价的是( )。A.char (*pa)[][5]={"a","bb","ccc"}B.char*pa[3][]={"a","bb","ccc"}C.char pa[3][]={"a","bb","ccc"}D.都不等价
请读程序: # includde<stdio.h> # include<string.> void fun(char * s) {char a[10]; strcpy(a,"STRING"); s=a; } main() { char*p; fun(p); print{("%s ",p); } 上面程序的输出结果(表示空格) ( )
有以下程序中若有如下说明和定义语句; char fun(char*); main() { char * s="one",a[5]={0},(*f1)()=fun,ch; … } 以下选项中对函数fun的正确调用语句是 ______。
程序中若有如下说明和定义语句 char fun (char*); main() { char*s="one",a[5]={0},(*f1)()=fun,ch; … } 以下选项中对fun()函数的正确调用语句是——。
若有定义:char *st= "how are you "; 下列程序段中正确的是A.char a[11], *p; strcpy(p=a+1,&st[4]);B.char a[11]; strcpy(++a, st);C.char a[11]; strcpy(a, st);D.char a[], *p; strcpy(p=&a[1],st+2);
设有定义int a=1;float f=1.2;char C=a;,则下列表示错误的是( )。
设有定义int a=1;float f=1.2;char c=‘a’;,则下列表示错误的是
设有以下定义: char *st="how are you";下列程序段中正确的是______。
设有定义int a=1;float f=1.2;char c=’a';,则下列表示错误的是
若有说明语句 char a[]="It is mine"; char*p="It is mine"; 则以下不正确的叙述是
若有说明语句 char a[]="It is mine"; char*p="It is mille"; 则以下不正确的叙述是( )。
若有说明语句char a[]="It is mine";char *p="It is mine";则以下不正确的叙述是
若有说明语句 char a[]="It is mine"; char*p=" It is mine"; 则以下不正确的叙述是( )。
广告位招租WX:84302438

免费的网站请分享给朋友吧