999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

對(duì)比法在C語言教學(xué)實(shí)踐中的一點(diǎn)體會(huì)

2020-05-22 10:33:47楊儀代祥光張先休吳鴻娟朱丙麗
成長 2020年2期
關(guān)鍵詞:教學(xué)實(shí)踐

楊儀 代祥光 張先休 吳鴻娟 朱丙麗

摘 要:本文通過求素?cái)?shù)和文件讀寫等兩個(gè)實(shí)例展示了對(duì)比法在C語言教學(xué)中的應(yīng)用。通過簡單實(shí)例幫助學(xué)生理解編程思想,提高學(xué)生的動(dòng)手實(shí)踐能力。

關(guān)鍵詞:C語言;對(duì)比法;教學(xué)實(shí)踐

1 引言

C語言是目前大多數(shù)高校開設(shè)的程序設(shè)計(jì)入門課程,且通常在大一學(xué)年開設(shè)。由于C語言基礎(chǔ)語法知識(shí)繁瑣,涉及到數(shù)學(xué)、數(shù)據(jù)結(jié)構(gòu)等眾多學(xué)科,對(duì)大一新生來講,比較抽象復(fù)雜。如何讓學(xué)生對(duì)C語言學(xué)習(xí)不產(chǎn)生畏難情緒,是擺在任課教師面前的一道難題[1-4]。C語言是一門實(shí)踐性很強(qiáng)的學(xué)科,單純采用PPT授課容易讓學(xué)生對(duì)程序語言學(xué)習(xí)失去興趣,教師在課堂上講解運(yùn)行程序演示,讓學(xué)生在電腦上操作實(shí)踐,分析對(duì)比各種不同的算法,體會(huì)C語言程序的精妙之處,能夠提高學(xué)生的編程能力和激發(fā)學(xué)生的學(xué)習(xí)熱情。

2 同一問題采用不同算法實(shí)現(xiàn)

求素?cái)?shù)是C語言中的一個(gè)經(jīng)典數(shù)學(xué)例題[5-6],實(shí)現(xiàn)它的算法有多種,通過不同算法的比較,讓學(xué)生能夠體會(huì)實(shí)現(xiàn)同一問題可以采用多種算法,各種算法各有優(yōu)劣,加深對(duì)問題的理解。

2.1 用定義法求素?cái)?shù)

用定義法求素?cái)?shù),首先要知道素?cái)?shù)的定義。素?cái)?shù)是大于1的自然數(shù),除了1和它本身外沒有其它數(shù)能被素?cái)?shù)整除。用定義法求3到100之間的素?cái)?shù),實(shí)現(xiàn)程序如下:

#include

int main()

{ unsigned int? i,? j,? flag;? ? ? /* 用flag作標(biāo)志*/

for (i=3;i<=100;i++)? /*外層循環(huán)判斷3到100之間的自然數(shù)哪些為素?cái)?shù)*/

{? flag=1; ? ? ? ? ? ? /* 首先默認(rèn)這些數(shù)都是素?cái)?shù) */

for(j=2;j

if(i%j= =0)? ? ? ? /*能整除,不是素?cái)?shù),標(biāo)志設(shè)為0 */

{ flag=0; break;? ? ? ? /* 內(nèi)循環(huán)結(jié)束 */

}

if(flag= =1)? ? ? ? ? ? ?/* 若flag為1,i是素?cái)?shù) */

{ printf("%4d, ",i);? } ? ? ? ? /* 輸出素?cái)?shù)? */

}

return 0;

}

以上程序是利用定義法求素?cái)?shù),優(yōu)點(diǎn)是簡單明了,好理解。缺點(diǎn)是需要循環(huán)的次數(shù)很多,存在一部分不必要的循環(huán)次數(shù)。可以縮小內(nèi)層循環(huán)控制變量j的取值范圍,即控制變量j取值從2到i/2即可。內(nèi)層循環(huán)代碼修改為:

for(j=2;j<=(i/2);j++) ? ? /*內(nèi)層循環(huán)控制變量j取值從2到i/2*/

這個(gè)程序相比用定義法求素?cái)?shù)有了一定的改進(jìn),循環(huán)的次數(shù)是定義法求素?cái)?shù)循環(huán)次數(shù)的一半,但是循環(huán)次數(shù)還不是最少的。相比于定義法,用根號(hào)法求素?cái)?shù)的算法循環(huán)次數(shù)更少。

2.2 用根號(hào)法求素?cái)?shù)

for(j=2;j<=sqrt(i);j++) ? /*內(nèi)層循環(huán)控制變量j取值從2到*/

