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

正文內(nèi)容

c語(yǔ)言程序設(shè)計(jì)案例教程(四)ppt(已修改)

2025-01-16 08:52 本頁(yè)面
 

【正文】 Date: November 10, 2021 C語(yǔ)言程序設(shè)計(jì)案例教程(四 ) Date: November 10, 2021 第五章 C語(yǔ)言程序設(shè)計(jì)常用算法 ——冒泡排序 Date: November 10, 2021 授課要點(diǎn) ? 冒泡排序的思想及實(shí)現(xiàn) ? 排序算法的應(yīng)用 Date: November 10, 2021 ? 假設(shè)您是一位營(yíng)養(yǎng)師,有顧客向您索取一份減肥菜譜。 ? 前提條件:您熟悉各種食物的熱量 問(wèn)題:保持身材之道 Date: November 10, 2021 ? 列出各種食物的熱量 ? 對(duì)各種食物的熱量進(jìn)行排序 ? 選擇熱量低的食物 問(wèn)題分析 Date: November 10, 2021 問(wèn)題解決 —— 冒泡排序 排序過(guò)程(假設(shè)元素存放在 a[0]- a[n1]中,按遞減排序): ( 1)比較第一個(gè)數(shù)與第二個(gè)數(shù),若為逆序 a[0]a[1],則交換;然后比較第二個(gè)數(shù)與第三個(gè)數(shù);依次類推,直至第 n1個(gè)數(shù)和第 n個(gè)數(shù)比較為止 —— 第一趟冒泡排序,結(jié)果最小的數(shù)被安置在最后一個(gè)元素位置上 ( 2)對(duì)前 n1個(gè)數(shù)進(jìn)行第二趟冒泡排序,結(jié)果使次小的數(shù)被安置在第 n1個(gè)元素位置 ( 3)重復(fù)上述過(guò)程,共經(jīng)過(guò) n1趟冒泡排序后,排序結(jié)束 Date: November 10, 2021 冒泡排序算法過(guò)程: Date: November 10, 2021 采用兩重計(jì)數(shù)型循環(huán): ?步驟 1: 將待排序的數(shù)據(jù)放入數(shù)組中; ?步驟 2: 置 i為 0; ?步驟 3: 讓 j從 0到 4i, 比較 a[j]與 a[j+1], 如果 a[j] = a[j+1], 位置不動(dòng); 如果 a[j] a[j+1], 位置交換,即 temp=a[j]。 a[i]=a[j+1]。 a[j+1]=temp。 步驟 3結(jié)束后 a[5i]中的數(shù)為最小的數(shù) ?步驟 4: 讓 i=i+1; 只要 i=4就返回步驟 3, 將 a[5i]的值排好。當(dāng) i==5時(shí)執(zhí)行步驟 5 ?步驟 5: 輸出排序結(jié)果 冒泡排序算法分析: Date: November 10, 2021 include void main() /* 主函數(shù) */ { int i, j, temp, a[6]。 /* 整型變量 */ for (i=0。 i=5。 i++) /* 鍵入 6個(gè)數(shù),放入 a數(shù)組中 */ { printf(“請(qǐng)輸入食物的熱量 a[%d]=, i)。/* 提示 */ scanf (%d, amp。a[i])。 /* 用鍵盤(pán)輸入整數(shù)賦給 a[i]*/ } for ( i=0。 i=4。 i++) /* 冒泡排序,外層循環(huán) */ for ( j=0。 j=4i。 j++ ) /* 內(nèi)層循環(huán) */ { /* 循環(huán)體,開(kāi)始 */ if ( a[j] a[j+1] ) /* 如果 a[i] a[i+1]*/ { temp = a[j]。 /* 讓 a[i] 與 a[i+1] 交換 */ a[j] = a[j+1]。 a[j+1] = temp。 } } /* 循環(huán)體結(jié)束 */ printf(食物按熱量從高到低的順序顯示為: \n)。 for ( i=0。 i=5。 i++) /* 輸出排序結(jié)果 */ printf(%d\n, a[i])。 /* 格式輸出 a[i]*/ } Date: November 10, 2021 ? 若將題目改為按從小到大的順序輸出,如何修改程序? ? 若排序的個(gè)數(shù)由用戶指定,如何修改程序? 小組討論并總結(jié) Date: November 10, 2021 ? 在數(shù)組排序的基礎(chǔ)上,進(jìn)一步將一個(gè)數(shù)據(jù)插入一個(gè)有序數(shù)組中。 學(xué)生進(jìn)階練習(xí) Date: November 10, 2021 a1 a2 … ai1 ai … an a1 a2 … ai1 … ai x an 數(shù)組中的元素增加 1個(gè) 問(wèn)題分析 Date: November 10, 2021 提示 1. 數(shù)據(jù)初始化(輸入、排序) 2. 輸入待插入數(shù)據(jù) 3. 找到待插入位置 4. 將待插入位置空出 5. 插入數(shù)據(jù) 6. 輸出結(jié)果 Date: November 10, 2021 ? include ? void main() /* 主函數(shù) */ ? { ? int i, j, temp, a[6],x。 /* 定義整型變量 */ ? for (i=0。 i=5。 i++) /* 鍵入 6個(gè)數(shù),放入 a數(shù)組中 */ ? { ? printf(請(qǐng)輸入待排序的數(shù) a[%d]=, i)。 /* 提示 */ ? scanf (%d, amp。a[i])。 /* 用鍵盤(pán)輸入整數(shù)賦給 a[i]*/ ? } ? for ( i=0。 i=4。 i++) /* 冒泡排序,外層循環(huán) */ ? for ( j=0。 j=4i。 j++ )/* 內(nèi)層循環(huán) */ ? { /* 循環(huán)體,開(kāi)始 */ ? if ( a[j] a[j+1] )/* 如果 a[i] a[i+1]*/ ? { ? temp = a[j]。 /* 讓 a[i] 與 a[i+1] 交換 */ ? a[j] = a[j+1]。 ? a[j+1] = temp。 ? } ? } /* 循環(huán)體結(jié)束 */ ? for ( i=0。 i=5。 i++) /* 輸出排序結(jié)果 */ ? printf(%d\n, a[i])。 /* 格式輸出 a[i]*/ ? i=0。 ? printf(請(qǐng)輸入您要插入的整數(shù): \n)。/* 提示 */ ? scanf(%d,amp。x)。 /* 用鍵盤(pán)輸入要插入的整數(shù)賦給 x*/ ? while(i=6amp。amp。xa[i]) /* 循環(huán)查找插入的位臵 */ ? i++。 ? for(j=5。j=i。j) /* 循環(huán)實(shí)現(xiàn)元素后移 */ ? a[j+1]=a[j]。 ? a[i]=x。 /* 插入元素 x*/ ? printf(插入后的序列是: \n)。 ? for ( i=0。 i=6。 i++) /* 輸出排序結(jié)果 */ ? printf(%d\n, a[i])。 /* 格式輸出 a[i]*/ ? } 實(shí)現(xiàn) Date: November 10, 2021 ? 尋找你身邊的一個(gè)實(shí)際問(wèn)題 , 編寫(xiě)解決問(wèn)題的程序 ,用到冒泡排序 。 例如:有 N個(gè)國(guó)家參加運(yùn)動(dòng)會(huì) , 從鍵盤(pán)輸入代表各國(guó)運(yùn)動(dòng)隊(duì)的國(guó)名 ( 國(guó)名用英文名 ) 和出場(chǎng)秩序名單 , 然后按出場(chǎng)名次從小到大的順序輸出各運(yùn)動(dòng)隊(duì)的國(guó)名 。 學(xué)以致用 Date: November 10, 2021 ? 完成“學(xué)生成績(jī)管理系統(tǒng)”的“排序”功能。 – 按成績(jī)從高到低的順序顯示 – 按學(xué)號(hào)從小到大的順序顯示 ? 完成“學(xué)生成績(jī)管理系統(tǒng)”的“信息插入”功能 作業(yè) ——每人必做 Date: November 10, 2021 ? 學(xué)以致用:到網(wǎng)上搜索資料 , 找出日常生活中會(huì)用到排序的例子 , 用 C語(yǔ)言實(shí)現(xiàn) 。 例如 , 可以搜索一些大學(xué)圖書(shū)館的藏書(shū)量 , 然后按照遞增或遞減的順序輸出 作業(yè) ——小組必做 Date: November 10, 2021 2021年 11月 10日星期三 第四章 模塊化程序設(shè)計(jì) Date: November 10, 2021 授課要點(diǎn) ? 數(shù)組元素作函數(shù)參數(shù) ? 數(shù)組名作函數(shù)參數(shù) Date: November 10, 2021 4 3 2 1 0 5 a 56 23 12 10 76 88 4 3 2 1 0 5 b 21 23 43 98 66 54 n=0 m=0 k=0 i n=0 m=0 k=1 i n=0 m=1 k=1 i n=1 m=1 k=1 i n=1 m=1 k=2 i n=2 m=1 k=2 i n=3 m=1 k=2 a和 b為有 10個(gè)元素的整型數(shù)組 比較兩數(shù)組對(duì)應(yīng)元素 變量 n,m,k記錄 a[i]b[i], a[i]==b[i], a[i]b[i]的個(gè)數(shù) 最后 若 nk,認(rèn)為數(shù)組 ab 若 nk,認(rèn)為數(shù)組 ab 若 n==k,認(rèn)為數(shù)組 a==b 數(shù)組元素作函數(shù)參數(shù)和普通變量作函數(shù)參數(shù)效果和用法一樣 問(wèn)題 1:假設(shè)有兩個(gè)整型數(shù)組,試編程實(shí)現(xiàn)數(shù)組間關(guān)系(大于、等于或小于)的輸出。 Date: November 10, 2021 include main() { int a[10],b[10],i,n=0,m=0,k=0。 printf(Enter array a:\n)。 for(i=0。i10。i++) scanf(%d,amp。a[i])。 printf(Enter array b:\n)。 for(i=0。i10。i++) scanf(%d,amp。b[i])。 for(i=0。i10。i++) { if(large(a[i],b[i])==1) n=n+1。 else if(large(a[i],b[i])==0) m=m+1。 else k=k+1。 } /* Output */ } int large(int x,int y) { int flag。 if(xy) flag=1。 else if(xy) flag=1。 else flag=0。 return(flag)。 } 問(wèn)題 1解決方案: Date: November 10, 2021 模仿練習(xí) 把 8和 3這兩組數(shù)保存在兩個(gè)一維數(shù)組中(主函數(shù)實(shí)現(xiàn)),再把兩個(gè)數(shù)組對(duì)應(yīng) 元素的值相減后(自定義函數(shù)實(shí)現(xiàn))顯示出來(lái)(主函數(shù)實(shí)現(xiàn))。 實(shí)現(xiàn)兩個(gè)整型變量的值的互換。(假設(shè)兩個(gè)整型變量是一個(gè)長(zhǎng)度為 2的整型數(shù)組的元素) Date: November 10, 2021 模仿 1答案 include int sub(int x,int y)。 void main() { int a[]={8,9,5,8,6,4,2,8}。 int b[]={9,6,2,3,6,2,1,3}。 int result,i。 for(i=0。i8。i++) { result=sub(a[i],b[i])。 printf(%d\n,result)。 } } int sub(int x,int y) { return xy。 } Date: November 10, 2021 include void swap2(int x, int y) { int z。 z=x。 x=y。 y=z。 } main() { int a[2]={1,2}。 swap2(a[0],a[1])。 printf(a[0]=%d\na[1]=%d\n,a[0],a[1])。 } 值傳遞 模仿 2答案
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號(hào)-1