指针与数组与函数的实例

要求封装一个函数,用冒泡排序对整形数组进行排序。

我们如何在函数中加入数组,我们知道数组的名字就是数组的首地址所以我们的变量是指针,把实参用指针代入形参。
在函数中只能调用数组的首地址,我们是无法在函数中算出数组的长度的,所以在我们输入变量的时候就要把数组的长度也输入进去

#include<iostream>
#include<algorithm>
using namespace std;
void paixu(int* p, int a)//我们如何在函数中加入数组,我们知道数组的名字就是数组的首地址所以我们的变量是指针
{
	for (int i = 0;i < a - 1;i++){
		for (int x = 0;x < a  - i - 1;x++) {
			if (p[x] > p[x + 1]) {
				int temp = 0;
				temp = p[x + 1];
				p[x + 1] = p[x];
				p[x] = temp;
			}
		}
	}
}
//在函数中只能调用数组的首地址,我们是不知道具体这个数组的长度的,所以在我们输入变量的时候就要把数组的长度也输入进去
void shuchu(int* p, int a) {
	for (int i = 0;i < a;i++) {
		cout << p[i] << " ";
	}
}
int main() {
	int niub[7] = { 42,36,78,22,51,16,57 };
	int d = sizeof(niub) / sizeof(niub[0]);
	paixu(niub, d);
	shuchu(niub, d);
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值