任意键入 3 个字符串,编程找出最小的一个。
编写源程序 8-7.c:
#include<stdio.h>
#include<string.h>
int main(){
char string[30];
// 定义一个二维数组
// ch[1]、ch[2]、ch[3] 都是一个字符数组,相当于三个字符串
char ch[3][30];
int i;
// 循环读取三行,并且将每行存到 ch[i] 中
for(i=0;i<3;i++)
gets(ch[i]); // 有的编译器会报 warning,提示 gets() 函数不安全,不影响实验。
strcpy(string,ch[0]);
for(i=1;i<3;i++)
if(strcmp(ch[i],string)<0)
strcpy(string,ch[i]);
printf("The result is :\n%s",string);
return 0;
}
这里要注意的是,我们定义的 ch[1]、ch[2]、ch[3] 都只有 30 个字符大小,gets()
函数还会自动补 \0
,因此我们每行的输入不要超过 29 个字符。