利用指针将10个学生的姓名排序。
时间: 2023-06-16 18:05:09 浏览: 163
以下是一个简单的C++代码示例,演示如何使用指针对10个学生的姓名进行排序:
```cpp
#include <iostream>
#include <string>
using namespace std;
const int NUM_STUDENTS = 10;
void sortNames(string* names, int size) {
for (int i = 0; i < size - 1; i++) {
for (int j = i + 1; j < size; j++) {
if (names[i] > names[j]) {
string temp = names[i];
names[i] = names[j];
names[j] = temp;
}
}
}
}
int main() {
string students[NUM_STUDENTS] = {"Alice", "Bob", "Charlie", "David", "Emma", "Frank", "George", "Hannah", "Ivy", "Jack"};
cout << "Original order: ";
for (int i = 0; i < NUM_STUDENTS; i++) {
cout << students[i] << " ";
}
cout << endl;
sortNames(students, NUM_STUDENTS);
cout << "Sorted order: ";
for (int i = 0; i < NUM_STUDENTS; i++) {
cout << students[i] << " ";
}
cout << endl;
return 0;
}
```
在 `main` 函数中,我们首先定义了一个包含10个学生姓名的字符串数组 `students`,然后打印出原始的学生姓名顺序。接下来,我们调用 `sortNames` 函数,该函数接受一个指向字符串数组的指针和该数组的大小作为参数。在 `sortNames` 函数中,我们使用简单的冒泡排序算法对学生姓名进行排序。最后,在 `main` 函数中,我们再次打印排序后的学生姓名顺序。
值得注意的是,我们在 `sortNames` 函数中使用的 `names[i]` 和 `names[j]` 表示字符串数组中第 `i` 个和第 `j` 个字符串的值,由于 `names` 是一个指向字符串数组的指针,因此我们可以使用指针算术来访问数组中的元素。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)