c++输出数之间空一格
时间: 2024-10-20 08:03:19 浏览: 28
在C++中,如果你想在输出的数字间留有一个空格,你可以使用`std::ios_base::space`成员函数结合`std::setfill()`来实现。这两个函数分别设置输出流的间隔字符和填充字符。下面是一个简单的例子:
```cpp
#include <iostream>
#include <iomanip>
int main() {
int numbers[] = {1, 2, 3, 4, 5};
std::ios_base::fmtflags flags = std::ios_base::left; // 设置左对齐
std::ostream_iterator<int> out(std::cout, " "); // 使用空格作为分隔符
for (int num : numbers) {
std::cout << std::setw(2) << num << ' '; // setw设置宽度并用空格填充
// 用setw后直接跟out迭代器,输出会自动带一个空格
}
std::cout << '\n'; // 每组数字后加一个换行符
return 0;
}
```
这个代码片段会将数组中的每个数字用一个空格隔开,并保证每个数字总是在最左边,前面填充足够的空格。注意,这里我们没有显式地调用`std::setfill(' ')`,因为`setw`默认就是用空格填充的。
相关问题
本题要求编写程序,输入n个实数,使用指针引用的方式将它们按从大到小的顺序排列。 输入格式: 输入第一行给出一个正整数n(2≤n≤10),输入第二行给出n个实数,其间以空格分隔。 输出格式: 输出从大到小排好序的n个数(保留2位小数),每个数之间空一格,行末没有空格。用c语言
来实现的话,代码如下:
```c
#include <stdio.h>
#include <stdlib.h>
void sort(float *arr, int n) {
for(int i=0; i<n-1; i++) {
for(int j=i+1; j<n; j++) {
if(arr[j] > arr[i]) {
float temp = arr[j];
arr[j] = arr[i];
arr[i] = temp;
}
}
}
}
int main() {
int n;
scanf("%d", &n);
float *arr = (float *)malloc(n*sizeof(float));
for(int i=0; i<n; i++)
scanf("%f", &arr[i]);
sort(arr, n);
for(int i=0; i<n; i++)
printf("%.2f%c", arr[i], i==n-1 ? '\n' : ' ');
free(arr);
return 0;
}
```
如果需要将程序改成C++语言的话,可以在程序开头添加
```c++
#include <iostream>
#include <algorithm>
using namespace std;
```
然后将main函数改成
```c++
int main() {
int n;
cin >> n;
float *arr = new float[n];
for(int i=0; i<n; i++)
cin >> arr[i];
sort(arr, arr+n, greater<float>());
for(int i=0; i<n; i++)
cout << fixed << setprecision(2) << arr[i] << (i==n-1 ? "\n" : " ");
delete [] arr;
return 0;
}
```
这是使用STL的算法库进行排序的写法。
实数排序 分数 20 作者 张丽华 单位 嘉兴南湖学院 本题要求编写程序,输入n个实数,使用指针引用的方式将它们按从大到小的顺序排列。 输入格式: 输入第一行给出一个正整数n(2≤n≤10),输入第二行给出n个实数,其间以空格分隔。 输出格式: 输出从大到小排好序的n个数(保留2位小数),每个数之间空一格,行末没有空格。要求用指针
以下是一份基于冒泡排序的实现代码,使用指针引用实现:
```c++
#include <cstdio>
#include <algorithm>
using namespace std;
void sort_desc(double* 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]) {
swap(arr[j], arr[j + 1]);
}
}
}
}
int main() {
int n;
scanf("%d", &n);
double* arr[n];
for (int i = 0; i < n; i++) {
double x;
scanf("%lf", &x);
arr[i] = new double(x);
}
sort_desc(arr, n);
for (int i = 0; i < n; i++) {
printf("%.2lf", *arr[i]);
if (i != n - 1) {
printf(" ");
}
}
for (int i = 0; i < n; i++) {
delete arr[i];
}
return 0;
}
```
输入示例:
```
5
3.14 1.41 2.71 4.28 0.62
```
输出示例:
```
4.28 3.14 2.71 1.41 0.62
```
阅读全文
相关推荐
![-](https://img-home.csdnimg.cn/images/20241231044955.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231044955.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)
![doc](https://img-home.csdnimg.cn/images/20241231044833.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)