2_9_7.C
上传用户:wyn840322
上传日期:2007-01-13
资源大小:294k
文件大小:1k
源码类别:

数据结构

开发平台:

C/C++

  1. /* ======================================== */
  2. /*    程式实例: 2_9_7.c                    */
  3. /*    萃取子字串                            */
  4. /* ======================================== */
  5. /* ---------------------------------------- */
  6. /*  萃取子字串                              */
  7. /* ---------------------------------------- */
  8. char *substr(char *str,int pos,int len)
  9. {
  10.    static char str1[100];         /* 子字串宣告     */
  11.    int i,j,end;
  12.    pos --;                        /* 计算字串的开始 */
  13.    end = pos + len - 1;           /* 计算结束位置   */
  14.    for ( i = pos,j = 0; i <= end; i++,j++ )
  15.       str1[j] = str[i];           /* 拷贝字串内容   */
  16.    str1[len] = '';              /* 设定字串结束   */
  17.    return str1;
  18. }
  19. /* ---------------------------------------- */
  20. /*  主程式: 从字串内萃取出子字串            */
  21. /* ---------------------------------------- */
  22. void main()
  23. {
  24.    char string[100];              /* 字串阵列宣告     */
  25.    char *substring;               /* 结果字串指标宣告 */
  26.    int pos;                       /* 起始位置         */
  27.    int len;                       /* 子字串长度       */
  28.    printf("请输入字符串 ==> ");
  29.    gets(string);                  /* 读取字串         */
  30.    printf("请输入起始位置 ==> ");
  31.    scanf("%d",&pos);              /* 读取位置         */
  32.    printf("请输入子字符串长度 ==> ");
  33.    scanf("%d",&len);              /* 读取长度         */
  34.    substring = substr(string,pos,len); /* 萃取子字串  */
  35.    printf("子字符串 %s n",substring);
  36. }