freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c語言程序設(shè)計案例教程(三)ppt-資料下載頁

2025-01-05 18:16本頁面
  

【正文】 10日星期三 授課要點 ? 數(shù)組的概念 ? 一維數(shù)組的定義和引用 ? 一維數(shù)組的初始化和賦值 ? 數(shù)組元素的遍歷 Date: 2021年 11月 10日星期三 這樣做好嗎? 如果題目改為 10個數(shù)、 100個數(shù)該怎么做? 問題 1:從鍵盤輸入 5個整數(shù),逆序輸出這 5個數(shù)。 main() { int a0,a1,a2,a3,a4。 scanf(“%d”,amp。a0)。 scanf(“%d”,amp。a1)。 scanf(“%d”,amp。a2)。 scanf(“%d”,amp。a3)。 scanf(“%d”,amp。a4)。 printf(“%d\n”,a4)。 printf(“%d\n”,a3)。 printf(“%d\n”,a2)。 printf(“%d\n”,a1)。 printf(“%d\n”,a0)。 } Date: 2021年 11月 10日星期三 ? 在 “ 學(xué)生成績管理系統(tǒng) ” 中,我們需要對多個學(xué)生進行處理,比如 100個學(xué)生,是否必須定義 100個變量呢? Student stu1。 Student stu2。 Student stu3。 ? Student stu100。 ? 定義多個變量,在定義、輸入、輸出、處理的時候非常不方便。 ? 如果需要處理 5000個學(xué)生的成績,情況就更糟。 問題 2 Date: 2021年 11月 10日星期三 ? 以上兩個例子有什么共同之處? 問題 2 具有相同的數(shù)據(jù)類型! Date: 2021年 11月 10日星期三 數(shù)組的概念 ? 數(shù)組是一組 變量 ,滿足下列條件: ( 1)具有相同的名字 ( 2)具有相同的數(shù)據(jù)類型 ( 3)在存儲器中連續(xù)存放 ? 每個變量 名字相同 下標(biāo)不同 ,稱為“數(shù)組元素” ? “ 數(shù)組名 ”代表整個數(shù)組,其值是這組變量在內(nèi)存中所占連續(xù)存儲空間的 首地址 。 ? 數(shù)組要 先定義后使用 。 ? 數(shù)組名不能與相同作用域的其他變量名重名 Date: 2021年 11月 10日星期三 問題 ?如何定義數(shù)組? ?如何為數(shù)組元素賦值? ?如何引用數(shù)組元素? Date: 2021年 11月 10日星期三 一維數(shù)組的定義 ? 一維數(shù)組: – 只有一個下標(biāo)的數(shù)組 – 定義形式為 :類型說明符 數(shù)組名 [常量表達式 ] – 例如: ? int a[10]; ? 說明 – 數(shù)組名為 a – 數(shù)組中每個元素的數(shù)據(jù)類型為 int類型 – 10個數(shù)組元素 – [ ]內(nèi)是常量表達式,不能為變量 a [ 0 ] a [ 1 ] a [ 2 ] a [ 3 ] a [ 4 ] a [ 5 ] a [ 6 ] a [ 7 ] a [ 8 ] a [ 9 ]Date: 2021年 11月 10日星期三 定義 100個整型變量 定義 50個浮點型變量 定義 1000個 “ 學(xué)生 ” 變量, “ 學(xué)生 ” 類型定義如下: typedef struct { char acNum[10]。 char acName[15]。 ?? }Student。 模仿練習(xí) Date: 2021年 11月 10日星期三 以下一維數(shù)組的定義是否正確? int a[ ]。 define SIZE 100 float b[SIZE]。 int n=10。 char c[n]。 int 2a[10]。 錯誤,沒有指明數(shù)組的大小 int a[10]。 正確 , SIZE是常量,相當(dāng)于 float b[100]。 錯誤,數(shù)組的大小不能是變量,應(yīng)為 int a[10]。 錯誤,數(shù)組名 2a 不符合標(biāo)識符的命名規(guī)則 Date: 2021年 11月 10日星期三 數(shù)組元素的引用 ?數(shù)組就是一組變量的集合, 每個數(shù)組元素相當(dāng)于是一個變量 ?數(shù)組元素的表示: 數(shù)組名 [下標(biāo) ] 如: int a[5];所定義的數(shù)組就是五個變量的集合,分別是: a[0], a[1],a[2], a[3], a[4] int a[N]。 下標(biāo)的取值范圍: 0~ N1 ,其中 N為數(shù)組的大小 下標(biāo)是整型值,可以是整型 常量 、整型 變量 或整型 表達式 如: a[i] a[3+1] a[2*i1] 注意:下標(biāo)不能越界,否則可能覆蓋其他數(shù)據(jù),造成嚴重后果 Date: 2021年 11月 10日星期三 ? 定義數(shù)組之后,與普通變量一樣,數(shù)組是 沒有初始值的,各存儲單元的值都是不定的。 ? 初始化:定義數(shù)組的同時賦初值 ? 語法: 數(shù)據(jù)類型說明符 數(shù)組名 [長度 ]={數(shù)值 1,數(shù)值 2, ?}。 如 : int data[10]={0,1,2,3,4,5,6,7,8,9}。 一維數(shù)組的初始化 0 987654321a [ 0 ] a [ 1 ] a [ 2 ] a [ 3 ] a [ 4 ] a [ 5 ] a [ 6 ] a [ 7 ] a [ 8 ] a [ 9 ]Date: 2021年 11月 10日星期三 定義并初始化一個 float型數(shù)組,包含 5個元素。 定義并初始化一個字符型數(shù)組,包含 6個元素。 定義一個全 0的整形數(shù)組,包含 15個元素。 模仿練習(xí) Date: 2021年 11月 10日星期三 初始化注意事項 : (1) 允許初始化一部分元素,其他沒有賦初值的元素初值為 0; int a[10]={0,1,2,3,4,5}。 相當(dāng)于 int a[10]={0,1,2,3,4,5,0,0,0,0}。 (2)允許初始化時省略數(shù)組的長度,數(shù)組的長度為賦初值的個數(shù); int a[]={1,2,3,4,5}。 相當(dāng)于 int a[5]={1,2,3,4,5}。 (3)不能對整個數(shù)組初始化; int data[5]=1。 錯誤,應(yīng)為: int data[5]={1,1,1,1,1}。 一維數(shù)組的初始化 0 000054321a [ 0 ] a [ 1 ] a [ 2 ] a [ 3 ] a [ 4 ] a [ 5 ] a [ 6 ] a [ 7 ] a [ 8 ] a [ 9 ]Date: 2021年 11月 10日星期三 ? 數(shù)組的賦值只能 對數(shù)組元素單獨操作 ,不能對數(shù)組整體操作。 ? 賦值的兩種方式: int a[5]。 1. 賦值運算符 如: a[3]=8。 2. 輸入函數(shù) 如: scanf(“%d”,amp。a[3])。 例: a={1,3,5,7,9}。 錯誤 ,應(yīng)單獨為每個元素賦值 例: a=1。 錯誤 ,應(yīng)單獨為每個元素賦值 對數(shù)組的整體賦值只能在初始化時進行 一維數(shù)組的賦值 Date: 2021年 11月 10日星期三 解決問題 1 從鍵盤輸入 5個整數(shù),保存到數(shù)組 a中;再逆序輸出。 main() { int a[5]。 scanf(“%d”,amp。a[0])。 scanf(“%d”,amp。a[1])。 scanf(“%d”,amp。a[2])。 scanf(“%d”,amp。a[3])。 scanf(“%d”,amp。a[4])。 printf(“%d\n”,a[4])。 printf(“%d\n”,a[3])。 printf(“%d\n”,a[2])。 printf(“%d\n”,a[1])。 printf(“%d\n”,a[0])。 } main() {int i, a[5]。 for(i=0。i5。i++) scanf(“%d”,amp。a[i])。 for(i=4。i=0。i) printf(“%d”,a[i])。 } Date: 2021年 11月 10日星期三 一維數(shù)組的遍歷 ? 數(shù)組的遍歷一般用 循環(huán)語句 實現(xiàn) ? 注意下標(biāo)的取值范圍,不能越界(編譯系統(tǒng)對下標(biāo)的越界不做檢查) Date: 2021年 11月 10日星期三 解法 1:記下最大數(shù)其值 void main() { int i, max,a[10]。 printf(enter data:\n)。 for(i=0。i10。i++) scanf(%d, amp。a[i])。 max=a[0]。 //假定 a[0]的元素最大 for(i=1。i10。i++) if(a[i]max) max=a[i]。 printf(“最大數(shù)是 %d\n, max)。 } 案例 從鍵盤輸入 10個整數(shù)存放在數(shù)組中,找出其中最大的一個數(shù),輸出該最大數(shù)。 解法 2:記下最大數(shù)相應(yīng)的下標(biāo) void main() { int i, max_id,a[10]。 printf(enter data:\n)。 for(i=0。i10。i++) scanf(%d, amp。a[i])。 max_id=0。 //假定下標(biāo)為 0的元素最大 for(i=1。i10。i++) if(a[i]a[max_id]) max_id=i。 printf(“最大數(shù)是 %d\n,a[max_id])。 } Date: 2021年 11月 10日星期三 學(xué)生模仿練習(xí) 把 8和 3這兩組數(shù)保存在兩個一維數(shù)組中,再把兩個數(shù)組對應(yīng) 元素的值相減后顯示出來。 從鍵盤輸入 10個整數(shù)保存到數(shù)組中,求和、平均值并輸出。 從鍵盤輸入 10個整數(shù)保存到數(shù)組中,求值最小的元素,將這個值最小的元素與數(shù)組的第一個元素交換。最后輸出整個數(shù)組。 Date: 2021年 11月 10日星期三 小組討論并總結(jié) ? 如何保證數(shù)組不越界? ? 數(shù)組的起始下標(biāo)和最后一個元素的下標(biāo)分別是多少? Date: 2021年 11月 10日星期三 結(jié)論 1—— 保證數(shù)組不越界 ? C語言編譯系統(tǒng)并不檢查數(shù)組是否越界。它只給已定義的數(shù)組元素分配內(nèi)存,超過的部分則依次往后排,至于那些位臵的用途是什么,系統(tǒng)是不管的。讀出那些單元一般不會出問題,但如果往那里面寫入數(shù)據(jù)會導(dǎo)致不可預(yù)料的錯誤。 ? 時刻注意數(shù)組的起始元素下標(biāo)值和最后元素的下標(biāo)值 Date: 2021年 11月 10日星期三 結(jié)論 2—— 起始元素和最后元素的下標(biāo) ? 數(shù)組下標(biāo)為非負整數(shù) ? 數(shù)組起始的下標(biāo)為 0 ? 最后元素的下標(biāo)為 :數(shù)組長度 1 Date: 2021年 11月 10日星期三 學(xué)以致用 尋找你身邊的一個實際問題,用到一維數(shù)組。例如:編寫程序?qū)崿F(xiàn)功能:學(xué)號為 1至 10的同學(xué)的體重依次是: 44,34,45,38,55,60,52,35,43,46,從中找出最輕者,及該同學(xué)的學(xué)號。 Date: 2021年 11月 10日星期三 作業(yè) —— 每人必做 ? 將“學(xué)生成績管理系統(tǒng)”中的“學(xué)生”變量定義成數(shù)組,學(xué)生信息的輸入、輸出代碼做出相應(yīng)的修改。 Date: 2021年 11月 10日星期三 作業(yè) —— 小組必做 ? 學(xué)以致用:使用鍵盤選擇商品,輸入件數(shù),然后計算出合計金額并輸出。假定商品單價如下: 音響 電視機 DVD
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1