设有下列程序: #include<stdio.h> #include<string.h> main() { int i; chars[10],t[10]; gets(t); for(i=0;i<2;i++) { gets(s); if(strcmp

admin2010-12-10  55

问题 设有下列程序:
#include<stdio.h>
#include<string.h>
main()
{    int i;
chars[10],t[10];
gets(t);
for(i=0;i<2;i++)
{  gets(s);
if(strcmp(t,s)<0)strcpy(t,s);
}
printf("%s\n",t);
}
程序运行后,从键盘上输入(<CR>代表回车符):CDEF<CR>BADEF<CR>QTHRG<CR>,则程序的输出结果是______。

选项 A、QTHRG

答案

解析  strcmp(t,s)函数用来比较t和s所指字符串的大小,若t>s,则函数值大于0;若t=s,则函数值等于0;若t<s,则函数值小于0。strcpy(t,s)函数的功能是把字符数组s所指字符串的内容复制到字符数组 t所指的存储空间中。
本题中,t[10]="CDEF"。第一次循环,s[10]="BADEF",if语句的控制条件strcmp(t,s)<0不成立,接着执行第二次循环,s="QTHRG",if语句的控制条件strcmp(t,s)<0成立,执行下列的语句,将字符数组s所指字符串的内容复制到字符数
转载请注明原文地址:https://jikaoti.com/ti/k8B0FFFM
0

最新回复(0)