neuq oj 1007 計負均正 C++

計負均正

題目描述

從鍵盤輸入任意20個整型數,統計其中的負數個數並求所有正數的平均值。

保留兩位小數

輸入

輸出

樣例輸入

1 2 3 4 5 6 7 8 9 10
-1 -2 -3 -4 -5 -6 -7 -8 -9 -10

樣例輸出

10
5.50

代碼


#include<iostream>

#include<iomanip> using namespace std; int main() { int n=20; int num=0; int i=0; double average=0; int x; int sum=0; cout<<"請輸入20個整型數"<<endl; while(n--) { cin>>x; if(x<0) { num++; } else { i++; sum+=x; average=(double)sum/i; } } cout.setf(ios::fixed); cout.setf(ios::showpoint); cout.precision(2); cout<<"負數的個數爲"<<num<<endl; cout<<"所有正數的平均值爲"<<average<<endl; return 0;

}

體會

cout方法:

要使用下面的控制符,你需要在相應的源文件中包含頭文件“iomanip”。也就是添加如下代碼:  #include <iomanip>
控制符---描 述  
dec --- 置基數爲10,後由十進制輸出(系統默認形式)  
hex --- 置基數爲16,後由十六進制輸出  
oct --- 置基數爲8,後由八進制輸出  
setfill(c) --- 設填充字符爲c  
setprecision(n) --- 設置實數的精度爲n位  
setw(n) --- 設域寬爲n個字符  
setiosflags(ios::fixed) --- 固定的浮點顯示  
setiosflags(ios::scientific) --- 指數表示  
setiosflags(ios::left) --- 左對齊   
setiosflags(ios::right) --- 右對齊   
setiosflags(ios::skipws) --- 忽略前導空白  
setiosflags(ios::uppercase) --- 16進制數大寫輸出  
setiosflags(ios::lowercase) ---16進制數小寫輸出
其中:setw設置域寬,使用一次就得設置一次,其他的函數,設置一次永久有效。


發佈了33 篇原創文章 · 獲贊 4 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章