C語言課程設計報告模板_第1頁
C語言課程設計報告模板_第2頁
C語言課程設計報告模板_第3頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、C語言課程設計報告班級:16物聯網、題目說明(1) 讀取輸入信息,能正確進行數字運算(2)擁有記憶功能,可查詢最近幾次計算結果并繼續進行數字運算。二、基本功能實現(1)能實現兩個數之間的加減,乘,除,乘方,開方等運算。(2)實現記憶功能,可保留近十位結果,可用#鍵查看。(3)*鍵作為清0鍵,清除當前屏幕上的值為0表示重新開四、代碼#include<stdio.h>#include<stdlib.h>#include<string.h>#inelude<math.h>doubleyunsuan(doublea,charoperate,doubleb

2、);/處理數值之間的運算voidPutRes(doublearray,doubleres,int*i);/保存該次運算結果intmain()charstr40;doublea=0;doubleb=0;doubleres=0;doublehistory10=0,0,0;charopt;inti=0;printf("歡迎進入計算功能(eg:1n+1;'#':查詢歷史結果;'q':退出程序)n");while(1)fgets(str,40,stdin);/將從鍵盤的一整行標準輸入保存在字符串str中if(sscanf(str,"%lf&q

3、uot;,&a)=1)/將str以長浮點型的格式放入a中,如果返回值為1,說明輸入的是數值,作數的值調用yunsuan()函數計算,res=yunsuan(a,opt,b);/并將結果給resprintf("%lf%c%lf=%lfnn",a,opt,b,res);PutRes(history,res,&i);/調用函數PutRes()將本次結果保存到數組history中(i用引用傳遞)/printf("%dn",i);elseif(sscanf(str,"%c",&opt)=1)/將str以字符型的格式放入o

4、pt中,如果返回值為1,說明輸入的是字符if(opt='#')/如果opt為#',則顯示history中的數值intj=0;for(j=0;j<i;+j)/i為history中存放的數值個數printf("%lf",historyj);printf("n");elseif(opt='+'|opt='-'|opt='*'|opt='/'|opt='")/如果為操作符,則為連續運算,則下面秩序獲得b的值,a的值則為上次運算結果scanf("

5、;%lf",&b);opt=str0;/因為str是字符串,而opt是字符,所以不能直接賦值,上句判斷出str是字符,所以是只有一個字符的字符串,故可以這樣賦值a=res;res=yunsuan(a,opt,b);printf("%lf%c%lf=%lfnn",a,opt,b,res);PutRes(history,res,&i);'q'退出程序'q'退出程序elseif(opt='q')/printf("ByeBye.");return0;return0;/*功能:處理數值之間的

6、運算參數1:操作數1參數2:操作方式參數3:操作數2返回值:兩數值的運算結果。*/doubleyunsuan(doublea,charoperate,doubleb)switch(operate)case'+':a+=b;break;case'-':a-=b;break;casea*=b;break;case'/':a/=b;break;case'A':a=pow(a,b);break;case'':a=sqrt(a);break;default:/如果不滿足上面所有分支則結束程序break;returna;/*功

7、能:保存該次運算結果參數1:用來保存結果的數組參數2:本次要存放的結果參數3:數組中目前存放的個數返回值:無*/voidPutRes(doublearray,doubleres,int*i)intj=*i;/i用引用傳遞,確保在調用該函數式,形參和實參都能發生改變if(j<10)/如果數組內當前的值少于十個直接存入,并將個數加1arrayj=res;j+;elsefor(j=1;j<10;+j)/如果數組內有十個數,則從第二個數開始前移,再講本次結果存放在下標為9的位置arrayj-1=arrayj;array9=res;*i=j;/更新當前數組內數值個數五、運行效果(截圖)六、b

8、ug調試(調試過程中遇到的問題和解決方法):六、心得體會在這為期兩個星期的時間內,通過我們小組之間成員的相互討論和合作,我們完成了老師要求的程序設計,更值得高興的事我們的程序取得了成功,在這一個學期的c語言學習中,我們平時所學的知識最多也就是在做作業時才能用到,平時沒什么練習的機會,這次的課程設計是我們第一次通過自己的構思和小組成員討論并且不斷查閱資料來設計一段程序,這次的設計不僅鞏固了以前所學的知識,還讓我對c語言有了更深一部的了解掌握了更多的技巧和技能。C語言是計算機程序設計的重要理論基礎,在我們以后的學習和工作中占有重要的作用,要學好這種語言,僅僅學習課本上的知識是不夠的,還要經常自己動手才能鍛煉自己實踐能力,只有多動手,經常編

溫馨提示

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

評論

0/150

提交評論