#define _CRT_SECURE_NO_WARNINGS #include"stdlib.h" #include"stdio.h" #include"string.h" int maopao(char p[][100]) { char *buf; buf = (char *)malloc(sizeof(char)* 100); printf("%s", p[1]); int i = 0,j=0; for (i = 1; i < 6; i++) { for (j = i + 1; j< 5; j++) { if (strcmp(p[i], p[j])>0) { strcpy(buf, p[i]); //数组需要用函数strcpy 指针不通过,因为只能不能copy字符串, strcpy( p[i],p[j]); strcpy(p[j],buf); } } } } int myexport(char mystr[][100]) { int i = 0; for (i = 0; i < 6; i++) { printf("%s\n",mystr[i]); } } int main() { char str[6][100] = { "China", "US", "Japan", "Korea", "XOXOXO", "after" }; //如果输出函数的话,就不能定义指针类型的数组;因为常量不好修改。 printf("排序前\n"); myexport(str); maopao(str); printf("排序后\n"); myexport(str); system("pause"); }
