C++一维数组_找出数组中最大的元素、数组逆置、冒泡排序

#include
using namespace std;

//五只小猪称体重,数组中记录小猪体中,找出最重的小猪
int main()
{
	//1、创建五只小猪的体重
	int arr[5] = { 300,350,200,400,250 };
	//2、从数组中找到最大只
	
	int max = 0;//先认定一个最大值0;
	for (int i = 0; i < 5; i++)
	{
		//如果访问的数组中的元素比我们认定的最大只还有大,更新最大值
		if (arr[i] > max)
		{
			max = arr[i];
		}
	}
	//3、打印
	cout << "最重的小猪体中为:" << max << endl;
	system("pause");
	return 0;
}





#include
using namespace std;

//数组逆置
int main()
{
	//1、创建数组
	int arr[5] = { 1,4,5,8,6 };
	cout << "数组逆置前:" << endl;
	for (int i = 0; i < 5; i++)
	{
		cout << arr[i] << endl;
	}
	//2、实现逆置
	//2.1记录起始下标位置
	//2.2记录结束下标位置
	//2.3起始下标与结束下标的元素互换
	//2.4起始位置++ 结束位置--
	//2.5循环执行2.1操作,直到起始位置<=结束位置
	int start = 0;//起始下标
	int end = sizeof(arr) / sizeof(arr[0]) - 1;//结束下标

	while (start < end)
	{
		//实现元素互换
		int temp = arr[start];
		arr[start] = arr[end];
		arr[end] = temp;
		//下标更新
		start++;
		end--;
	}

	//3、打印逆置后的数组

	cout << "数组逆置后:" << endl;
	for (int i = 0; i < 5; i++)
	{
		cout << arr[i] << endl;
	}

	system("pause");
	return 0;
}






#include
using namespace std;

//冒泡排序 升序
int main()
{
	int arr[9] = { 4,8,2,3,6,5,1,9,7 };

	cout << "排序前: " << endl;
	for (int i = 0; i < 9; i++)
	{
		cout << arr[i] << " ";
	}
	cout << endl;
	//开始冒泡排序
	/*
		排序总轮数=元素个数-1;
		每轮对比次数=元素个数-排序轮数-1;
	*/
	for (int i = 0; i < 9 - 1; i++)
	{
		//内层循环 每轮对比次数=元素个数-排序轮数-1;
		for (int j = 0; j < 9 - i-1; j++)
		{
			//若第一个数字,比第二个数字大,交换两个数字
			if (arr[j] > arr[j + 1])
			{
				int temp = arr[j];
				arr[j] = arr[j + 1];
				arr[j + 1] = temp;
			}
		}
	}
	cout << "排序后: " << endl;
	for (int i = 0; i < 9; i++)
	{
		cout << arr[i] << " ";
	}
	cout << endl;

	system("pause");
	return 0;
}

 

你可能感兴趣的:(C++一维数组_找出数组中最大的元素、数组逆置、冒泡排序)