若有下面语句,则下面说法不正确的是()
char x[]="12345";
char y[]={'1', '2', '3', '4', '5' };
A. x,y完全相同
B. x,y不相同
C. x数组长度小于数组长度
D. x,y字符串长度相等
卷子上此题答案选B
先说下我的理解,数组x 分别是12345,因为系统会默认加/0 ,所以x长度为6.而数组y分别为12345,所以长度是5。 所以应该选acd吧, 到底是我理解错了, 还是答案给错了, 求高手指教
C语言char x[]="12345"; char y[]={'1', '2', '3', '4', '5' };
x 是数组 x的内容同时也是串(系统自动添加了0结束符)y是数组 但y的内容不是串 即然不是串也就不存在串长的说法 说法正确的只有B,不过那考试题如果正的是让选不正确的,而标准答案又是B那只能说明这个考试太过儿戏了,不值得去考它
一道c语言题
原因:字符串末尾默认会保存一个'\\0'表示字符串的结束,所以x实际保存的是'1', '2', '3', '4', '5', '\\0',而y数组中保存的就是初始化的'1', '2', '3','4', '5',所以x的长度为6大于y的长度为5
...12345”;char y[ ]={’1’,’2’,’3’,’4’,’5’};则
由C语言中对字符串的定义,在字符串最后以'\\0'作为结束符。因此x数组其实是{'1', '2', '3', '4', '5', '\\0'} 因此,选择B,即x数组的长度大于y的长度。2 凭方法 前提是该选择题是单项选择题。那么,可以看到,A和D其实表达了同一个意思,因此这两个选项都不可能是答案。然后,可以...
C语言,给出理由。谢谢,急需答案。
C语言规定,在字符串的末尾自动加上串结束标记'\\0',因此数组static char x[]="12345";的长度是6;而数组static char y[]={'1','2','3','4','5'};是按照字符方式对数组进行初始化,系统不会自动加上串结束标记'\\0',因此数组static char y[]={'1','2','3','4','5'};的长度...
C怎么求char*的每个字符的字面值,比如char*=“12345” 怎么样把这五...
C语言中,字符串是以字符数组的形式存储,同时char类型的变量是以整数形式存储的,比如字符1的ASCII码是50,2的ASCII码是51,所以"12345"这个字符串,实际上是一个包含6个元素的数组a,a[0]的值是50,a[1]是51,依此类推,最后a[5]的值是0,表示字符串的结尾'\\0'。如果你要赋值给5个int的...
C语言问题:定义char *str[]={“12345”,“abcde”};以下正确的叙述是...
只有B是正确的,选B。A——char *str[]写法说明str是个数组,它的每个元素都是char *型指针。所以str是指针数组而非指针。C——这个表述是二维数组的解释,而str是个一维数组。D——同C,属于二维数组的表述。
在C语言中这样的语句是否正确:char a[5]={'0','1','2','3','4'};
正确的。你说的数字0 和 这里的字符0,不是一个概念。数字0 是 int a = 0; 字符0是 char a = '0';所占的内存,是由变量的类型和长度决定的。
char x[ ]=“abcdefg”; char y[ ]={‘a’,‘b’,‘c’,‘d’,‘e...
第一个8,第二7,因为第一个要加上'\\0'。main(){char x[]="abcdefg";char y[]={'a','b','c','d','e','f','g'};printf("%d",strcmp(x,y));getch();} a数组的长度是6,b数组的长度是7。在C语言中没有专门的字符串变量,通常用一个字符数组来存放一个字符串。字符串总是...
C语言删除字符串中指定字符
一、问题描述:从键盘输入一个字符串给str和一个字符给c,删除str中的所有字符c并输出删除后的字符串str。1、输入:第一行是一个字符串; 第二行是一个字符。2、输出:删除指定字符后的字符串。二、设计思路:1、 同插入问题,定义两个字符数组a,b。以及标志删除位置的int型pos。2、用gets函数...
c语言问题,输入执行12345# 求答案135的原因
12345 第一次循环,c=getchar()读取1,此时c=1;getchar()读取2,2!='#';执行putchar(c),即数出1 第二次循环,c=getchar()读取3,此时c=3;getchar()读取4,4!='#';执行putchar(c),即数出3 第三次循环,c=getchar()读取5,此时c=5;getchar()读取#,2=='#';结束执行 总结:数出13 ...