/* 68. 在主函数中输入10个不等长的字符串,用另一函数对它们排序。 然后在主函数中输出这10个已排好序的字符串,用指针数组完成。 */ #include <stdio.h> #include <stdlib.h> #include <string.h> void f50068(char **pp) { int a[10]={0}; for (int i=0;i<10;i++)//将字符串长度挨个存入数组a[10] { a[i]=strlen(*(pp+i)); } for (int i=0;i<10;i++)//通过比较字符串长度交换指针地址,达到排序目的 { for (int j=0;j<10;j++) { if (a[i]<a[j]) { char *ptemp; ptemp=*(pp+i); *(pp+i)=*(pp+j); *(pp+j)=ptemp; } } } } void main() { char *p[10]={"1234567890","123456789","12345678","1234567","123456","12345","1234","123","12","1"}; for (int i=0;i<10;i++) { printf("%s\n",*(p+i)); } char **p1=p; f50068(p1); for (int i=0;i<10;i++) { printf("%s\n",*(p+i)); } system("pause"); }
由于资源上传太多,资源频道经常被锁定无法上传资源,同学们可以打开VS2013自己创建工程,步骤如下:
1)新建工程
2)选择工程
3)创建完工程如下图:
4)增加文件,右键点击项目
5)在弹出菜单里做以下选择
6)添加文件
7)拷贝代码与运行
http://download.csdn.net/detail/yincheng01/6681845
解压密码:c.itcast.cn