A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© megatron 初级黑马   /  2014-7-19 18:50  /  1397 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

找多个字符串的最大公共子串的题,求解答

2 个回复

正序浏览
6666666666666666
回复 使用道具 举报
我的基础测试中也有一个相关的题,是输入六个字符串并按从小到大排列,我现在改成从大到小排列。把程序放在下面了。供你参考。
  1. #include <stdio.h>
  2. #include <string.h>
  3. int main()
  4. {
  5.         int i,j;
  6.         char a[6][100];
  7.         char temp[100];
  8.         for(i=0;i<=5;i++)   //Input six string.
  9.         {
  10.                 printf("Please input the %dth string(within 100 words).\n",i+1);
  11.                 gets(a[i]);
  12.         }
  13.         printf("\nThe original six string:\n");
  14.     for(i=0;i<=5;i++)      /*Output the original six string.*/
  15.                 printf("%s\n",a[i]);
  16.        
  17.         for(i=0;i<=4;i++)   /*Sequence the 6 string with the method of select sort.*/
  18.         {
  19.                 for(j=i+1;j<=5;j++)
  20.                 {
  21.                         if(strcmp(a[i],a[j])<0)
  22.                         {//switch a[i] and a[j].
  23.                                 strcpy(temp,a[i]);
  24.                                 strcpy(a[i],a[j]);
  25.                                 strcpy(a[j],temp);
  26.                         }
  27.                 }
  28.         }
  29.         printf("\nThe six string after Sequence:\n");
  30.     for(i=0;i<=5;i++)                /*Output the six string after Sequence.*/
  31.                 printf("%s\n",a[i]);
  32.         return 0;
  33. }
复制代码

主要思路是先用一个循环输入六个字符串,然后用选择排序法进行排序,其中用到了strcpy函数,最后用一个循环把排序后的结果输出。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马