用根號(hào)法求素?cái)?shù)比用定義法和基于定義法改進(jìn)的求素?cái)?shù)的算法循環(huán)次數(shù)要少,是目前比較常用的求素?cái)?shù)的算法。除了這兩種方法,求素?cái)?shù)還有埃氏法、歐氏法等等。這些都可以根據(jù)學(xué)生的接受能力選擇其中兩種或多種方法作對(duì)比講解。

3 同一問題的不同實(shí)現(xiàn)形式

3.1 將源文件內(nèi)容反序?qū)懭肽康奈募?/p>

以下程序?qū)崿F(xiàn)的功能是,打開一源文件將其中內(nèi)容復(fù)制到字符數(shù)組buf中,再將buf數(shù)組中的字符反序?qū)懭胍荒康奈募?/p>

//讀出文件sfile.txt中的內(nèi)容,反序?qū)懭肓硪粋€(gè)文件dfile.txt中

#include

#define BUFF 100

int main ( )

{ FILE? *sfp , *dfp; int? i=0; char? buf[BUFF];

if ((sfp=fopen("sfile.txt","r" ))==NULL)? ?/* 打開源文件 */

{

printf("源文件無法打開!\n" ) ;? exit(1) ;

}

if? ((dfp=fopen("dfile.txt","w" ))==NULL)? /* 打開目的文件 */

{

printf ("目標(biāo)文件無法打開!\n ");? exit(1) ;

}

while? (!feof(sfp))? ? ? ? ? ? ? ?/* 判斷是否文件尾,不是則循環(huán) */

{ buf[i++]=fgetc(sfp);? ? ? /* 讀出數(shù)據(jù)送緩沖區(qū) */

}

while (- -i>=0) fputc(buf[i],dfp);? ? ?/* 反序?qū)懭肽康奈募?*/

fclose(sfp); fclose(dfp); return 0;

}

這個(gè)程序?qū)崿F(xiàn)了將源文件的內(nèi)容讀出然后最終寫入目的文件,但是目的文件中的字符順序和源文件中相比是相反的,例如在源文件sfile.txt中輸入“hello”保存,程序運(yùn)行后則dfile.txt中字符串為“olleh”。這是教材例題,但實(shí)際中更需要源文件和目的文件內(nèi)容一致,這個(gè)時(shí)候就可以引導(dǎo)學(xué)生思考,怎樣改寫這個(gè)程序?qū)⒃次募械膬?nèi)容按順序?qū)懭氲侥康奈募小S辛饲懊娣葱驅(qū)懭氲某绦颍瑢W(xué)生就比較容易通過修改前面反序?qū)懭氲某绦驅(qū)崿F(xiàn)順序?qū)懭搿?/p>

3.2 將源文件內(nèi)容順序?qū)懭肽康奈募?/p>

只需要將反序?qū)懭氲某绦蛳旅孢@一行代碼

while (- - i>=0) fputc(buf[i],dfp);? ? ?/* 反序?qū)懭肽康奈募?*/

改為

int j=0;

while (j

程序的修改比較簡單,只需要另外定義一個(gè)局部變量j,讓j取值從0開始,j小于buf數(shù)組中存放的字符數(shù)i,也就是源文件的字符數(shù),這樣就變成將buf數(shù)組中字符順序?qū)懭肽康奈募缭谠次募file.txt中輸入“hello”保存,程序運(yùn)行后則dfile.txt中字符串為“hello”。

總結(jié) 作者在C語言整個(gè)教學(xué)過程中都貫穿了這個(gè)對(duì)比教學(xué)法,通過簡單實(shí)例的對(duì)比,降低了教學(xué)難度,大部分學(xué)生對(duì)所解決的問題有了更深層次的理解,學(xué)生在學(xué)習(xí)的過程中學(xué)會(huì)了舉一反三,達(dá)到了良好的教學(xué)效果。

參考文獻(xiàn):

[1] 樊新華,郭曉宇,陳洪軍,et al.基于案例的C程序設(shè)計(jì)實(shí)驗(yàn)教學(xué)的探索[J]. 現(xiàn)代計(jì)算機(jī)(專業(yè)版),2019,638(02):79-83.

[2] 程艷.《C語言程序設(shè)計(jì)》教學(xué)中“類比”法的運(yùn)用[J].職教論壇, 2003(18).

[3] 崔孝鳳.C語言用戶自定義函數(shù)案例教學(xué)設(shè)計(jì)[J].電腦知識(shí)與技術(shù),2019,15(09):142-143.

