實驗2-數(shù)據(jù)類型、運算符和表達式_第1頁
實驗2-數(shù)據(jù)類型、運算符和表達式_第2頁
實驗2-數(shù)據(jù)類型、運算符和表達式_第3頁
實驗2-數(shù)據(jù)類型、運算符和表達式_第4頁
實驗2-數(shù)據(jù)類型、運算符和表達式_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

《C語言程序設(shè)計》實驗報告實驗序號:2實驗項目:數(shù)據(jù)類型、運算符和表達式學號姓名專業(yè)、班級實驗地點指導教師實驗時間一、實驗?zāi)康募耙笳莆誄基本數(shù)據(jù)類型的基本概念、基本屬性。學會如何書寫一個整型、字符型、實型常量。掌握C算術(shù)運算符的基本概念、基本屬性、運算規(guī)則。二、實驗設(shè)備(環(huán)境)及要求使用VS2010或VisualC++6.0或DEVC++;windows系列操作系統(tǒng)的環(huán)境。實驗內(nèi)容與步驟測試數(shù)據(jù)類型范圍:程序:#include<stdio.h>voidmain(){inta;a=111111111111111111111;printf(“%d”,a);}運行結(jié)果:執(zhí)行出錯。1.輸入下列源程序,進行修改、編譯、連接和運行。運行結(jié)果是:兩行結(jié)果的不同是由什么引起的:字符常量在內(nèi)存中占用一個字節(jié),用于存儲它的ASCII值,所以字符具有數(shù)值特征。%c是以字符形式輸出,%d是以整型數(shù)據(jù)的實際長度輸出。2.輸入下列源程序,進行修改、編譯、連接和運行。分析++運算符。運行結(jié)果是:分析前++和后++的不同:前++是先計算,后使用,即先將i的值自加1,然后將i的值賦給變量m;后++是先使用,后計算,即先將j的值賦給變量n,然后再將j的值自加1。3.輸入下列源程序,進行修改、編譯、連接和運行。分析++和--運算符。運行結(jié)果是:分析運行結(jié)果:第一行:輸出i,j的原始值8,10。第二行:先輸出i,j,然后再進行i+1,j-1的運算。第三行:因為第二行進行了i+1=9,j-1=9的運算,所以i和j的值分別是9,9。第四行:先進行i+1=10,i-1=8的運算,再輸出。4.輸入并運行下面的程序:3觀察以下不同輸入時的輸出,分析不同輸出的原因。(↙表示回車)(1)123↙(2)12↙(3)1↙2↙運行結(jié)果是:(1)(2)(3)分析運行結(jié)果:定義了三個字符變量(1)因為123回車鍵占了四個字符,但只需輸出三個字符變量,所以輸出123,其中1是c1,2是c2,3是c3(2)因為12和回車鍵占了三個字符,所以輸出12并進行了換行,其中1是c1,2是c2,回車鍵是c3(3)因為1和回車鍵和2占了三個字符,所以輸出1,換行再輸出2,其中1是c1,回車鍵是c2,2是c35.把以上程序改寫如下,用于上面相同的輸入運行,分析不同輸出的原因。運行結(jié)果是:(1)(2)(3)分析運行結(jié)果:當鍵盤輸入123時,輸入內(nèi)容存在緩沖區(qū),當按下回車鍵時getchar()進入緩沖區(qū)讀取一個字符,所以c1是1,此時緩沖區(qū)還剩23和回車鍵,getchar()再次進入緩沖區(qū)讀取一個字符,所以c2是2,此時緩沖區(qū)還剩3和回車鍵,getchar()再進入緩沖區(qū)讀取一個字符,所以c3是3同理(1)得,其中1是c1,2是c2,回車鍵是c3鍵盤輸入1回車,getchar()進入緩沖區(qū)讀取字符,所以輸入的1是c1,c2是回車鍵,再次輸入2回車鍵,getchar()再次進入緩沖區(qū)讀取字符,所以c3是26.輸入并運行下面的程序,分析格式控制對輸出的影響。運行結(jié)果截圖:分析運行結(jié)果:第一行:以有符號十進制整數(shù)形式,長整型,無符號十進制整數(shù)形式,八進制整數(shù)形式,十六進制整數(shù)形式輸出第二行:第一個為以有符號十進制整數(shù)形式輸出,第二個變量值的寬度小于輸出寬度,由于變量值前沒有“-”,所以右對齊左補三個空格,以十進制整數(shù)型輸出第三個變量值的寬度小于輸出寬度,因為變量值前有“-”,所以左對齊右補三個空格,以十進制整數(shù)型輸出第四個以字符型輸出,第五個與第二個同理,但以字符型輸出第六個與第三個同理第三行:第一個以保留6位小數(shù)的小數(shù)形式輸出第二個以指數(shù)形式輸出第四行:第一個以保留兩位小數(shù)的小數(shù)形式輸出第二個要求保留兩位小數(shù)且輸出寬度為15,與第二行第二個同理,即右對齊左補空格第三個要求保留兩位小數(shù)且輸出寬度為15,與第二行第三個同理,即左對齊右補空格第四個要求保留九位小數(shù)且輸出寬度為15,因為實際輸出的小數(shù)點后的位數(shù)小于9,所以在后面補兩個“0”來補夠9個位數(shù),然后右對齊左補空格第五個以保留6位小數(shù)的小數(shù)形式輸出7.輸入并運行下面的程序:觀察以下不同輸入時的輸出,分析間隔符號對輸入的影響。(↙表示回車)(1)1,2↙ 1,2↙(2)12↙ 12↙(3)1↙1↙2↙運行結(jié)果截圖:(1)(2)(3)分析運行結(jié)果:在第一個scanf()函數(shù)中的格式控制字符串中含有普通字符“,”,普通字符要原樣輸入,即輸入的數(shù)據(jù)需使用“,”作為間隔,所以輸出“a=1,b=2”在第二個scanf()函數(shù)中的格式控制字符串中無“,”,但在輸入“1,2↙”時,由于存在非數(shù)字字符“,”,scanf()函數(shù)在遇到非法輸入時認為數(shù)據(jù)輸入結(jié)束,因此將1賦值給變量a,而后面的數(shù)據(jù)將會舍棄,因此變量b的值還是2在第一個scanf()函數(shù)中的格式控制字符串中含有普通字符“,”,普通字符要原樣輸入,但因為其輸入空格,所以1賦值給a,而2被舍棄,不會賦值給第一個b,b的值是不可預知的在第二個scanf()函數(shù)中的格式控制字符串中無“,”空格進行分隔對其結(jié)果沒有影響,此時輸入“12”,緩沖區(qū)里有第一次輸入的2和第二次輸入的12,所以第一次輸入的2賦值給第二個a,第二次輸入的1賦值給第二個b只輸入“1”,即將1賦值給a,b的值不可預知在第二個scanf()函數(shù)中的格式控制字符串中無“,”回車進行分隔對其結(jié)果沒有影響8.轉(zhuǎn)義字符的使用。運行結(jié)果截圖:9.大小寫轉(zhuǎn)換運行結(jié)果截圖:10.設(shè)圓半徑r=1.5圓柱高h=3求圓周長、圓面積、圓球表面積、圓球體積、圓柱體積,輸出結(jié)果要有文字說明,如Theareais7.06.(其中π=3.1415926,采用第二章例題2-2的#define來定義;圓周長2πr、圓面積πr2、圓球表面積4πr2、圓球體積4/3πr3、圓柱體積πr2h)測試結(jié)果:rhcircleareasurfaceglobecolumn1.539.427.0728.2714.1421.213.452.5621.6837.39149.57172.0195.73四、分析與討論對上機實踐結(jié)果進行分析,記錄易錯的知識點,總結(jié)經(jīng)驗。對課本知識不熟悉,自己敲的代碼出了很多錯誤五、教師評語簽名:日期:成績附源程序清單:10.#include<stdio.h>#definePI3.1415926voidmain(){ floath,r,l,s,sq,vq,vz; r=1.5; h=3; l=2*PI*r; s=PI*r*r; sq=4*PI*r*r; vq=4.0/3*PI*r*r*r; vz=P

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論