#include<bits/stdc++.h>
using namespace std;
int main(){int n;cin>>n; // 输入整数 n,表示数组的大小int arr[n]; // 创建大小为 n 的整型数组for(int i=0;i<n;i++) cin>>arr[i]; // 输入数组元素for(int i=0;i<n;i++){ // 对数组进行冒泡排序for(int j=0;j<n;j++){if(arr[i]<arr[j]){swap(arr[i],arr[j]); // 如果当前元素比后面的元素大,则交换位置}}}int a=0; // 计数器,统计奇数个数for(int i=0;i<n;i++){if(arr[i]%2!=0){ // 判断当前元素是否为奇数a++; // 是奇数则计数器加1if(a==2){ // 如果是第二个奇数,需要输出逗号分隔符a=1; // 计数器重置为 1cout<<","; // 输出逗号分隔符}cout<<arr[i]; // 输出奇数}}
}
返回代码逻辑:
- 首先,从标准输入中读取一个整数 n,表示数组的大小。
- 创建一个大小为 n 的整型数组 arr。
- 使用 for 循环,从标准输入中依次读取 n 个元素并存入数组 arr 中。
- 使用嵌套的两个 for 循环,实现冒泡排序算法对数组 arr 进行升序排序。
- 初始化计数器 a 为 0,用于统计奇数的个数。
- 使用 for 循环遍历数组 arr 中的元素:
- 如果当前元素为奇数,则将计数器 a 加1。
- 如果计数器 a 的值为2,表示已经找到了第二个奇数,输出逗号分隔符。
- 将计数器 a 重置为 1。
- 输出当前奇数。
- 程序结束。