char st[4][5]={"abcde"};对不对

下面各语句行中,能正确进行赋字符串操作的语句行是( )
A) char st[4][5]={"ABCDE"};
B) char s[5]={‘A’,‘B’,‘C’,‘D’,‘E’};
C) char *s; s= “ABCDE”;
D) char *s; scanf(“%s”,s);
说下哪个对,哪些错,为什么对,为什么错?
B我看是字符组数跟题目的意思会搭么?

第1个回答  2019-08-29
选C.
A不用说了.
B是一个合法的“字符数组”初始化语句,但是不是一个正确的“字符串”赋值语句,因为字符串要求最后有字符串结束标志'\0'.
C对."ABCDE"是一个字符串常量,它存储在静态数据区中.
D不对.这个语句跟下面这种情况类似:
int *p;
scanf("%d", p);
p是一个野指针,不能直接往p指向的内存空间中输入数据.对于这个题目来说,只能用:
char s[10];
scanf("%s", s);这种操作.

char st[4][5]={"abcde"];为什么不能进行赋值字符串操作...
1、该二维数组为4行5列,而"abcde”有6个字符,溢出('\/0')2、最后一个括号应是}而不是]

char *st1= "12345" ,*st2= "abcde ";strcat(st1,st2);哪里错了...
char *st1= "12345"; st1指向的"12345"是个常量,是不允许修改的 strcat(st1,st2); 要修改st1指向的"12345",所以要出错

下面各语句行中,能正确进行赋字符串操作的语句行是( )
C对。"ABCDE"是一个字符串常量,它存储在静态数据区中。D不对。这个语句跟下面这种情况类似:int *p;scanf("%d", p);p是一个野指针,不能直接往p指向的内存空间中输入数据。对于这个题目来说,只能用:char s[10];scanf("%s", s);这种操作。

为什么C语言Scanf函数对字符串不要加 取地址运算符&
C语言的字符串为数组形式,而数组的名称可以表示其地址,故对字符串输入不需要加地址符。而单独的字符、整型变量等的名称不能直接表示地址,故需要加地址符。数据类型 字符串数据类型是建模在形式字符串的想法上的数据类型。字符串是几乎在所有编程语言中可以实现的非常重要和有用的数据类型。在某些语言中...

c语言 char str[10],*st="abcde";strcat(str,st)有什么问题么?
有问题,问题大了。str是个没有初始化的数组,结束符不知在哪里,把abcde“接在后面”可能会破坏数据而使系统崩溃。把char str[10]改为char str[10]="";或在char str[10];后加一句str[0]='\\0';就没有问题了……

C语言中的反斜杠b()是什么意思
C语言中char st[]="abc\/0de" 是什么意思?内个是反斜杠 这是初始化字元阵列st呀,\\0是结束符,即字串到这里结束,所以字串“abc\\0de”的长度为3。\\b是什么意思?(C语言中) printf("\\t\\b1"); 执行这条语句时,相当于先输出一个tab键然后一个退格键(删除了前面的tab键),再输出...

求C语言编程题
void example(char acHello[]) { printf("%d", sizeof(acHello)); return; } void main() { char acHello[] = "hello"; example(acHello);\/\/数组名称作参数,传的是地址,一个地址占四个字节 return; }的输出是A 4 B 5 C 6 D不确定答案:A3. 有以下程序段 char acArr[]= "ABCDE"; char *...

...例如,‘abba’和‘abcba’是回文,‘abcde’和‘ababab’_百度...
\/\/4.若队列和栈中的字符取完,则结束,设置标志flag=1;\/\/5.flag=1,表示字符从前往后和从后往前的序列完全匹配,该字符串属于回文 \/\/6.flag=0,表示字符从前往后和从后往前的序列不完全匹配,该字符串不属于回文 include <stdio.h> include<stdlib.h> define m 100 typedef struct { char stack...

急!!历年国家计算机二级c语言笔试真题答案。
{char a〔20〕=”ABCD\\OEFG\\0”,b〔〕=”IJK”; strcat(a,b);printf(”%s\\n”,a); } 程序运行后的输出结果是 A)ABCDE\\OFG\\OIJK B)ABCDIJK C)IJK D)EFGIJK (34)有以下程序,程序中库函数islower (ch)用以判断ch中的字母是否为小写字母 #include<stdio.h> #include<ctype.h> void fun(char*p...

pascal val 用法
例:s:=’abcde’;delete(s,2,3);结果s:=’ae’4. 插入子串。 过程Insert(s1,s2,I) 把s1插入到s2的第I个位置 例:s:=abc;insert(‘12’,s,2);结果s:=’a12bc’5. 求字符串长度 length(s) 例:length(‘12abc’)=5 6. 搜索子串的位置 pos(s1,s2) 如果s1是s2的子串 ,则返回...

相似回答