国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++幼兒園[3] - 數(shù)組與函數(shù)

2019-11-11 05:53:53
字體:
供稿:網(wǎng)友

春節(jié)歇了幾天之后就不想干活了 果然,人不做事..就會變懶。

慣例先說說上次

遺留的問題:

if…else if…else

把這當成三個語句而不是兩個。 雖然說else if 看上去就是else+ifelse if 占一行

else if(){ ...}else if(){ ...}

else + if 就要占兩行了,自動縮進之后,多級就會變得很臃腫

else if() { ... } else if() { ... }

變量命名

別老用abc xyz了,更不要abc xyz ABC XYZ一起上,我看著都頭大,寫程序畢竟不是做數(shù)學題(而且別學教程啊,教程只是為了方便) 可以有如下替換(用有實際意義的單詞): grade credit mark point number(num) result sum temp(temporary) 這種名字怎么起,現(xiàn)階段原則是,開心就好...

另外,一般見到XY都是坐標 abc做臨時變量也是可以的,所以GPA計算器里寫abc也將就吧(用來記錄臨時的值) 介紹一種常用的駝峰命名法:

變量&函數(shù): int i; //或者j,k.用作循環(huán)變量或跳出循環(huán)條件int temp; //臨時記錄double chaoChaoLength; //超超身高,注意分成3個語塊,第一塊首字母小寫,其他塊首字母大寫bool isHeBullShit; //bool型可用“is”開頭,同上注意大小寫const int MAX_LENGTH;//常量,全大寫,用下劃線區(qū)分語塊類:class GayGay //每塊首字母都大寫{ ...};

下面講正題

數(shù)組

顧名思義,就是一組數(shù),可以是任何類型的 這組數(shù)有序存儲,且可重復(數(shù)組與集合概念相對,集合無序且不可重復)

數(shù)組的定義:數(shù)據(jù)類型 數(shù)組名[常量]

int a[5]; //數(shù)組a可包含5個數(shù)a[0] = 1; //這里a[0]表示數(shù)組a的第一個數(shù)a[4] = 5; //將數(shù)組a的最后一個數(shù)賦值 5/**就是說我們定義a[5]的這個“5”表示有5個數(shù)*訪問時從下標0開始,a[0] a[1] a[2] a[3] a[4]*///上面只給2個數(shù)賦值了,其他數(shù)是多少?把整個數(shù)組輸出出來看看for (int i = 0; i < 5; i++){ cout << a[i] << endl;}int b[3] = { 6,9,4 }; //數(shù)組初始化int c[] = { 0,0,0,0,5 }; //直接賦值時不需聲明數(shù)組大小int x = 6;int d[x]; //敲黑板,劃重點const int y = 6;int e[y];

偷懶貼個教程,請認真閱讀 http://c.biancheng.net/cpp/biancheng/view/151.html

有一維數(shù)組肯定就有多維數(shù)組了,跟一維數(shù)組同理,就是數(shù)組套數(shù)組 http://c.biancheng.net/cpp/biancheng/view/152.html

函數(shù)

http://c.biancheng.net/cpp/biancheng/view/31.html 寫得挺好的,嗯,請認真閱讀

補充: 函數(shù)在被調(diào)用的時候,它所表示的值就是返回值,可以被當做普通變量,做賦值,判斷等操作

#include <iostream>using namespace std;int square(int x) //{ return x*x; }void main(){ if (!square(0)) //square(0)返回值為0(false),!是“非”的意思,!false就是true了 { cout << "hey"; } bool b = square(1); //b被賦值為true了}

常用系統(tǒng)函數(shù)(標準庫函數(shù))

也就是c++的創(chuàng)造者寫好的函數(shù)

會用系統(tǒng)函數(shù)能節(jié)省大量時間 但有時候需要知道那些函數(shù)怎么實現(xiàn)的(提升自己or避免因未知原理而可能出現(xiàn)的問題) 遺憾的是c++中貌似不能方便地利用IDE的“轉(zhuǎn)到定義”查看系統(tǒng)函數(shù)體。

