下面程序的运行结果是 ( ) # include<stdio.h> # include<string.h> main( ) { char * a="

题目
下面程序的运行结果是 ( ) include include main( ) { char * a="

下面程序的运行结果是 ( ) # include<stdio.h> # include<string.h> main( ) { char * a="AbcdEf",* b="aBcD" a + +;b + +; printf("%d\n",strcmp(a,b)); }

A.0

B.负数

C.正数

D.无确定值

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

第1题:

【单选题】下面程序运行结果是()。 #include<stdio.h> #include<string.h> main() {char *s1=”AbDeG”; char *s2=”AbdEg”; s1+=2; s2+=2; printf(“%dn”,strcmp(sl,s2));}

A.正数

B.负数

C.零

D.不确定的值


emoclew emoclew

第2题:

分析下面程序的运行结果()。 #include "stdio.h" #include "string.h" main() { printf("%dn",strlen("IBMn012")); }


A 解析:在解答本题时应该考虑两个问题:结构体变量的长度及sizeof()求字节数的运算符。结构体变量的长度是其内部成员总长度之和,本题中,structdate中包含year,month,day三个整型变量。一个整型变量所占的字节数为2。

第3题:

以下程序运行后的输出结果是() 。   #include <stdio.h>   #include <stdlib.h>   #include <string.h>   main()   { char *p; int i;    p=(char *)malloc(sizeof(char)*20);    strcpy(p,"welcome");    for(i=6;i>=0;i--) putchar(*(p+i));    printf("n"); free(p);   }


D 本程序中通过DATA语句对数组B赋值的结果为矩阵DO循环语句的功能是将数组B的第2列的元素的值依次赋值给数组A。因此,A(1)=4、A(2)=5、A(3)=6,所以格式输出数组A后输出的结果为456。

第4题:

以下程序的输出结果是【 】。includeincludechar*fun(char*t){ char *p=t;retur

以下程序的输出结果是【 】。

include <stdio.h>

include <string.h>

char *fun(char *t)

{ char *p=t;

return (p+strlen(t)/2);

}

main()

{ char *str="abcdefgh";

str=ftm(str);

puts(str);

}


正确答案:
efgh 解析:本题考查的知识点是:字符指针。题目中的fun()函数,通过strlen()库函数得到形参t所指字符串的长度。然后返回t所指字符串首地址值加上该长度值的一半。所以fun()函数的作用就是返回所给字符串的中间位置。故最后通过puts()输出的字符串为"efgh"。

第5题:

下面程序的运行结果是includeincludemain(){ char*s1="AbDeG";char*s2="Ab

下面程序的运行结果是 #include<stdio.h> #include<string.h> main() { char*s1="AbDeG"; char*s2="AbdEg"; s1+=2;s2+=2; printf("%d\n",strcmp(s1,s2)); }

A.正数

B.负数

C.零

D.不确定的值


正确答案:B
解析:本题考查了用指针处理字符串的方法。用指针处理字符串,首先要使指针指向该字符串。例如本题中的s1="AbDeG"就是使字符指针指向了字符串"AbDeG",而指针s1+=2则是指针向后移动了两个字符的位置,指向了字符‘D’。strcmp则是字符串比较函数。

第6题:

下面程序的运行结果是()。includeincludemain(){char*s1="abDuj";char*s2="

下面程序的运行结果是( )。 #include<stdio.h> #include<string.h> main() {char*s1="abDuj"; char*s2="ABdUG"; int t; t=strcmp(s1,s2); printf("%d",t); }

A.正数

B.负数

C.零

D.不确定的值


正确答案:A

第7题:

以下程序的输出结果是【 】。includeincludechar*fun(char*0{ char *p--t;retur

以下程序的输出结果是【 】。

include <stdio.h>

include <string.h>

char *fun(char *0

{ char *p--t;

return (p+strlen(t)/2);

}

main()

{ char *str="abcdefgh";

str=ftm(str);

puts(str);

}


正确答案:efgh
efgh 解析:本题考查的知识点是:字符指针。题目中的fun()函数,通过strlen()库函数得到形参t所指字符串的长度。然后返回t所指字符串首地址值加上该长度值的一半。所以fun()函数的作用就是返回所给字符串的中间位置。故最后通过puts()输出的字符串为"efgh"。

第8题:

下列程序的运行结果是()。 include include main() {char*s1="abDuj"; char

下列程序的运行结果是( )。

#include<stdio.h>

#include<string.h>

main()

{ char*s1="abDuj";

char*s2="ABdUG";

int t;

t=strcmp(s1,s2) ;

printf("%d",t);

}

A.正数

B.负数

C.零

D.不确定的值


正确答案:A
解析:本题考查字符串比较函数和两个字符串比较的原则两个知识点:①原则是依次比较两个字符串同一位置的一对字符,若它们的ASCII码值相同,则继续比较下一对字符,若它们的ASCII码值不同,则ASCII码值较大的字符所在的字符串较大;若所有字符相同,则两个字符串相等;若一个字符串全部i个字符与另一个字符串的前i个字符相同,则字符串较长的较大。② strcmp(s1,s2)的返回值,当str1str2时,返回值0:当 str1=str2时,返回值为0;当str1>str2,返回值>0。

第9题:

下面程序的输出结果是includeincludemain(){char *pl="abc",*p2="ABC",str

下面程序的输出结果是 #include<stdio.h> #include<string.h> main() { char *pl="abc",*p2="ABC",str[50]="xyz"; strcpy(str+2,strcat(p1,p2)); printf("%s\n",str);}

A.xyzabcABC

B.zabcABC

C.xyabcABC

D.yzabcABC


正确答案:C
解析: 本题考查的重点是拷贝字符串——使用strcpy()函数,该函数的调用方式是:strcpy(字符数组,字符串),其中”字符串”可以是字符串常量,也可以是字符数组。函数的功能是:将“字符串”完整地复制到“字符数组”中,字符数组中原有的内容被覆盖。
使用该函数时注意:①字符数组必须定义得足够大,以便容纳复制过来的字符串。复制时,连同结束标志'\0'一起复制;②不能用赋值运算符“:”将一个字符串直接赋值给一个字符数组,只能用strcpy()函数处理。
另外,本题还考查连接字符串的strcat()函数,其调用方