2013秋第3题解析,字符串比较
(2015-01-09 10:51:17)
标签:
c语言解析试题 |
分类: 期末考试与省二级C语言试卷 |
2013秋第3题解析,字符串比较
3、阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案
【程序说明】
输入2个字符串,比较它们是否相等。要求定义和调用函数cmp(s, t),该函数比较字符串s和t是否相等,若相等则返回1,否则返回0。
运行示例:
Enter 2 srings: Hello
”Hello” != ”world”
【程序】
#include
int
{
for( i=0;
if(
if(
else
}
main()
{
printf(”Enter 2 strings:”);
scanf(”%s%s”, s, t);
if(
printf(”\”%s\” = \”%s\”\n”, s, t);
else
printf(”\”%s\” != \”%s\”\n”, s, t);
}
【供选择的答案】
(9) A、s[i] == ’\0’
C、s[i] != ’\0’
(10)A、s[i] == t[i]
C、s[i] != t[i]
(11) A、s[i] != t[i]
C、s[i] != ’\0’
(12)A、cmp(s, t) != 0
C、cmp(char *s, char *t)
解析:
从题干可以推测出以下几点:
第一点:主函数里面应该有调用子函数的语句,故第12空就是调用子函数的语句,两字符串相等,则返回值1。故选A;cmp(s, t) != 0 。
第二点:第9空应该是对字符串进行循环的条件,s[i] != ‘\0’ ,故第9空选C;
第三点:两字符串相等,则返回值1。则推测s[i] == t[i],故第11空选B;
第四点:如果发现两字符串里面有一个不相等的字符,那么直接终止循环,因为已经没有必要继续循环下去了。故第10空选C、s[i] != t[i];