14、若有以下语句:static char x[ ]="12345";static char y[ ]={'1','2','3','4','5'};则正确的说法是( )。(1分) A、 x数组和y数组的长度相同 B、 x数组的长度大于y数组的长度 C、 x数组的长度小于y数组的长度 D、 x数组与y数组等价 15、对语句float (*pf)(float x);的描述,正确的是( )。(1分) A、一个用于指向函数的指针变量 B、一个返回值为指针型的函数名 C、一个用于指向float型数据的指针数组 D、一个用于指向float型数据的指针变量 16、若有语句:char *line[5];,以下叙述中正确的是( )。(1分) A、 定义line是一个数组,每个数组元素是一个基类型为char为指针变量 B、 定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组 C、 定义line是一个指针数组,语句中的*号称为间址运算符 D、 定义line是一个指向字符型函数的指针 17、有以下语句int a[10]={0,1,2,3,4,5,6,7,8,9},*p=a;则对a数组元素的引用不正确的是( )其中0≤i≤9。 (1分) A、 a[p-a] B、 *(&a[i]) C、 p[i] D、 *(*(a+i)) 二、填空题(19道小题,共34分) 1、C语言是一种(选择面向对象或面向过程)高级程序设计语言。 (1分) -------------------------------------------------------------------------------- 2、C语言中唯一的三目运算符是。 (1分) -------------------------------------------------------------------------------- 3、表示条件:10<x<100或x<0的c语言表达式是。 (1分) -------------------------------------------------------------------------------- 4、已知整型变量a=6,字符型变量ch='A',浮点数变量f=2.1,则表达式ch+a+f 的值为。 (提示:'A'的ASCII码为65) (1分) -------------------------------------------------------------------------------- 5、for(;;)语句相当于while() (1分) -------------------------------------------------------------------------------- 6、由顺序、选择和循环三种基本结构构成的算法称为。 (1分) -------------------------------------------------------------------------------- 7、在函数定义中,是被调函数接收调用者数据的主要途径。 (1分) ----------------------------------------------------
777875478
若有定义char x[ ]=”12345”;char y[ ]={’1’,’2’,’3’,’4...
因此答案是B
若有两条语句 static char x[] ="abcde"; static char y[] ={'a...
则正确的说法是___B___。A、x数组和y数组的元素个数相同 B、x数组的元素比y数组的元素多 C、x数组的元素比y数组的元素少 D、x数组与y数组等价
C语言char x[]="12345"; char y[]={'1', '2', '3', '4', '5' };
没有0结束符的不是串,题中y数组内容就不是串,只是个数组而已 x 是数组 x的内容同时也是串(系统自动添加了0结束符)y是数组 但y的内容不是串 即然不是串也就不存在串长的说法 说法正确的只有B,不过那考试题如果正的是让选不正确的,而标准答案又是B那只能说明这个考试太过儿戏了,不值得去...
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'};的长度...
char x[]=”12345”; char y[]={‘1’,’2’,’3’,’4’,’5’};
x是字符串,结尾处有'\\0'y是字符数组 两个不好比较。从内存角度讲,x里存了5个元素,占用6个字节 y里存了5个元素,占5个字节。
若有定义和语句 char *s1="12345" , *s2="1234"; printf("%d\\n...
按照编译来说这个是错误的 因为这二个是常量 所以无法复制 为什么是4 个人认为是1234后面还有一个\\0因为系统要判断字符串的结束所以加了一个\\0 而将s2复制到s1那么就是1234\\0 那么输出结果就是4
设有定义语句:char a[]={"12345"};,则表达式 strlen(a)的值为...
5。strlen函数是求字符串中包含的字符个数的。
char s1[]="12345",s2[]="1234";printf("%d\\n",strlen(strcpy(s1...
是A的,这个的过程啊就看下图吧,记住啊那个strlen()函数测的长度是不算'\\0'注意与sizeof()的区别啊
int main(){ char str[] = "12345"; str[1]=0; printf("%s",str...
也就是说字符串的最后一个字符是 '\\0',表示字符串的结束。在将 str[1] 修改为 0 之后,它就变成了以字符 0 结尾的字符串。由于字符 0 的 ASCII 码值为 48,因此这个字符串实际上就是一个只包含字符 '1' 的字符串。最后通过 printf 函数将这个字符串输出,因此只输出了字符 '1'。
main() { static char *s1="1,2,3,4,5,6",
2:其次和你说说除了定义以外有*和无*的区别:有*代表取地址,无*代表取该地址所指向的值。比如说你上述的main函数中,如果输出p,那么输出的就是p内所存的地址所指向的值(没有调用point函数之前是字符a),如果输出*p,那么输出的就是他所指向值在内存中的地址(没有调用point函数之前指向的是字符...