顺便告诉你一下,strcmp函数的比较是逐个比较,比如:jfskdljf jfshladf 先是j与j比较,接着f与f比较,到k与h比较时发现k大于h,所以函数就认为前者大于后者。明白了吧!
二楼的兄弟,主函数为什么要有返回值啊?
for(i=0;i<4;i++) //利用循环体把最小的放在末尾 { if(strcmp(a,a)<0) { strcpy(b,a); strcpy(a,a); strcpy(a,b); } }
#include<stdio.h> #include<string.h> int main() { char a[10][100]={0}; char b = 0; // <------------------------------------- int i; for (i = 0; i < 5; i++) //想输入几个数就把5改成几 gets(a[i]); for(i = 1; i < 4; i++) //利用循环体把最小的放在末尾 { if(strcmp(a[i], a[b]) < 0) // <------------------- { b = i; // <----------------------------------- } } printf("%s\n", a[b]); // <---------------------------- return 0; }