[4] 黃文鈞.“聯(lián)系”與“類比”在《C++/C語言程序設(shè)計(jì)》教學(xué)中的應(yīng)用[J].廣西民族大學(xué)學(xué)報(bào):自然科學(xué)版,2012,17(2):95-97.

[5] 楊路明.C語言程序設(shè)計(jì)教程(第四版) [M]. 北京郵電大學(xué)出版社, 2018.

[6] 譚浩強(qiáng). C程序設(shè)計(jì)(第四版)[M].清華大學(xué)出版社,2010.

猜你喜歡
教學(xué)實(shí)踐
小學(xué)數(shù)學(xué)體驗(yàn)性學(xué)習(xí)的教學(xué)實(shí)踐
低年級(jí)衛(wèi)生習(xí)慣的培養(yǎng)
基于三維軟件和云班課APP的機(jī)械設(shè)計(jì)課程教學(xué)實(shí)踐
職業(yè)(2016年10期)2016-10-20 22:23:49
中職職業(yè)生涯規(guī)劃課程的教學(xué)反思
職業(yè)(2016年10期)2016-10-20 21:59:29
試論類比推理在高等數(shù)學(xué)教學(xué)實(shí)踐中的應(yīng)用
《單片機(jī)原理與應(yīng)用》課程教學(xué)改革與實(shí)踐
科技視界(2016年22期)2016-10-18 16:51:33
中職計(jì)算機(jī)應(yīng)用課程教學(xué)改革與反思
科技視界(2016年21期)2016-10-17 18:57:24
淺論高中化學(xué)生活化教學(xué)的實(shí)踐與思考
考試周刊(2016年79期)2016-10-13 23:10:24
淺談初中物理實(shí)驗(yàn)教學(xué)與學(xué)生創(chuàng)新能力的培養(yǎng)
考試周刊(2016年79期)2016-10-13 23:09:42
測量平差課程教學(xué)改革探討與實(shí)踐
考試周刊(2016年79期)2016-10-13 21:37:05
主站蜘蛛池模板: 日韩AV无码免费一二三区| 亚洲免费人成影院| 国产香蕉国产精品偷在线观看| 欧美激情,国产精品| 亚洲色图欧美激情| 久久天天躁狠狠躁夜夜2020一| 亚洲第一成网站| 日韩高清一区 | 久久黄色一级视频| 国产国产人成免费视频77777| 日本不卡在线播放| 国产凹凸视频在线观看| 欧美自慰一级看片免费| 午夜福利视频一区| 亚洲自拍另类| 欧美福利在线观看| 亚洲无限乱码| 日韩欧美国产三级| 不卡午夜视频| 国产精品片在线观看手机版| 亚洲视频在线观看免费视频| 久久成人18免费| 国产女人在线| 极品私人尤物在线精品首页 | 亚洲视频a| 久久亚洲中文字幕精品一区| 永久天堂网Av| 伊在人亚洲香蕉精品播放| 国产毛片片精品天天看视频| 人人澡人人爽欧美一区| 亚洲成人免费在线| 亚洲成人免费看| 又黄又爽视频好爽视频| 国产视频入口| 亚洲精品亚洲人成在线| 538精品在线观看| 免费播放毛片| 青青网在线国产| 天天躁夜夜躁狠狠躁图片| 欧美国产综合视频| 国产情精品嫩草影院88av| 日韩黄色大片免费看| 69av在线| 国产美女丝袜高潮| 99re经典视频在线| 丁香亚洲综合五月天婷婷| 91九色视频网| 91精品国产91久久久久久三级| 亚洲欧美不卡视频| 国产成人免费视频精品一区二区| 国产激爽大片高清在线观看| 欧美精品亚洲日韩a| 欧美一区日韩一区中文字幕页| 看国产毛片| 亚洲国产天堂在线观看| 激情無極限的亚洲一区免费| 亚洲一区二区三区在线视频| 一级毛片视频免费| 亚洲水蜜桃久久综合网站 | 国产成人精彩在线视频50| 欧美一级大片在线观看| 91伊人国产| 就去吻亚洲精品国产欧美| 国产特级毛片aaaaaa| 毛片基地美国正在播放亚洲 | 中文字幕1区2区| 亚洲αv毛片| 国产精品视频久| 99久久精品免费看国产电影| 中文字幕波多野不卡一区| 毛片视频网址| 国产系列在线| 国产人碰人摸人爱免费视频| 乱人伦视频中文字幕在线| 无码一区中文字幕| 青青操国产| 九色在线观看视频| 手机精品福利在线观看| 在线亚洲精品自拍| 国产精品自在自线免费观看| 亚洲天堂网在线观看视频| 99久久国产综合精品女同|