2023年全國(guó)碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p>  高級(jí)語言課程設(shè)計(jì)報(bào)告 </p><p>  設(shè) 計(jì) 題 目 高級(jí)語言課程設(shè)計(jì)——電子萬年歷 </p><p>  一、課程設(shè)計(jì)目的和任務(wù)</p><p>  1.通過本項(xiàng)課程設(shè)計(jì),可以培養(yǎng)獨(dú)立思考、 綜合運(yùn)用所學(xué)有關(guān)相應(yīng)知識(shí)的能力,能更好的鞏固高級(jí)程序語言編程的過程,掌握軟件設(shè)計(jì)的基本方法,強(qiáng)化上機(jī)動(dòng)手編程能力,闖過理論與實(shí)踐相

2、結(jié)合的難關(guān),更加了解c語言的好處和其可用性,同時(shí)增加了同學(xué)之間的團(tuán)隊(duì)合作精神,更加也體會(huì)到以后在工作中團(tuán)隊(duì)合作的重要性和必要性。 </p><p>  2.通過高級(jí)語言課程設(shè)計(jì),使學(xué)生了解高級(jí)程序設(shè)計(jì)語言的結(jié)構(gòu),掌握基本的程序設(shè)計(jì)過程和技巧,掌握基本的分析問題和利用計(jì)算機(jī)求解問題的能力,具備初步的高級(jí)語言程序設(shè)計(jì)能力。為后續(xù)各門計(jì)算機(jī)課程的學(xué)習(xí)和畢業(yè)設(shè)計(jì)打下堅(jiān)實(shí)基礎(chǔ)。</p><p>

3、  3.為了使同學(xué)們掌握結(jié)構(gòu)化數(shù)據(jù)流分析技術(shù),用C語言設(shè)計(jì)一個(gè)年歷系統(tǒng),滿足以下功能要求 :</p><p>  (1) 輸入任一年將顯示出該年的所有月份日期,對(duì)應(yīng)的星期</p><p>  (2) 注意閏年情況</p><p>  其顯示格式要求如下:</p><p>  (1)月份:中文英文都可以,</p><p>

4、;  (2)下一行顯示星期,從周日到周六,中英文都可以</p><p>  (3)下一行開始顯示日期從1號(hào)開始,并按其是周幾實(shí)際情況與上面的星期數(shù)垂直對(duì)齊</p><p>  當(dāng)輸入2004顯示如下:</p><p>  Input the year:2004</p><p>  The calendar of the year 2004.&

5、lt;/p><p>  Januray 1 February 2</p><p>  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat</p><p>  1 2 3 1 2 3 4 5 6 7<

6、/p><p>  4 5 6 7 8 9 10 8 9 10 11 12 13 14</p><p>  11 12 13 14 15 16 17 15 16 17 18 19 20 21</p><p>  18 19 20 21 22 23 24 22

7、 23 24 25 26 27 28</p><p>  25 26 27 28 29 30 31 29</p><p>  =========================== ===========================</p><p>  March 3

8、 April 4</p><p>  Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat</p><p>  1 2 3 4 5 6 1 2 3</p><p>  7 8 9 10 11 1

9、2 13 4 5 6 7 8 9 10</p><p>  14 15 16 17 18 19 20 11 12 13 14 15 16 17</p><p>  21 22 23 24 25 26 27 18 19 20 21 22 23 24</p>

10、;<p>  28 29 30 31 25 26 27 28 29 30</p><p>  =========================== ===========================</p><p><b>  二、分析與設(shè)計(jì)</b></p><

11、;p>  1.程序的基本功能: </p><p>  輸入一個(gè)整數(shù)year,顯示出該年的所有月份日期,對(duì)應(yīng)的星期。</p><p><b>  2.系統(tǒng)總框圖: </b></p><p>  3.定義的函數(shù)及說明:</p><p>  (1) f(int year,int month) 如果月份值小于3,則返回值為

12、year-1;否則返回值為year</p><p>  (2) g(int month)如果月份值小于3,則返回值為month+13;否則返回值為month+1</p><p>  例如:2004年1月1日 經(jīng)過這兩個(gè)函數(shù)的變形成 2003年14月1日,便于計(jì)算</p><p>  (3)n(int year,int month,int day)計(jì)算某一個(gè)日期的n值

13、,便于計(jì)算某一日期是周幾</p><p>  (4)w(int year,int month,int day) 以1700年3月2日的n值為模版,計(jì)算出要求日期是周幾</p><p>  (5)main() 主函數(shù)</p><p><b>  4.算法設(shè)計(jì):</b></p><p>  (1)總體而言,根據(jù)要求來做一個(gè)萬

14、年歷的C程序,要求輸入想要知道日歷的年份,然后可按ENTER鍵顯示日歷。</p><p>  (2)判斷是不是閏年:(year%4==0&&year%100||year%400==0)滿足條件是閏年,把一年中所有月份的天數(shù)放入二維數(shù)組({{31,28,31,30,31,30,31,31,30,31,30,31},{31,29,31,30,31,30,</p><p>  3

15、1,31,30,31,30,31}})。</p><p>  (3)用 f() g() n() w()四個(gè)函數(shù)計(jì)算周幾</p><p>  (4)用for循環(huán)將每一個(gè)日期置0 ,再將每個(gè)月的日期填入日期表</p><p>  (5)按照題目所要求的格式輸出</p><p><b>  三、系統(tǒng)實(shí)施</b></p&g

