这是个排序代码 编译后还是一样 请大佬指点迷津
程序代码:
#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; }