下面列舉一些常用的,請眼熟他們的名字,不僅c++,其他語言的這些函數(shù)名字也都大同小異

函數(shù) 解釋 頭文件
sqrt() 求平方根 cmath
abs() 求絕對值 cmath
sin(),cos(),tan() Exactly what you think cmath
ceil(),floor() 天花板(地板):不小(大)于該值的最小(大)整數(shù) cmath
log(),log10() 分別表示lnxlog10x cmath
tolower(),toupper() 轉(zhuǎn)換成小寫/大寫字母 iostream
time() 返回1970/1/1零點到目前的秒數(shù) ctime
rand(),srand() 隨機數(shù)相關(guān) iostream

形參,實參,作用域

老生常談的問題

首先需要知道,c++程序是按順序執(zhí)行(編譯)的,一句一句,直到條件控制、跳轉(zhuǎn)語句。也就是說下面的一段程序是錯誤的

int a=b;int b=1;

c++中,一對大括號內(nèi)的區(qū)域稱為一個作用域,該作用域內(nèi)聲明的變量,對域外不可見 所以,程序執(zhí)行過一個作用域之后,該域內(nèi)聲明的變量會消失(內(nèi)存釋放) 但是,在域外(特指作用域前)聲明的變量,在作用域內(nèi)做的改變會保留

試試看下面的代碼

void main(){ int a = 0; { int b = 1; a = b; } cout << a; cout << b;}

在域外已經(jīng)不存在b這個變量了,但是域內(nèi)對a做的改變?nèi)匀槐A?/p>

函數(shù)有一對大括號,然而并不能跟作用域等同 比如

void nega(double x){ x = -x;}void main(){ int x = 6; nega(x); cout << x; //x仍為6}

x沒有改變,因為在nega()的這個括號里,double x 就是一個新的變量了(簡稱“新x”),它的值為調(diào)用時的6,也就是“老x”的 也就是說,調(diào)用的時候,僅僅是把x的值傳了進去,函數(shù)體內(nèi)的x相當于一個備份,對這個備份做任何操作,無法影響“老x”。


今天就先做對它們做初步的介紹

如“數(shù)組怎么作為函數(shù)的參數(shù)”,“怎么用函數(shù)交換兩個實參的值”之類的問題,等學習了指針的內(nèi)容之后就會明白。 (以上兩個問題即地址與值問題)

請自己在下面練習一下怎么使用數(shù)組與函數(shù)。

提示:

void test(int arr[], int length)

可以傳數(shù)組進函數(shù),用length表示數(shù)組長度

小作業(yè)(不用交):

聲明一個 int 型數(shù)組(亂序),對其元素進行排序 如 原數(shù)組 0 7 9 5 1 3 排序后 0 1 3 5 7 9 整個過程可寫在main函數(shù)中,不需另寫函數(shù)把之前的作業(yè)“GPA計算器”和“輸出質(zhì)數(shù)”變成函數(shù),從main函數(shù)里分離出來 要求: GPA計算器:無輸入,返回值為計算所得GPA 輸出質(zhì)數(shù):輸入整數(shù)n,輸出從0到n的質(zhì)數(shù),無返回值 并在main函數(shù)中調(diào)用上面兩個函數(shù)
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 江城| 南陵县| 常州市| 天柱县| 台东县| 平谷区| 聂拉木县| 湘阴县| 渝北区| 凤凰县| 沙洋县| 陆良县| 长宁县| 雅江县| 汪清县| 靖边县| 阳信县| 通化县| 呈贡县| 五台县| 凤山县| 精河县| 禹州市| 凤庆县| 潼关县| 台南县| 黎城县| 微博| 台湾省| 沙雅县| 白城市| 土默特左旗| 迁安市| 灵寿县| 屏东市| 长宁区| 宜章县| 保康县| 遂宁市| 隆德县| 温宿县|