我的基础测试中也有一个相关的题,是输入六个字符串并按从小到大排列,我现在改成从大到小排列。把程序放在下面了。供你参考。- #include <stdio.h>
- #include <string.h>
- int main()
- {
- int i,j;
- char a[6][100];
- char temp[100];
- for(i=0;i<=5;i++) //Input six string.
- {
- printf("Please input the %dth string(within 100 words).\n",i+1);
- gets(a[i]);
- }
- printf("\nThe original six string:\n");
- for(i=0;i<=5;i++) /*Output the original six string.*/
- printf("%s\n",a[i]);
-
- for(i=0;i<=4;i++) /*Sequence the 6 string with the method of select sort.*/
- {
- for(j=i+1;j<=5;j++)
- {
- if(strcmp(a[i],a[j])<0)
- {//switch a[i] and a[j].
- strcpy(temp,a[i]);
- strcpy(a[i],a[j]);
- strcpy(a[j],temp);
- }
- }
- }
- printf("\nThe six string after Sequence:\n");
- for(i=0;i<=5;i++) /*Output the six string after Sequence.*/
- printf("%s\n",a[i]);
- return 0;
- }
复制代码
主要思路是先用一个循环输入六个字符串,然后用选择排序法进行排序,其中用到了strcpy函数,最后用一个循环把排序后的结果输出。 |