前言
本文的文字及圖片來源于網路,僅供學習、交流使用,不具有任何商業用途,著作權歸原作者所有,如有問題請及時聯系我們以作處理,
作者:Regina520 
新手注意:如果你C++學的不好,可以去拿我的C++最新精講教程點我進裙自行獲取,
在 C++ 中,除了可以創建各種函式,還包含了各種有用的函式供您使用,這些函式寫在標準 C 和 C++ 庫中,叫做內置函式,您可以在程式中參考這些函式,
數學函式
C++ 內置了豐富的數學函式,可對各種數字進行運算,下表列出了 C++ 中一些有用的內置的數學函式,
為了利用這些函式,您需要參考數學頭檔案 ,
| 函式 | 描述 |
|---|---|
| double cos(double); | 該函式回傳弧度角(double 型)(度數)的余弦, |
| double sin(double); | 該函式回傳弧度角(double 型)(度數)的正弦, |
| double tan(double); | 該函式回傳弧度角(double 型)(度數)的正切, |
| double log(double); | 該函式回傳引數的自然對數, |
| double pow(double, double); | 假設第一個引數為 x,第二個引數為 y,則該函式回傳 x 的 y 次方, |
| double hypot(double, double); | 該函式回傳兩個引數的平方總和的平方根,也就是說,引數為一個直角三角形的兩個直角邊,函式會回傳斜邊的長度, |
| double sqrt(double); | 該函式回傳引數的平方根, |
| int abs(int); | 該函式回傳整數的絕對值, |
| double fabs(double); | 該函式回傳任意一個十進制數的絕對值, |
| double floor(double); | 該函式回傳一個小于或等于傳入引數的最大整數, |
隨機函式
在許多情況下,需要生成亂數,關于亂數生成器,有兩個相關的函式,一個是 rand(),該函式只回傳一個偽亂數,生成亂數之前必須先呼叫 srand() 函式,
下面是一個關于生成亂數的簡單實體,實體中使用了 time() 函式來獲取系統時間的秒數,通過呼叫 rand() 函式來生成亂數:
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
int main ()
{
int i,j;
// 設定種子
srand( (unsigned)time( NULL ) );
/* 生成 10 個亂數 */
for( i = 0; i < 10; i++ )
{
// 生成實際的亂數
j= rand();
cout <<"亂數: " << j << endl;
}
return 0;
}
當上面的代碼被編譯和執行時,它會產生下列結果:
亂數: 1748144778
亂數: 630873888
亂數: 2134540646
亂數: 219404170
亂數: 902129458
亂數: 920445370
亂數: 1319072661
亂數: 257938873
亂數: 1256201101
亂數: 58032298
setw()函式
在C++中,setw(int n)用來控制輸出間隔,
例如:
cout<<'s'<<setw(8)<<'a'<<endl;
則在螢屏顯示
s a
//s與a之間有7個空格,setw()只對其后面緊跟的輸出產生作用,如上例中,表示’a’共占8個位置,不足的用空格填充,若輸入的內容超過setw()設定的長度,則按實際長度輸出,
setw()默認填充的內容為空格,可以用setfill()配合使用設定其他字符填充,
如cout<<setfill('*')<<setw(5)<<'a'<<endl;
則輸出:****a //4個*和字符a共占5個位置,
所謂域寬,就是輸出的內容(數值或字符等等)需要占據多少個字符的位置,如果位置有空余則會自動補足,比如我們要設定域寬為2,那么當輸出一位數1的時候輸出的就是“ 1”,即在1前面加了一個空格,空格和數字1正好一共占用了兩個字符的位置,如果你C++學的不好,可以去拿我的C++最新精講教程點我進裙自行獲取,
我們在設定域寬和填充字符的時候要注意幾點:
①設定域寬的時候應該填入整數,設定填充字符的時候應該填入字符,
②我們可以對一個要輸出的內容同時設定域寬和填充字符,但是設定好的屬性僅對下一個輸出的內容有效,之后的輸出要再次設定,即cout <<setw(2) <<a <<b;陳述句中域寬設定僅對a有效,對b無效,
③setw和setfill被稱為輸出控制符,使用時需要在程式開頭寫上#include “iomanip.h”,否則無法使用,
實體
#include <iostream>
using namespace std;
#include <iomanip>
using std::setw;
int main ()
{
int n[ 10 ]; // n 是一個包含 10 個整數的陣列
// 初始化陣列元素
for ( int i = 0; i < 10; i++ )
{
n[ i ] = i + 100; // 設定元素 i 為 i + 100
}
cout << "Element" << setw( 13 ) << "Value" << endl;
// 輸出陣列中每個元素的值
for ( int j = 0; j < 10; j++ )
{
cout << setw( 7 )<< j << setw( 13 ) << n[ j ] << endl;
}
return 0;
}
上面的程式使用了 setw() 函式來格式化輸出,當上面的代碼被編譯和執行時,它會產生下列結果:
Element Value
0 100
1 101
2 102
3 103
4 104
5 105
6 106
7 107
8 108
9 109
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/83154.html
標籤:C++
上一篇:X264-應用工程
下一篇:C++ 運算子多載的基本概念
