Intermezzo.L 发表于 2021-1-7 21:54:59

如何在一个字符串中的指定位置插入空格

现在我有一个字符串str = "a||b&&c",我想通过插入空格的操作,将该字符串转换为str = "a || b && c";;。烦请大佬指点一下。

Intermezzo.L 发表于 2021-1-7 21:57:33

现在我有一个字符串str = "a||b&&c",我想通过插入空格的操作,将该字符串转换为str = "a || b && c";。烦请大佬指点一下。

WindyJane 发表于 2021-1-7 22:11:02

先写成字符数组,再strcopy

jackz007 发表于 2021-1-7 22:48:07

本帖最后由 jackz007 于 2021-1-7 22:53 编辑

#include <stdio.h>
#include <string.h>

int alpha(char c)
{
      if(c >= 'A' && c <= 'Z' || c >= 'a' && c <= 'z') return 1 ;
      else return 0                                             ;
}

int symbol(char c)
{
      if(! alpha(c) && c != ' ') return 1                     ;
      else return 0                                             ;
}

int main(void)
{
      char s = "a||b&&c"                                    ;
      int i , j , k , m                                       ;
      m = strlen(s)                                             ;
      for(i = 0 ; i < m - 1 ; i ++) {
                if(alpha(s) && symbol(s) || symbol(s) && alpha(s)) {
                        for(j = m ; j > i ; j --) s = s ;
                        s = ' '                            ;
                        m ++                                    ;
                }
      }
      printf("%s\n" , s)                                        ;
}

Intermezzo.L 发表于 2021-1-8 13:52:45

jackz007 发表于 2021-1-7 22:48


感谢大佬指点
页: [1]
查看完整版本: 如何在一个字符串中的指定位置插入空格