程序异常 2023-01-03 13:27 采纳率: 66.7%
浏览 64
已结题

(C语言)如何实现字符串数组中两个字符串元素的交换?

假如我定义了一个字符串数组a[10][20],我想将
a[0]和a[1]两个字符串(字符串等长)交换,我该怎么操作?😭

  • 写回答

3条回答 默认 最新

  • 於黾 2023-01-03 13:32
    关注

    方法1

    char a[10][20];
    char t[20];
    //省略数组a赋值
    
    strcpy(t,a[0]);
    strcpy(a[0],a[1]);
    strcpy(a[1],t);
    

    方法2

    char a[10][20];
    char* b[10];
    //省略数组a赋值
    int i;
    char *t;
    for(i=0;i<10;i++)b[i]=a[i];
    t=b[0];
    b[0]=b[1];
    b[1]=t;
    //最终b中是排序后的顺序,a本身顺序并不改变
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 1月11日
  • 已采纳回答 1月3日
  • 创建了问题 1月3日

悬赏问题

  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 R语言卸载之后无法重装,显示电脑存在下载某些较大二进制文件行为,怎么办
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?
  • ¥15 关于#vue.js#的问题:修改用户信息功能图片无法回显,数据库中只存了一张图片(相关搜索:字符串)
  • ¥15 texstudio的问题,
  • ¥15 spaceclaim模型变灰色