为了账号安全,请及时绑定邮箱和手机立即绑定

编写一个程序用指针排序0到9十个数,只能用c++

编写一个程序用指针排序0到9十个数,只能用c++

C++
慕的地1484909 2017-05-24 19:13:37
只能用c++内容
查看完整描述

1 回答

?
asd8532

TA贡献143条经验 获得超187个赞

#include <iostream>
using namespace std;
void sort(int *p, int num);  //不要对自定义函数的声明有任何改动
void output(int*, int);
int main( )   //不要对main函数有任何改动
{
	int a[20]={86,46,22,18,77,45,32,80,26,88,57,67,20,18,28,17,54,49,11,16};
	int b[15]={27,61,49,88,4,20,28,31,42,62,64,14,88,27,73};
	sort(a,20);   //用冒泡法按降序排序a中元素
	output(a,20);   //输出排序后的数组
	sort(b,15);   //用冒泡法按降序排序b中元素
	output(b,15);   //输出排序后的数组
	return 0;
}
//下面定义自定义函数
void sort(int *p, int num)
{
	int i,j,t;
	for(j=0;j<num-1;j++)               //共进行num-1趟比较
	{
		for(i=0;i<num-j-1;i++)   //在每趟中要进行num-j次两两比较
		{
			if(*(p+i)<*(p+i+1))   //如果前面的数小于后面的数
			{
				t=*(p+i);    //交换两个数的位置,使小数下沉
				*(p+i)=*(p+i+1);
				*(p+i+1)=t;
			}
		}
	}
	return;
}

void output(int *p, int num)
{
	int i;
	for(i=0;i<num-1;i++)
		cout<<*(p+i)<<",";
	cout<<*(p+num-1)<<"\n"; //最后一个数后面不加逗号,看得更舒服
	return;
}


查看完整回答
反对 回复 2017-07-23
  • 1 回答
  • 0 关注
  • 1233 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号