输入4个数字,要求使用指针对这4个数据进行排序,并要求这4个数据的值改变,分别输出这4个数据和排好顺序的数字
时间: 2024-12-02 19:21:20 浏览: 11
在C++中,我们可以使用冒泡排序算法结合指针来进行排序。这里是一个简单的例子,输入四个整数,通过指针操作实现升序排列,并打印出原始值和排序后的结果:
```cpp
#include <iostream>
void bubbleSort(int* arr, int n) {
for (int i = 0; i < n - 1; ++i) {
for (int j = 0; j < n - i - 1; ++j) {
if (*arr[j] > *arr[j + 1]) { // 使用指针比较元素
// 通过指针交换元素
int temp = *arr[j];
*arr[j] = *arr[j + 1];
*arr[j + 1] = temp;
}
}
}
}
int main() {
int numbers[4] = {5, 2, 8, 1}; // 示例输入的四个数字
std::cout << "Original Numbers (before sorting): ";
for (int i : numbers) {
std::cout << i << " ";
}
std::cout << std::endl;
bubbleSort(numbers, 4); // 排序
std::cout << "Sorted Numbers: ";
for (int i : numbers) {
std::cout << i << " ";
}
return 0;
}
```
当你运行这段代码,它会先打印原始的四个数字,然后进行排序并打印出排序后的结果。注意,由于我们是在内存地址上直接操作,所以实际上数组元素的值确实发生了变化。
阅读全文