【題目描述】
讀入三個整數,按每個整數占8個字符的寬度,右對齊輸出它們,按照格式要求依次輸出三個整數,之間以一個空格分開。
【輸入】
只有一行,包含三個整數,整數之間以一個空格分開。
【輸出】
只有一行,按照格式要求依次輸出三個整數,之間以一個空格分開。
【輸入樣例】
123456789 0 -1
【輸出樣例】
123456789 0 -1
最初我寫的如下代碼:
#include <iostream> #include <iomanip> using namespace std;
int main(){ cout.setf(ios::right); //設置輸出右對齊 int a,b,c; cin>>a>>b>>c; cout<<setw(8)<<a<<setw(8)<<b<<setw(8)<<c<<endl;//setw(8),使下一個輸出按八字節對齊。 return 0; }
顯示格式不對。因為題目需要輸出之間需要空格,我不知道如何使用cout輸出。
之后使用printf,就解決了:
#include <stdio.h>
int main(){ int a,b,c; scanf("%d%d%d",&a,&b,&c); printf("%8d %8d %8d",a,b,c); return 0; }
總結:
-> 使用g++編譯器也可以正常編譯執行如上c代碼。
-> 我還是不理解題目中要求的輸出之間有空格是什么意思。
-> c c++混用,能解出問題就行。