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

admin2010-05-22  30

问题 设有下列程序:
#include<stdio.h>
#include<string.h>
main()
{   int i;
   char s[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>代表回车符):DEF<CR>BADEF<CR>QTHRG<CR>,则程
序的输出结果是______。

选项

答案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所指字符串的内容复制到字符数组t所指存储空间中,然后输出字符数组t。
转载请注明原文地址:https://jikaoti.com/ti/3dI0FFFM
0

最新回复(0)