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

正文內(nèi)容

c電子課件(上)第二章-閱讀頁

2024-11-01 00:24本頁面
  

【正文】 2%折扣 s250 不打折扣 不帶 break的開關(guān)語句實(shí)例 ok int main(){ int c,s,s1。 cout輸入運(yùn)輸單價(jià) p,重量 w和里程 s:endl。 f=0。 c=s/f+=p*w*(s3000)*(1d)。 case 8: case 9: case 10: case 11: d=。s=2021。f+=p*w*(s1000)*(1d)。 case 2: case 3: d=。s=500。f+=p*w*(s250)*(1d)。 case 0: d=0。 } cout運(yùn)輸單價(jià) :p39。重量 :w39。里程 :s1endl。 return 0。 ok 【 例 】 設(shè)計(jì)一個(gè)計(jì)算器程序,實(shí)現(xiàn)加、減、乘、除運(yùn)算。 include iostream using namespace std。 char op。 cinnum1opnum2。+39。 break。39。 break。*39。 break。/39。 break。 } return 0。 ok while 語句 【 例 】 【 例 】 求 1+2+3+4+…+100 的值。 從第一個(gè)數(shù)開始,依次將加數(shù)賦給 i,并進(jìn)行操作 sum?sum+i,稱為累加; 輸出 sum; 細(xì)化算法 2: while(還有加數(shù) ) { i=當(dāng)前加數(shù); sum+=i。 const int n=100。//循環(huán)初始條件 while(i=n) { sum+=i。 //修改循環(huán)條件 } coutsum=sumendl。 } 在 VC++平臺(tái)上運(yùn)行,試一試是否正確 ok ok 【 例 】 用迭代法求 a的平方根近似值。 dowhile 語句 【 例 】 迭代法求解: a是已知正數(shù), x 0是迭代初值,給 x 0一個(gè)值,假定 x 0 = a/2;則用迭代公式依次計(jì)算: x1=(x0+a/x0)/2; x2=(x1+a/x1)/2; …… xk+1=(xk+a/xk)/2; 當(dāng) |xk+1 –xk|ε(ε是一個(gè)較小的正數(shù) )時(shí), 迭代終止, 取xk+1的值為 a的平方根近似值 。 3步驟很適合用 do/while語句實(shí)現(xiàn): x 1 = a/2; do{ x0=x1。 和迭代法對(duì)應(yīng)的程序算法是 遞推算法: ok int main( ){ float x0,x1,a。 cina。 else { //有實(shí)數(shù)解的情況 x1=a/2。 x1=(x0+a/x0)/2。 cout a的平方根為: x1endl。 } 在 VC++平臺(tái)上運(yùn)行 , 輸入 2, 3, 4, 5試一試是否正確 ok 【 例 】 輸入一段文本 , 統(tǒng)計(jì)文本的行數(shù) 、 單詞數(shù)及字符數(shù) 。 算法分析 : 逐個(gè)讀入文本中的字符 , 直到讀到一個(gè)輸入結(jié)束符 EOF為止 。\n39。 dowhile 語句 【 例 】 ok ok dowhile 語句 【 例 】 算法: 設(shè)置變量 nline、 nword、 nch分別代表行數(shù)、單詞數(shù)、非分隔字符數(shù),并初始化 。 do{ 從鍵盤讀入一個(gè)字符 c; if ( c==39。) nline++。 if (c不是分隔符 ) nch++。 輸出統(tǒng)計(jì)結(jié)果。 int nline=0, nword=0, nch=0, isword=0。 do { c=()。 \n39。 //遇換行符行數(shù) +1 if (c!=39。amp。c!=39。amp。c!=39。){ //讀到非間隔符 if(isword==0) nword++。 //字符數(shù)加 +1 isword=1。 //讀到間隔符 } while(c!=EOF)。 cout‖單詞數(shù): ” nwordendl。 return 0。 Fibonacii數(shù)列定義如下: 算法分析: 除了第 0項(xiàng)和第 1項(xiàng)外 , 每一項(xiàng)都是由類似方法產(chǎn)生 , 即前兩項(xiàng)之和;所以求當(dāng)前項(xiàng)時(shí) , 只需要記住前兩項(xiàng);程序不需要為每一項(xiàng)設(shè)置專用變量; 屬 遞推算法 。 第 1項(xiàng) f 2=1。 按要求輸出 當(dāng)前項(xiàng) f 3 。 f 2=f 3。 coutsetw(5)fib0setw(5)fib1 endl。n=20。 coutsetw(5)fib2。 //控制每行 5個(gè)數(shù)據(jù) fib0=fib1。 } return 0; } for 語句的應(yīng)用 【 例 】 ok 【 例 】 輸入一個(gè)不超過 9位的整數(shù) , 將其反向后輸出 。 算法分析: 將整數(shù)的各個(gè)數(shù)位逐個(gè)分開 , 用一個(gè)數(shù)組保存各位的值 , 然后反向組成新的整數(shù) 。 for 語句的應(yīng)用 【 例 】 ok ok 數(shù)據(jù)處理: 設(shè)置變量 num表示輸入的整數(shù) , 整型數(shù)組 digit[9]用來存放 num 的各個(gè)位;變量 i用來表示數(shù)組的當(dāng)前下標(biāo); 算法: 輸入 num。 while ( num!=0) { num對(duì) 10取余 ,得 num的當(dāng)前個(gè)位數(shù)放入 digit[i]; num整除 10,即去掉個(gè)位數(shù),十位變個(gè)位, 百位變十位, …… ; i++。 int digit[9]。 cinnum。 subscript=0。 num=num/10。 //修改下標(biāo) } while (num0)。isubscript。 cout反向后整數(shù)為: numendl。 表中各行數(shù)據(jù)的輸出可以用下面的算法描述: for (i=1。 i++) { couti。 //準(zhǔn)備輸出下一行 } 【 例 】 打印九九表 。 由于第 i行數(shù)據(jù)是一組有規(guī)律的數(shù)列 , 每個(gè)數(shù)的值是其所在行與列的乘積 , 因此輸出第 i行可以: for (j=1。 j++) coutsetw(4)i*j。 進(jìn)一步分析發(fā)現(xiàn)每一行的列數(shù)與所在行數(shù)相關(guān) , 因此要輸出三角形表 , 上面的循環(huán)語句需稍作修改: for (j=1。 j++) coutsetw(4)i*j。 循環(huán)的嵌套 【 例 】 ok 算法: 輸出表頭 , 用一個(gè)循環(huán)語句即可; 輸出表體: for (i=1。 i++) { couti。 //準(zhǔn)備輸出下一行 } A行細(xì)化: for (j=1。 j++) coutsetw(4)i*j。 coutsetw(3)39。setw(4)39。 for(i=1。i++) coutsetw(4)i。 for(i=1。i++){ coutsetw(3)isetw(4)39。 //輸出行號(hào) (被乘數(shù) ) for(j=1。j++) coutsetw(4)i*j。 //準(zhǔn)備輸出下一行 } return 0。 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 分析: 根據(jù)按行輸出的特點(diǎn),語句書寫如下: for (i=1。 i++) { 打印第 i行; //B coutendl。第 i行可以看作兩部分,先輸出若干空格,接著輸出若干 *。故程序 B行細(xì)化為以下兩個(gè)語句: for (j=1。 j++) cout 。j=11。 循環(huán)嵌套 【 例 】 ok include iostream include iomanip using namespace std。 for(i=1。i++){ //外層循環(huán)的大括號(hào)一定不能丟掉 for(j=1。j++) cout 。j=11。 //輸出若干 * coutendl。 } 循環(huán)嵌套 【 例 】 ok break 語句應(yīng)用 【 例 】 【 例 】 給定正整數(shù) m, 判定其是否為素?cái)?shù) 。 因此可以用 2,3,… ,k( k為 m的平方根 取整 )逐個(gè)去除 m, 如果被其中某個(gè)數(shù)整除了 , 則 m不是素?cái)?shù) , 否則是素?cái)?shù) 。 輸入被測(cè)數(shù) m( m2);令整型變量 k= sqrt(m) 判斷 m是否素?cái)?shù):設(shè)置輔助整型變量 i, 使 i從 2開始直到 k依次測(cè)試 m能否整除 i, 若能,則不是素?cái)?shù); for( i=2。i++)if(m%i==0) break; /* 條件滿足, m不是素?cái)?shù) ,停止測(cè)試 ,結(jié)束 for語句。 ok int main(){ int m,i,k。 cinm。 else{ k=sqrt(m)。i=k。 //只要有一個(gè)整除,就可停止 if(ik) cout m是素?cái)?shù) endl。 } return 0。 【 例 】 用篩選法求 100之內(nèi)的所有素?cái)?shù),并將這些素?cái)?shù)輸出,每行輸出 2個(gè)數(shù)據(jù)。 100之內(nèi)的所有素?cái)?shù) ? 方法:一個(gè)個(gè)試 。 k= sqrt(m)。i++) //窮舉法 if(m%i==0) break; //m不是素?cái)?shù) if (ik) m是素?cái)?shù); //剛才的 for不是由 break結(jié)束的 ok 分析 算法二 篩選法 : 一個(gè)數(shù)如果是其他數(shù)的倍數(shù) , 則這個(gè)數(shù)肯定不是素?cái)?shù); 在由 多個(gè)大于 1的數(shù) 組成的集合中 , 剔除所有的非素?cái)?shù) , 剩下的就都是素?cái)?shù)了; 綜上所述 , 得到算法二 ( 及所需的相應(yīng)數(shù)據(jù) ) : 將 100之內(nèi)的整數(shù)映射到一個(gè)集合 。 ok 算法 二 第 2步 的細(xì)化 ( 篩選法 ) : for (i=0。 i++) //數(shù)組下標(biāo) 0~ 99, 元素值 1~ 100 { 、 if (a[i]==0) continue。 } 常用算法的應(yīng)用實(shí)例 【 例 】 ok includeiostream includeiomanip includecmath using namespace std。 int main(){ int a[n]。 for(i=0。i++) a[i]=1+i。 //1不是素?cái)?shù),置 0 for(i=1。i++){ if(a[i]==0) continue。jn。 //是 a[i]倍數(shù)的元素置 0; } 常用算法的應(yīng)用實(shí)例 【 例 】 ok int count=0。 for(i=0。i++) //輸出所有素?cái)?shù) if(a[i]!=0){ coutsetw(6)a[i]。 if(count%10==0) coutendl。 return 0。枚舉法適合求解的問題是:可能的答案是有限個(gè)且答案是可知的,但又難以用解析法描述。 【 例 】 中國古代數(shù)學(xué)史上著名的“百雞問題”:雞翁一,值錢五,雞母一,值錢三,雞雛三,值錢一。 i+j+k=100。 i、 j、 k可能的取值有哪些 ? 分析可知 , 百錢最多可買雞翁 20, 雞母 33, 雞雛 300。 i=20。 j=33。 k=300。amp。 這個(gè)算法使用三重循環(huán) , 執(zhí)行時(shí)間函數(shù)是立方階 , 循環(huán)體將執(zhí)行 20*33*300=198000次 。 常用算法的應(yīng)用實(shí)例 【 例 】 ok 實(shí)際上,當(dāng) i、 j確定時(shí), k就可由題目要求確定為 100ij,因此實(shí)際上只要用 i、 j去測(cè)試,用錢數(shù)檢測(cè)就可以了。 算法改進(jìn)為: for (i=0。) for (j=0。) if ( 5*i+3*j+(100ij)/3==100 ) coutijk。 int main(){ int i,j,k。 for(i=0。i++) for(j=0。j+
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1