16、t;<p><b>  1.源程序代碼</b></p><p>  #include <stdio.h> </p><p>  #include <conio.h> </p><p>  long int f(int year,int month) </p><p><b>

17、;  { </b></p><p>  if(month<3) return year-1; </p><p>  else return year; </p><p><b>  } </b></p><p>  long int g(int month) </p><p>&

18、lt;b>  { </b></p><p>  if(month<3) return month+13; </p><p>  else return month+1;</p><p><b>  } </b></p><p>  long int n(int year,int month,int

19、 day) </p><p><b>  { </b></p><p>  return 1461L*f(year,month)/4+153L*g(month)/5+day; </p><p><b>  } </b></p><p>  int w(int year,int month,int d

20、ay) </p><p><b>  { </b></p><p>  return(int)((n(year,month,day)%7-621049L%7+7)%7); </p><p><b>  } </b></p><p>  int date[12][6][7]; </p>

21、<p>  int day_tbl[ ][12]={{31,28,31,30,31,30,31,31,30,31,30,31}, {31,29,31,30,31,30,31,31,30,31,30,31}}; </p><p><b>  main() </b></p><p><b>  {</b></p><p&

22、gt;  int sw,leap,i,j,k,wd,day; </p><p><b>  int year;</b></p><p>  char title[]="Sun Mon Tue Wed Thu Fri Sat ";</p><p>  const char *month[]={"*",&qu

23、ot;January","February","March","April","May","June","July","August","September","October","November","December

24、"};printf("Input the year: ");</p><p>  scanf("%d%*c",&year);</p><p>  sw=w(year,1,1); </p><p>  leap=year%4==0&&year%100||year%400==0; </p&g

25、t;<p>  for(i=0;i<12;i++) </p><p>  for(j=0;j<6;j++) </p><p>  for(k=0;k<7;k++) </p><p>  date[i][j][k]=0;</p><p>  for(i=0;i<12;i++)</p><

26、p>  for(wd=0,day=1;day<=day_tbl[leap][i];day++) </p><p><b>  {</b></p><p>  date[i][wd][sw]=day; </p><p>  sw=++sw%7;</p><p>  if(sw==0) wd++;</p&g

27、t;<p><b>  } </b></p><p>  printf("\nThe calendar of the year %d\n\n",year);</p><p>  for(i=0;i<12;i+=2){</p><p>  for(wd=0,k=0;k<7;k++)</p>

28、<p>  wd+=date[i][5][k]+date[i+1][5][k];</p><p>  wd=wd?6:5; </p><p>  printf(" %-9s %d\t\t\t%-9s %d\n",month[i+1],i+1,month[i+2],i+2);</p><p>  printf(" %s\t%

29、s\n",title,title);</p><p>  for(j=0;j<wd;j++)</p><p><b>  {</b></p><p>  printf(" ");</p><p>  for(k=0;k<7;k++) </p><p>  

30、if(date[i][j][k]) </p><p>  printf("%-4d",date[i][j][k]);else printf("%4s","");</p><p>  printf("%3s","");for(k=0;k<7;k++) </p><p&

31、gt;  if(date[i+1][j][k])</p><p>  printf("%-4d",date[i+1][j][k]);</p><p>  else printf("%4s","");</p><p>  printf("%4s\n","");} <

32、;/p><p>  printf("===========================\t===========================\n");</p><p><b>  }</b></p><p>  puts("\n");</p><p><b>  ge

33、tch(); </b></p><p><b>  } </b></p><p>  2.程序運(yùn)行說明(包括結(jié)果說明)</p><p><b>  運(yùn)行程序:</b></p><p>  輸入 2004 運(yùn)行結(jié)果:</p><p>  運(yùn)行說明:運(yùn)行程序后,先出現(xiàn)

34、一黑色背景,上面有一句話:"Input the year:" 輸入一個(gè)整數(shù)值作為要查詢的年份值,顯示出該年的所有月份日期,對(duì)應(yīng)的星期。</p><p>  結(jié)果說明:第一行“The calendar of the year 2004”表明這是2004年的日歷。之后的每?jī)蓚€(gè)月份并排顯示,首行是月份,第二行是星期,日期按其是周幾實(shí)際情況與上面的星期數(shù)垂直對(duì)齊。</p><p&g

35、t;<b>  3.存在的問題:</b></p><p>  整個(gè)程序的功能還是不完善的,功能比較單一,比如不能顯示具體某一個(gè)月或某一天的信息,不能多次查詢等。</p><p><b>  四、總結(jié)與體會(huì)</b></p><p>  對(duì)C語言在編寫程序時(shí)的用處有了更明確的認(rèn)識(shí),懂得了編寫C程序的一般法方步驟。最大的收獲是:

36、編寫程序時(shí)一定要有信心和勇氣,要相信自己一定可以把這個(gè)程序編寫出來。分析問題做出算法,想好思路,在心里有個(gè)大致的框架。然后按部就班的記下自己想到的每一點(diǎn)內(nèi)容,把寫下的東西認(rèn)真整理,查缺補(bǔ)漏,把一些細(xì)節(jié)的地方補(bǔ)上,就這樣一個(gè)貌似很難的程序就寫出來了。其實(shí)編程并不難,關(guān)鍵是要投入要鉆到里面去。下一步就是讀程序,讀程序時(shí)一定要小心仔細(xì),一條語句一條語句的讀,看是否能輸出自己想要輸出的結(jié)果。如果發(fā)現(xiàn)錯(cuò)誤要馬上改過來,再接著向下讀,直到把程序調(diào)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論