原题
找最小的字符串 (15 分)
本题要求编写程序,针对输入的N个字符串,输出其中最小的字符串。
输入格式:
输入第一行给出正整数N;随后N行,每行给出一个长度小于80的非空字符串,其中不会出现换行符,空格,制表符。
输出格式:
在一行中用以下格式输出最小的字符串:
Min is: 最小字符串
输入样例:
5
Li
Wang
Zha
Jin
Xian
结尾无空行
输出样例:
Min is: Jin
结尾无空行
#include <stdio.h>
#include <string.h>
int main()
{
int N,i;
char a[80],b[80];
scanf("%d",&N);
gets(a);
for(i=1;i<N;i++)
{
gets(b);
if(strcmp(a,b)>0)
strcpy(a,b);
}
printf("Min is: %s",a);
return 0;
}
运行结果及报错内容
并没有输入空格,但输入少一行,无法正常输出a
但换成scanf就完全正确了