學習 C語言 心得
C語言學習心得
剛開始學C語言的時候,很迷茫,在此之前從沒有接觸過C語言,有點摸不著頭腦?墒窃谏蠙C過后,我覺得編程是很有趣的一件事。我知道要學好C語言不容易,可是我決定
=完成這件不容易的事。
要學好C語言就要先懂得最基本的語法知識,看課本是必需的。我覺得看不懂也沒關(guān)系,盡力去理解就好了,在對知識有了一個大致的了解過后,就要上機實踐。學習C語言一定要動手,只看不做,眼高手低是不行的。
最開始可以打書上的例題,熟悉程序,慢慢的開始試著編程。在編程時要理清自己的思路,然后再轉(zhuǎn)換成C語言中的語言,這個時候就更要動手了,只有通過上機操作才能驗證自己程序的正確性。執(zhí)行程序,不要害怕錯誤,其實,我覺得錯誤是好的,知道了自己所學知識的不足,并根據(jù)提示改
正程序中發(fā)生的錯誤,一種成就感油然而生,覺得自己的付出都是值得的。
良好的編程習慣是學好C語言的重要因素,只有勤動手,多動腦才能學好C語言,光說不練是不行的。
在學習的時候,不會的一定要問明白,可以求助于老師,同學,不要自己一個人鉆牛角尖,浪費時間又學不到東西。
上課的時候一定要認真聽,老師講的肯定是最重要的,錯過了就是一大筆損失,認真聽講才可以提高學習效率。
我覺得在編程之前,要把自己的想法寫在紙上,如果是簡單一點的程序不需要這樣,如果程序比較復雜,就寫下來,這樣可以讓思路更加清晰。
輸入程序時一定要認真,不要把“,”與“;”混淆,用
scanf的時候不要忘記“&”,用“switch”要記得“break”,用if,while的時候注意不要加“;”,“{}”“()”一定要配對,不要多也不要少一半,“=”與“==”的區(qū)別要清楚,要勤查優(yōu)先級,要記住一些基本的,例如兩個值之間的調(diào)換怎么寫等等。
在編程時除了要認真謹慎之外,更重要的是掌握基本的知識,例如if語句與switch語句的區(qū)別,它們都是條件語句,用來執(zhí)行判斷功能,但是什么時候用if什么時侯用switch應該弄清楚:若條件分支多但是條件的值是一個確定的值時就用switch。反之,在大多數(shù)情況下就用if。又如各種循環(huán)的應用,及循環(huán)之間的嵌套都要能靈活應用。還要注意一些細小的瑣碎的知識,如C語言規(guī)定的標識符,大小寫字母間的ASCII代碼值相差32,強制類型轉(zhuǎn)換符,自增自減運算符,符合運算符,逗號運算符等。
學習C語言需要的是堅持下去的毅力,認真對待每次錯誤的耐心,還有孜孜不倦的努力。擁有一個良好的心態(tài),相信自己,你就會發(fā)現(xiàn)學好C語言不再困難!
擴展閱讀:C語言心得體會
計網(wǎng)09《C語言程序設(shè)計》實訓
《C語言實訓報告》
姓名:陶艷瓊____________班級:計算機網(wǎng)絡(luò)091班
【500字以內(nèi)的實訓體會】
C語言實訓心得體會
在初學C語言的一個學期后,我們進行了C語言階段,嘗試編寫各種類型的程序。在為期一個周時間中,我的感受是:C語言實訓和平時上課所接觸的成有很多不同,所經(jīng)受的考驗和克服的困難和平時的相差不大,遇到不會做的題同學互相討論,互相幫助,共同解決,攻克了C語言的復雜程序,我感觸良多。
在這次實訓中,我對C語言有了一個更深的認識了解,也對這學期的知識得到鞏固,還嘗試了運行編程,每次運行程序成功,讓我對下面的項目充滿了信心通過自己的努力最終把最初的理論知識轉(zhuǎn)化成基本技能,這次的實訓,是我對C語言的學習產(chǎn)生了農(nóng)活的興趣。
還是這次實訓,最令人激動的就是同學遇到問題互相幫助雖然只是一個很小得實訓,但同學們的滿腔人情卻是值得驕傲的,我們在實訓中取長補短在實訓中長知識,提高了我們學習,雖然對有些時候老師沒給我們指出解決問題的方法有一些小抱怨,但到了結(jié)束是才知道,這種教學讓我們自己學會了自學,學會了去看懂別人的代碼。更多的是老師的感動,每天在我們來之前家到了機房,給我們我分享他學C語言的感受,還提醒我們注意在編程時與遇到的事項,,這些是我們平時上課無發(fā)了解到的知識是我們更
第1頁計網(wǎng)09《C語言程序設(shè)計》實訓
深層次的極大收獲。
通過實訓我們也發(fā)現(xiàn)了許多問題,在試訓中我認識到自己還有很多知識沒學好,最基本的知識點沒有理清楚,而且許多東西要經(jīng)過翻書,上網(wǎng)查閱,搜索,遇到一小點錯誤運行不出來,就會煩躁不安,覺得有些自暴自棄或這抱怨題目有些變態(tài),以后要克服,盡量保持一顆藍好的心態(tài),學好C語言,用C語言來編寫一個按要求的系統(tǒng)。
對于未來,近程下個學期,我覺得我還有許多方面需要提高。首先我要繼續(xù)學習好C語言的基礎(chǔ)知識,然后能在電腦上熟練的運用。能寫出一些程序,上網(wǎng)的時候多看一些優(yōu)秀的教程和優(yōu)秀的代碼,遇到問題是多和同學討論,并且多弄出幾套方案,多練習自己結(jié)局問題的能力和與同學合作的能力。
總之,這一切都成為我記憶里面的一個篇章,更是C語言編程上的一個里程碑。
第2頁計網(wǎng)09《C語言程序設(shè)計》實訓
《C語言程序設(shè)計》實訓計劃
指導教師:毛躍平
一.實訓目的
《程序設(shè)計語言》是計算機相關(guān)專業(yè)一門專業(yè)基礎(chǔ)課,通過對《C語言程序設(shè)計》的學習,掌握計算機程序設(shè)計的基本知識、掌握編寫運行程序的步驟,掌握常用的計算機算法,本課程也是實踐性較強的課程,為此安排一周實訓,能進一步加強鞏固理論知識,鍛煉解決問題的能力。為繼續(xù)學習其他課程打下堅實的基礎(chǔ)。二.實訓班級
計算機網(wǎng)絡(luò)技術(shù)091班三.實訓日期及時間
201*年6月28日201*年7月2日,共5天四.實訓要求
要求每一位參加實訓的同學認真分析每個題目,認真回答題目給出的問題,在該題..
后面寫出解題思路及算法,再編寫程序,在計算機調(diào)試并運行,最后上交該實訓文...................檔和源代碼。.....
以自己的姓名建立一文件夾,以1-1.c1-2.c2-1.c…為源碼名保存程序每一程序頂部的注釋中寫如下的內(nèi)容/*
姓名:XXXX題目:1.1日期:201*-6-x*/
實訓過程中可以相互討論,查閱相關(guān)資料,但一定要自己理解問題并自己動手實成
題目,嚴禁抄襲,一經(jīng)發(fā)現(xiàn),成績以零分記。
注意解題過程中算法的設(shè)計,注意分析和理解題目的描述是如何轉(zhuǎn)換為C程序的語
句,體會使用不同解題算法之間的低劣。
第3頁計網(wǎng)09《C語言程序設(shè)計》實訓
五.實訓題目一、基本知識
1.1完成課本P68頁第7題
注意:c9/5(F32)輸入,9/5是求整運算。
1.2輸入一個分數(shù)(0-100),根據(jù)分值,90-100輸出’A’,80-89輸出’B’,70-79輸出’c’,60-69輸出’D’,其他輸出’E’,要求使用switch語句完成。利用switch的循環(huán)結(jié)構(gòu),注意符號輸入
1.3寫一程序,實現(xiàn)判斷一個整數(shù)n是否是素數(shù)。
要求判斷素數(shù)的功能寫成一個函數(shù),在main函數(shù)中輸入要判斷的數(shù)n,根據(jù)該函數(shù)的返...............回值輸出相關(guān)信息二、常見推理問題
2.1有一條長階,若每步跨2階,則最后剩1階;若每步跨3階,則最后剩2階;若每步跨5階,則最后剩4階;若每步跨7階,則最后正好一階不剩.編程求出樓梯的長度。
【思路】根據(jù)題義,假定該樓梯長為7(請問為何要假定為7,若從其他數(shù)開始行不行?),看7能否滿足要求,若滿足要求,則該樓梯長為,否則,看8,9,10….直到找到一個滿足要求的整數(shù)n,即該數(shù)同時滿足n%2==1,n%3==3,n%5==4,n%7==0,則停止循環(huán),輸入該數(shù)即可(思考,滿足這一條件的數(shù)是否只有一個)。
因為,每步跨2階,則最后剩1階;若每步跨3階,則最后剩2階;若每步跨5階,則最后剩4階;若每步跨7階,則最后正好一階不剩.剛好剩一個,不可從其他書開始運行。2.2Jacky和Mary養(yǎng)了很多豬。他們想要給豬安家。但是Jacky沒有足夠的豬圈,很多豬只能夠在一個豬圈安家。Jacky建了3個豬圈,為了保證公平,剩下1頭豬就沒有地方安家了。Mary生氣了,罵Jacky沒有腦子,并讓他重新建立豬圈。這回Jacky建造了5個豬圈,但是仍然有1頭豬沒有地方去,然后Jacky又建造了7個豬圈,但是還有頭沒有地方去。Jacky都快瘋了。你對這個事情感興趣起來,你想通過Jacky建造豬圈的過程,知道Jacky家至少養(yǎng)了多少頭豬?
2.3一個猴子吃桃子,每天吃現(xiàn)有桃子數(shù)量的一半再多一個,到第九天吃完的時候只剩下1個桃子,求原來有多少桃子?
【思路】倒推法,今天吃之前的桃子數(shù)=昨天吃的一半少一個,即today=(yesterday/2)-1
第4頁計網(wǎng)09《C語言程序設(shè)計》實訓
===>yeterday=(today+1)*2i=10today=1推出第9天吃之前的桃子數(shù),再把第9天當作今天(today=yesterday),推出第8天吃之前的桃子數(shù)….直到推出第一天吃之前的桃子數(shù)為止。(注意循環(huán)變量初值和終值是多少)循環(huán)變量初值1和終值是1533
2.4某日,王母娘娘送唐僧一批仙桃,唐僧命八戒去要桃.八戒從娘娘宮里挑上仙桃出發(fā),邊走邊望著前籮筐中的仙桃咽口水,走到128里時,倍覺心煩腹幾饑口干不能再忍,于是找了個僻靜處開始吃前頭籮筐中的仙桃來,越吃越有興頭,不覺竟將一筐仙桃吃盡,才猛然覺得大事不好.正在無奈之時,發(fā)現(xiàn)身后還有一筐,便轉(zhuǎn)悲為喜,將身后的仙桃一分為二,重新上路.以后,每走前一段路的一半,邊吃光前一籮筐中的仙桃,才上路.如此這般,最后一里走完,正好遇上師傅.師傅一看,兩個籮筐中各有一個仙桃,于是大怒,要八戒交代一路吃了多少個仙桃?八戒掰著指頭,好幾個時辰也回答不出,請你幫八戒算算他吃了多少仙桃!
2.5一球從100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地時,共經(jīng)過多少米(請注意下落幾次,反彈幾次)?第10次反彈多高?下落12次,反彈11次。三、窮舉搜索算法
此類問題的解題思路是按題目要求及條件,把所有可能的情況都羅列出來,在其中找出符合要求的解。
3.13025這個數(shù)具有一種獨特的性質(zhì):將它平分為二段,即30和25,使之相加后求平方,即(30+25)2,恰好等于3025本身,即abcd=(ab+cd)2。請求出具有這樣性質(zhì)的全部四位數(shù)。
【思考】如何求出一個數(shù)的前兩位和后兩位?循環(huán)變量初值要從多少開始,到多少結(jié)束,把每個數(shù)前兩位和后兩位拆出來相加再求平方,并判斷結(jié)果是否等于該數(shù)本身,如等則輸出,注意輸出格式控制。
前兩位a=m%100;后兩位b=m/100;m為一個四位數(shù),循環(huán)變量從第一個符合要求的數(shù)開始,高9801.
3.2百錢買百雞:公元5世紀,我國古代數(shù)學家張丘建在《算經(jīng)》中提出了如下問題:雞翁一值錢五,雞母一值錢三,雞雛三值錢一。凡百錢買百雞,問雞翁、母、雛各幾何?
第5頁計網(wǎng)09《C語言程序設(shè)計》實訓
3.3有30人在一飯館吃飯,包括男,女和小孩。共花了50元,男的每人3元,女的每人2元,小孩每人一元,求男,女,小孩各多少人?
3.4一個口袋里有12個球,3個白球,3個紅球,6個黑球,取出8個球,求一共有有多少種取法,輸出每一種取法中各種球的數(shù)目。四、遞歸問題
4.1編寫一遞歸函數(shù),該函數(shù)的功能是求出n的階層(注n!=n*(n-1)!(n>=2)1!=10!=1)4.2漢諾塔問題
上帝創(chuàng)造世界的時候做了三根金剛石柱子,在一根柱子上從下往上安大小順序摞著64片黃金圓盤。上帝命令婆羅門把圓盤從下面開始按大小順序重新擺放在另一根柱子上。并且規(guī)定,在小圓盤上不能放大圓盤,在三根柱子之間一次只能移動一個圓盤。有傳言說,這件事完成時宇宙會在一瞬間閃電式毀滅。也有人相信婆羅門至今還在一刻不停地搬動著圓盤。請你編寫一程序模擬10個盤子的移動過程。
五、常見的數(shù)組問題
5.1一群猴子有50只,坐在一起選猴王,每只猴子都有一個編號1~50。從1號猴子開始報號,報到7號則退出;下只猴子繼續(xù)從1開始報,依次循環(huán),則最后的一只猴子為猴王。試求出這只猴子的編號
5.2選擇排序(SelectionSort)的基本思想是:每一趟從待排序的記錄中選出關(guān)鍵字最小的記錄,順序放在已排好序的子文件的最后,直到全部記錄排序完畢,編寫一函數(shù)對n個數(shù)進行排序。
5.3回文數(shù)是指一個像16461這樣“對稱”的數(shù),即:將這個數(shù)的數(shù)字按相反的順序重新排列后,所得到的數(shù)和原來的數(shù)一樣。這里,“回文”是指像“媽媽愛我,我愛媽媽”這樣的,正讀反讀都相同的單詞或句子。設(shè)計兩個函數(shù)一個函數(shù)用來判斷一個2位及以上的數(shù)是否回文數(shù),另一函數(shù)用來判斷一字符串是否回文串。
六、文件操作
6.1編寫一程序,實現(xiàn)將10個同學的信息(學號,姓名,性別及3門課程成績保存到文件中,并能讀出指定記錄和改該記錄的程序)
第6頁計網(wǎng)09《C語言程序設(shè)計》實訓
【思考】文件根據(jù)其訪問方式分為哪兩種?根據(jù)文件內(nèi)容又分為哪兩種?對文件進行操作的步驟有哪些?如何讀或?qū)懳募?/p>
在main函數(shù)中賦予只,在另一函數(shù)ptintf中將他們輸出。
七、圖形繪制
【基礎(chǔ)知識】在C語言中顯示信息的方式有兩種,即字符模式和圖形模式,我們之前的信息輸入輸出都在字符模式下,要讓C程序能畫出圖形,要把顯示模式設(shè)置在圖形模式下,在圖形模式下,是按像素來定義坐標的。對VGA適配器,它的最高分辨率為640x480,其中640為整個屏幕從左到右所有像素的個數(shù),480為整個屏幕從上到下所有像素的個數(shù)。屏幕的左上角坐標為(0,0),右下角坐標為(639,479),水平方向從左到右為x軸正向,垂直方向從上到下為y軸正向(如圖)。TURBOC的圖形函數(shù)都是相對于圖形屏幕坐標,即像素來說的,所有圖形函數(shù)都包含在graphics.h頭文件中
要在屏幕上畫圖,要先設(shè)置背景色和畫線顏色,線形,還能對某封閉區(qū)域填充,要設(shè)置填充樣式和填充顏色
setlinestyle(stly,pattern,width)函數(shù),設(shè)置畫線樣式
stly=0-40實線1點線2中心線3虛線4自定義線,pattern只有當stly=4時有效,pattern一般設(shè)為0,width為線寬范圍1或3,也可以取2
setfillstyle(intpattern,intcolor);函數(shù)設(shè)置填充封閉區(qū)域的填充樣式pattern設(shè)置填充方式,取值0-12
floodfill(x,y,color)函數(shù)設(shè)置填充的封閉區(qū)域
x,y為封閉區(qū)域內(nèi)任意一點坐標,color為封閉區(qū)域邊界顏色
要注意使用順序,先畫一封閉區(qū)域,再設(shè)置填充方式,然后使用floodfill()函數(shù)填充,
第7頁640(0,0)(639,0)(320,240)480(0,479)(639,479)計網(wǎng)09《C語言程序設(shè)計》實訓
例,要畫出如圖所示的藍背景,紅色圓,綠色填充的程序代碼如下:#includeintmain(){
intgdriver,gmode;gdriver=DETECT;
initgraph(&gdriver,&gmode,"");/*設(shè)置圖形顯示模式*/setbkcolor(1);/*設(shè)置背景色*/setcolor(RED);/*設(shè)置畫線色*/
setlinestyle(1,0,3);/*設(shè)置以寬度為3個像素的實線方式畫圖*/circle(320,240,80);/*以320,240為圓心,80像素為半徑畫圓*/setfillstyle(1,GREEN);/*設(shè)置以實心方式綠色填充*/floodfill(320,240,RED);/*取320,240這點,向四周填充到紅色邊界*/getch();/*程序停在此處,將畫出的圖形顯示在屏幕上,按任意鍵返回*/closegraph();/*關(guān)閉圖形模式*/}
題目:要求根據(jù)以上了解到的知識,設(shè)計畫一面五星紅旗的程序
第8頁計網(wǎng)09《C語言程序設(shè)計》實訓
1、有關(guān)函數(shù)
moveto(intx,inty);移動游標到(x,y)點,不是畫點,在移動過程中亦畫點。line(intx0,inty0,intx1,inty1);畫一條從點(x0,y0)到(x1,y1)的直線。lineto(intx,inty);畫一作從現(xiàn)行游標到點(x,y)的直線。
circle(intx,inty,intradius);以(x,y)為圓心,radius為半徑,畫一個圓。
arc(intx,inty,intstangle,intendangle,intradius);以(x,y)為圓心,radius為半徑,從stangle開始到endangle結(jié)束(用度表示)畫一段圓弧線。
ellipse(intx,inty,intstangle,intendangle,intxradius,intyradius);以(x,y)為中心,xradius,yradius為x軸和y軸半徑,從角stangle開始到endangle結(jié)束畫一段橢圓線,當stangle=0,endangle=360時,畫出一個完整的橢圓。
rectangle(intx1,inty1,intx2,inty2);以(x1,y1)為左上角,(x2,y2)為右下角畫一個矩形框。.
第9頁
友情提示:本文中關(guān)于《學習 C語言 心得》給出的范例僅供您參考拓展思維使用,學習 C語言 心得:該篇文章建議您自主創(chuàng)作。
來源:網(wǎng)絡(luò)整理 免責聲明:本文僅限學習分享,如產(chǎn)生版權(quán)問題,請聯(lián)系我們及時刪除。