标题:这是个排序代码 编译后还是一样 请大佬指点迷津
取消只看楼主
风流泰
Rank: 1
等 级:新手上路
帖 子:78
专家分:0
注 册:2018-9-29
结帖率:87.88%
已结贴  问题点数:11 回复次数:2 
这是个排序代码 编译后还是一样 请大佬指点迷津
程序代码:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main(void)
{
    char *tmpBuf=NULL; 
    int i=0,j=0; 
    char myBuf[30];
    char myArray[10][30]={"aaa","bbb","ccc","ddd"}; 
    
    int num=4;
    
    printf("排序之前\n"); 
    //打印
    for(i=0;i<num;i++)
    {
        printf("%s\n",myArray[i]); 
    } 
    
    //排序
    for(i=0;i<num;i++)
    {
        for(j=i+1;j<num;j++)
        {
            if(strcmp(myArray[i],myArray[j])>0)
            {
                strcpy(tmpBuf,myArray[i]);//交换的是内存块 
                strcpy(myArray[i],myArray[j]);
                strcpy(myArray[j],tmpBuf); 
            } 
        } 
    } 
    
    //打印
    printf("排序之后\n"); 
    for(i=0;i<num;i++)
    {
        printf("%s\n",myArray[i]); 
    } 
     
    system("pause");
    return 0; 
} 
搜索更多相关主题的帖子: 排序 char num printf for 
2019-04-30 15:54
风流泰
Rank: 1
等 级:新手上路
帖 子:78
专家分:0
注 册:2018-9-29
得分:0 
回复 2楼 rjsp
这是编译后的结果

排序之前
aaa
bbb
ccc
ddd
排序之后
aaa
bbb
ccc
ddd
请按任意键继续. . .

原本我认为编译的结果应该是,

排序之前
aaa
bbb
ccc
ddd
排序之后
ddd
ccc
bbb
aaa
请按任意键继续. . .


所以程序中怎么修改会编译后变成

排序之前
aaa
bbb
ccc
ddd
排序之后
ddd
ccc
bbb
aaa
请按任意键继续. . .





2019-04-30 23:12
风流泰
Rank: 1
等 级:新手上路
帖 子:78
专家分:0
注 册:2018-9-29
得分:0 
回复 4楼 word123
谢谢
2019-05-01 16:29



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-494481-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.362310 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved