指针的方法进行排序
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.编写两个排序函数,要求一个函数完成从小到大排序,一个函数完成从大到小排序,并编写主函数完成:
(1)输入n个数。
(2)组织调用排序函数对n个数按从大到小排序并输出。
(3)组织调用排序函数对n个数按从小到大排序并输出。
3-1-1
#include
//指针方法:从小到大:
void s1(int *x,int n)
{int t,*p1,*p2;
for(p1=x;p1 for(p2=p1;p2 if(*p1>*p2) {t=*p1;*p1=*p2;*p2=t;} } //比较法从大到小: void s2(int *x,int n) {int t,*p1,*p2; for(p1=x;p1 for(p2=p1;p2 if(*p1<*p2) {t=*p1;*p1=*p2;*p2=t;} } void main() {int a[5],b[5],i; printf("输入第一组5 numbers:"); for(i=0;i<5;i++) scanf("%d",&a[i]); s1(a,5); printf("从小到大:"); for(i=0;i<5;i++) printf("%d\t",a[i]); printf("\n输入第二组5 numbers:"); for(i=0;i<5;i++) scanf("%d",&b[i]); s2(b,5); printf("从小到大:"); for(i=0;i<5;i++) printf("%d\t",b[i]); printf("\n"); } /*