欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      《C語(yǔ)言程序設(shè)計(jì)》(江寶釧著)實(shí)驗(yàn)三答案

      時(shí)間:2019-05-13 09:27:50下載本文作者:會(huì)員上傳
      簡(jiǎn)介:寫(xiě)寫(xiě)幫文庫(kù)小編為你整理了多篇相關(guān)的《《C語(yǔ)言程序設(shè)計(jì)》(江寶釧著)實(shí)驗(yàn)三答案》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫(xiě)寫(xiě)幫文庫(kù)還可以找到更多《《C語(yǔ)言程序設(shè)計(jì)》(江寶釧著)實(shí)驗(yàn)三答案》。

      第一篇:《C語(yǔ)言程序設(shè)計(jì)》(江寶釧著)實(shí)驗(yàn)三答案

      3.5 實(shí)驗(yàn)三 選擇結(jié)構(gòu)程序設(shè)計(jì)

      一、實(shí)驗(yàn)?zāi)康呐c要求

      1.理解C語(yǔ)言表示邏輯量的方法,學(xué)會(huì)正確使用邏輯運(yùn)算符和邏輯表達(dá)式。

      2.掌握利用if結(jié)構(gòu)實(shí)現(xiàn)選擇結(jié)構(gòu)的方法。

      3.掌握利用switch結(jié)構(gòu)實(shí)現(xiàn)多分支選擇結(jié)構(gòu)。

      4. 結(jié)合程序掌握一些簡(jiǎn)單的算法,學(xué)習(xí)調(diào)試程序

      5. 實(shí)驗(yàn)4學(xué)時(shí)

      二、實(shí)驗(yàn)內(nèi)容

      1.程序改錯(cuò)題

      改正下面程序中的錯(cuò)誤。輸入實(shí)數(shù)x,計(jì)算并輸出下列分段函數(shù)f(x)的值(保留1位小數(shù))。1

      x(x?100)

      y?f(x)?

      x(x?100)輸入輸出示例1(改正后程序的運(yùn)行結(jié)果)

      Enter x:f(100.00)= 0.1

      輸入輸出示例2(改正后程序的運(yùn)行結(jié)果)

      Enter x:f(23.00)= 23.0

      源程序(有錯(cuò)誤的程序)

      #include

      #include

      void main(void)

      {

      double x;

      printf(“Enterx: n”);

      scanf(“=%f”, x);

      if(x = 100){

      y = 1/sqrt(x)

      }

      else(x!= 100){

      y = x;

      }

      printf(“f(%.2f)= %.1fn”,x,y);

      }

      答:

      #include

      #include

      void main(void)

      {

      double x,y;

      printf(“Enterx:n”);

      scanf(“%lf”,&x);

      if(x=100)

      y = 1/sqrt(x);

      else

      y= x;

      printf(“f(%.2lf)=%.1lfn”,x,y);

      }

      2.一般編程題

      編程題1

      輸入任意三個(gè)整數(shù)a,b,c,求3個(gè)數(shù)中的最大值和最小值。

      答:

      #include

      void main()

      {

      int a,b,c;

      printf(“請(qǐng)輸入三個(gè)整數(shù):”);

      scanf(“%d %d %d”,&a,&b,&c);

      if(a>=b)

      t=a,a=b,b=t;

      if(a>=c)

      t=a,a=c,c=t;

      if(b>=c)

      t=b,b=c,c=t;

      printf(“最小值為:%dn”,a);

      printf(“最大值為:%dn”,c);

      }

      編程題2

      輸入x,計(jì)算并輸出下面分段函數(shù)f(x)的值(保留2位小數(shù))。請(qǐng)調(diào)用sqrt函數(shù)求平方根,調(diào)用pow函數(shù)求冪。

      2(x?1)?2x?1

      x(x?0)

      f(x)?

      x(x?0)

      輸入輸出示例(共運(yùn)行3次)

      Enter x:f(10.00)=3.16

      Enter xf(-0.50)=-2.75

      Enter x:f(0.00)=0.00

      成本

      答:

      #include

      #include

      void main()

      {

      編程題3 double x,y;printf(“Enterx:n”);scanf(“%lf”,&x);if(x<0)y=pow(1+x,2)+2*x+1/x;else y=sqrt(x);printf(“f(%.2f)=%.2fn”,x,y);}

      有一函數(shù):

      x(-5

      y=x-1(x=0)

      x+1(0

      編寫(xiě)程序,要求用scanf函數(shù)輸入x的值,輸出y的值。

      具體要求如下:

      (1)用if語(yǔ)句實(shí)現(xiàn)分支,自變量和函數(shù)值均用實(shí)數(shù)類(lèi)型。

      (2)自變量用scanf函數(shù)輸入,給一些輸入提示。

      (3)運(yùn)行程序,輸入x的值(分別為-5

      答:

      #include

      #include

      void main()

      {

      double x,y;

      printf(“Enterx:n”);

      scanf(“%lf”,&x);

      if(x>0&&x<10)

      y=x+1;

      else if(x==0)

      y=x-1;

      else if(x>-5&&x<0)

      y=x;

      printf(“f(%.2f)=%.2fn”,x,y);

      }

      編程題4

      某服裝店經(jīng)營(yíng)成套服裝的買(mǎi)賣(mài),同時(shí)也允許單件銷(xiāo)售。若一次購(gòu)買(mǎi)不少于70套,則每套90元;若不足70套,則每套110元;只買(mǎi)上衣每件70元;只買(mǎi)褲子每條60元。請(qǐng)編寫(xiě)程序假設(shè)用戶買(mǎi)入x件上衣和y條褲子,請(qǐng)編寫(xiě)程序計(jì)算相應(yīng)的應(yīng)付款是多少?

      答:

      #include

      #include

      void main()

      {

      double x,y,z;

      printf(“輸入上衣x件,褲子y件:n”);

      scanf(“%lf%lf”,&x,&y);

      if(x>=y&&y>=70)

      z=90*y+70*(x-y);

      else if(y>=x&&x>=70)

      z=90*x+60*(y-x);

      else if(x>y&&y<70)

      z=110*y+70*(x-y);

      else if(y>x&&x<70)

      z=110*x+60*y-x;

      printf(“應(yīng)付:%.3f(元)n”,z);

      }

      編程題5

      編寫(xiě)程序?qū)崿F(xiàn):輸入一個(gè)整數(shù),判斷它能否被3、5、7整除,同時(shí)輸出如下信息。

      (1)能同時(shí)被3、5、7整除;

      (2)能同時(shí)被其中的哪二個(gè)數(shù)整除;

      (3)能被其中的哪一個(gè)數(shù)整除;

      (4)不能被3、5、7任一個(gè)數(shù)整除。

      答:

      #include

      void main()

      {

      int x,a,b,c,d;

      scanf(“%d”,&x);

      a=x%3;

      } a=a/a*100;b=x%5;b=b/b*10;c=x%7;d=a+b+c;switch(d){ case 100:printf(“能被5,7整除n”);case 10 :printf(“能被3,7整除n”);case 1:printf(“能被3,5整除n”);case 110:printf(“能被7整除n”);case 101:printf(“能被5整除n”);case 11 :printf(“能被3整除n”);case 111:printf(“不能被3,5,7整除n”);case 0:printf(“能被3,5,7整除n”);}

      3.較難編程題

      編程題1

      請(qǐng)用switch語(yǔ)句編程計(jì)算員工每月的薪水。(exph3_1.cpp)

      已知某公司員工的保底薪水為500,某月所接工程的利潤(rùn)profit(整數(shù))與提成的關(guān)系如下(計(jì)量單位:元):

      profit≤1000沒(méi)有提成;

      1000<profit≤2000提成10%;

      2000<profit≤5000提成15%;

      5000<profit≤10000提成20%;

      10000<profit提成25%。

      分析:為使用switch語(yǔ)句,必須將利潤(rùn)profit與提成的關(guān)系,轉(zhuǎn)換成某些整數(shù)與提成的關(guān)系。分析本題可知,提成的變化點(diǎn)都是1000的整數(shù)倍(1000、2000、5000、……),如果將利潤(rùn)profit整除1000,則相鄰兩個(gè)區(qū)間的重疊。為解決相鄰兩個(gè)區(qū)間的重疊問(wèn)題,最簡(jiǎn)單的方法就是:利潤(rùn)profit先減1(最小增量),然后再整除1000即可:

      profit≤1000對(duì)應(yīng)0

      1000<profit≤2000對(duì)應(yīng)1

      2000<profit≤5000對(duì)應(yīng)2、3、4

      5000<profit≤10000對(duì)應(yīng)5、6、7、8、9

      10000<profit對(duì)應(yīng)10、11、12、……

      答:

      #include

      void main()

      {

      double p,m,t,q;

      int n;

      printf(“某月所接工程利潤(rùn)為:”);printf(“nn”);scanf(“%lf”,&p);m=p-1;n=(int)m/1000;switch(n){ case 0 :printf(“n薪水為:500n”);break;case 1 :q=500+p*0.1;printf(“n薪水為:%.2lfn”,q);break;case 2 : case 3 : case 4 :q=500+p*0.15;printf(“n薪水為:%.2lfn”,q);break;case 5 : case 6 : case 7 : case 8 :

      case 9 :q=500+p*0.2;printf(“n薪水為:%.2lfn”,q);break;default:q=500+p*0.25;printf(“n薪水為:%.2lfn”,q);

      }

      }

      編程題2

      編寫(xiě)程序?qū)崿F(xiàn)如下功能:輸入二個(gè)運(yùn)算數(shù)(exp1,exp2)和一個(gè)運(yùn)算符(op),計(jì)算表達(dá)式exp1 op exp2的值,其中OP可以為+、-、*、/、%五個(gè)符號(hào)中的任一種(提示:用switch語(yǔ)句實(shí)現(xiàn))。

      答:

      #include

      void main()

      {

      float exp1,exp2,x;

      char op;

      printf(“輸入:”);

      scanf(“%f%c%f”,&exp1,&op,&exp2);

      switch(op)

      {

      case '+':x=exp1+exp2;break;

      case '-':x=exp1-exp2;break;

      case '*':x=exp1*exp2;break;

      case '/':x=exp1/exp2;break;

      }

      printf(“nnn%5.2f%c%5.2f=%5.2fnnn”,exp1,op,exp2,x);}

      +

      第二篇:C語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)四(本站推薦)

      C語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)

      (四)[實(shí)驗(yàn)1] scanf()、printf()函數(shù)的使用。

      1.實(shí)驗(yàn)題目

      輸入1個(gè)學(xué)生學(xué)號(hào)和4門(mén)課程成績(jī),輸出這個(gè)學(xué)生的學(xué)號(hào)、4門(mén)課程成績(jī)和平均成績(jī)。

      2.實(shí)驗(yàn)要求

      (1)按表格的形式輸出,以行內(nèi)輸出一個(gè)學(xué)生的信息。

      (2)學(xué)號(hào)用長(zhǎng)整型,各科成績(jī)用單精度型。

      3.實(shí)驗(yàn)?zāi)繕?biāo)

      (1)掌握實(shí)現(xiàn)人機(jī)對(duì)話形式的方法,scanf()輸入。

      (2)體會(huì)根據(jù)需要控制輸出格式的方法,printf()輸出。

      4.實(shí)驗(yàn)指導(dǎo)

      利用格式的數(shù)據(jù)寬度控制數(shù)據(jù)的對(duì)位輸出。輸出如下格式:

      The number and score of a student is:

      |---|

      |number | score1 | score2 | score3 | sco re4 | average |

      |---|

      |10011| 67.5|88.0 |93.5 |78.0|81.75 |

      |---|

      [實(shí)驗(yàn)2] getchar()、putchar()函數(shù)的使用

      1.實(shí)驗(yàn)題目

      用getchar()函數(shù)讀入a~v之間的一個(gè)字母,用putchar()函數(shù)輸出一個(gè)5行5列的矩陣,該矩陣第一行為讀入的字母,下一行為緊跟該字母后的字母,依此類(lèi)推。如輸入a,則輸出的矩陣為:

      aaaaa

      bbbbb

      ccccc

      ddddd

      eeeee

      2.實(shí)驗(yàn)要求

      (1)運(yùn)用getchar()進(jìn)行字符輸入。

      (2)運(yùn)用putchar()進(jìn)行字符輸出。

      3.實(shí)驗(yàn)?zāi)繕?biāo)

      (1)體會(huì)根據(jù)需要控制輸出格式的方法。

      [實(shí)驗(yàn)3] 3.6 下面程序運(yùn)行時(shí)在鍵盤(pán)上如何輸入?如果a=3,b=4,x=8.5,y=71.82,c1=’A’,c2=’a’,請(qǐng)寫(xiě)出對(duì)應(yīng)每個(gè)scanf函數(shù)的輸入情況。

      main()

      { int a,b;float x,y;char c1,c2;

      scanf(“a=%d□b=%d”,&a,&b);

      scanf(“□%f %e”,&x,&y);

      scanf(“□%c %c”,&c1,&c2);

      }

      3.7編一程序,從鍵盤(pán)輸入一個(gè)圓半徑值,求圓周長(zhǎng)、圓面積、圓球表面積、圓球體積。輸出結(jié)果時(shí),要求有文字說(shuō)明,保留2位小數(shù)。

      提示:設(shè)圓半徑為r,則圓周長(zhǎng)=2πr,圓面積=πr2,圓球表面積=4πr2,圓球體積= 4πr3/3。

      第三篇:C語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)安排

      C語(yǔ)言實(shí)驗(yàn)指導(dǎo)

      實(shí)驗(yàn)一 順序結(jié)構(gòu)程序設(shè)計(jì)(2學(xué)時(shí))

      一、實(shí)驗(yàn)?zāi)康氖煜ぴ赩C運(yùn)行環(huán)境下,編輯調(diào)試C語(yǔ)言程序的一般步驟。掌握順序結(jié)構(gòu)程序設(shè)計(jì)的基本思想和基本方法。

      二、實(shí)驗(yàn)要求

      1. 仔細(xì)閱讀下列實(shí)驗(yàn)內(nèi)容,并編寫(xiě)出相應(yīng)的C語(yǔ)言源程序。2. 在VC運(yùn)行環(huán)境下,編輯錄入源程序。

      3. 調(diào)試運(yùn)行源程序,注意觀察調(diào)試運(yùn)行過(guò)程中發(fā)現(xiàn)的錯(cuò)誤及改正方法。4. 掌握如何根據(jù)出錯(cuò)信息查找語(yǔ)法錯(cuò)誤。

      5.最后提交帶有注釋的源程序文件(擴(kuò)展名為.c)。要求該文件必須能夠正確地編譯及運(yùn)行,并不得與他人作品雷同。

      6.源程序注釋信息可以包括以下幾方面內(nèi)容:

      ⑴ 程序功能描述。

      ⑵ 程序版本號(hào)、創(chuàng)作日期。

      ⑶ 作者信息描述:班級(jí)、學(xué)號(hào)、姓名。

      ⑷ 問(wèn)題分析描述。

      ⑸ 算法設(shè)計(jì)描述。

      ⑹ 關(guān)鍵語(yǔ)句注釋說(shuō)明。

      ⑺ 調(diào)試運(yùn)行過(guò)程中出現(xiàn)的錯(cuò)誤及改正方法。

      ⑻ 輸入數(shù)據(jù)樣例。

      ⑼ 輸出數(shù)據(jù)樣例。

      三、實(shí)驗(yàn)內(nèi)容

      以下兩題,任選其一解答。

      你知道淄博到北京的地面距離是多少千米嗎,淄博到紐約的地面距離又是多少千米呢?說(shuō)不上來(lái)了吧。還是讓我們編一個(gè)程序來(lái)計(jì)算一下吧。

      1.已知地球的平均半徑為6371千米,假設(shè)在地球的同一緯度上,有兩個(gè)處于不同經(jīng)度的城市A、B,編程序求出這兩個(gè)城市之間的地面距離。

      輸入數(shù)據(jù)樣例:例如,欲求北緯30度上東經(jīng)10度到東經(jīng)50度的距離,輸入格式應(yīng)為:30 10 50

      參考測(cè)試數(shù)據(jù):

      輸入:0 0 180 輸出:20015.08

      輸入:30 0 90 輸出:8397.7

      2輸入:60 0 45 輸出:2453.20

      2.地球的平均半徑為6371千米,已知地球上兩個(gè)城市A、B的經(jīng)度和緯度,編程序求出這兩個(gè)城市之間的地面距離。

      提示:球面上兩點(diǎn)之間的最短距離,等于過(guò)這兩點(diǎn)以球心為圓心的圓上,這兩點(diǎn)之間劣弧的長(zhǎng)度。(即這兩點(diǎn)與球心之間的連線構(gòu)成的夾角所對(duì)球面劣弧的長(zhǎng)度)。

      建議你自己一步步推導(dǎo)出公式,而不要照搬網(wǎng)上的現(xiàn)成公式。

      四、常見(jiàn)問(wèn)題

      疑問(wèn)1:這分明是兩道數(shù)學(xué)題啊,能否將數(shù)學(xué)公式提供給我們呢,我們的主要任務(wù)不是編寫(xiě)程序嗎?

      答:建立數(shù)學(xué)模型也是編程序的一部分。學(xué)會(huì)分析解決現(xiàn)實(shí)中遇到的問(wèn)題,是我們學(xué)習(xí)的重要目標(biāo)。

      疑問(wèn)2:這個(gè)問(wèn)題好像屬于球面幾何的范疇,用平面幾何可以求解嗎?

      答:這個(gè)問(wèn)題的確涉及到球面幾何,但是也的確可以利用投影以及平面幾何方法來(lái)求解。

      實(shí)驗(yàn)二 選擇結(jié)構(gòu)程序設(shè)計(jì)(2學(xué)時(shí))

      一、實(shí)驗(yàn)?zāi)康?/p>

      掌握選擇結(jié)構(gòu)程序設(shè)計(jì)的一般方法及選擇結(jié)構(gòu)程序的調(diào)試方法。

      二、實(shí)驗(yàn)要求

      1. 仔細(xì)閱讀下列實(shí)驗(yàn)內(nèi)容,并編寫(xiě)出相應(yīng)的C語(yǔ)言源程序。2. 在VC運(yùn)行環(huán)境下,編輯錄入源程序。

      3. 調(diào)試運(yùn)行源程序,注意觀察調(diào)試運(yùn)行過(guò)程中發(fā)現(xiàn)的錯(cuò)誤及改正方法。4. 掌握如何根據(jù)出錯(cuò)信息查找語(yǔ)法錯(cuò)誤。

      5.最后提交帶有充分注釋的源程序文件(擴(kuò)展名為.c)。要求該文件必須能夠正確地編譯及運(yùn)行,并不得與他人作品雷同。

      6.源程序注釋信息可以包括以下幾方面內(nèi)容:

      ⑴程序功能描述。

      ⑵程序版本號(hào)、創(chuàng)作日期。

      ⑶作者信息描述:班級(jí)、學(xué)號(hào)、姓名。

      ⑷問(wèn)題分析描述。

      ⑸算法設(shè)計(jì)描述。

      ⑹關(guān)鍵語(yǔ)句注釋說(shuō)明。

      ⑺調(diào)試運(yùn)行過(guò)程中出現(xiàn)的錯(cuò)誤及改正方法。

      ⑻輸入數(shù)據(jù)樣例。

      ⑼輸出數(shù)據(jù)樣例。

      三、實(shí)驗(yàn)內(nèi)容

      你知道你生日那天是星期幾嗎,還有你知道你爸爸生日那天是星期幾嗎?你可能會(huì)說(shuō):可以查萬(wàn)年歷啊。那么,不查萬(wàn)年歷你能計(jì)算出來(lái)嗎?

      以下兩題,任選其一解答。

      1.編程序?qū)崿F(xiàn):輸入一個(gè)年份y,求出從公元1年1月1日到y(tǒng)年1月1日,總共有多少天,并求出y年的1月1日是星期幾。

      2.編程序?qū)崿F(xiàn):輸入任意一個(gè)日期的年、月、日的值,求出從公元1年1月1日到這一天總共有多少天,并求出這一天是星期幾。

      四、常見(jiàn)問(wèn)題

      疑問(wèn)1:閏年的規(guī)律是不是四年一閏?

      答:四年一閏是儒略歷(儒略也就是凱撒大帝)的置閏規(guī)則。我們現(xiàn)在使用的是格里高利歷,置閏規(guī)則是每400年97閏。

      疑問(wèn)2:公元1年1月1日是星期幾呢?

      答:星期一。

      疑問(wèn)3:據(jù)說(shuō)從儒略歷改為格里高利歷時(shí),將1582年10月4日的下一天定為格里高利歷的10月15日,中間銷(xiāo)去了10天,這會(huì)不會(huì)影響星期幾的計(jì)算?

      答:這個(gè)調(diào)整是對(duì)儒略歷誤差的糾正,并不會(huì)影響總天數(shù)和星期幾的計(jì)算。

      疑問(wèn)4:這里計(jì)算總天數(shù),好像要用到循環(huán)程序吧?

      答:其實(shí)根據(jù)閏年的置閏規(guī)則,不使用循環(huán)也可以計(jì)算出來(lái)總天數(shù)。當(dāng)然,你想使用循環(huán)編寫(xiě)該程序也是可以的。

      實(shí)驗(yàn)三 循環(huán)結(jié)構(gòu)程序設(shè)計(jì)(2學(xué)時(shí))

      一、實(shí)驗(yàn)?zāi)康恼莆昭h(huán)結(jié)構(gòu)程序設(shè)計(jì)的一般方法及循環(huán)結(jié)構(gòu)程序的調(diào)試方法。

      二、實(shí)驗(yàn)要求

      1. 仔細(xì)閱讀下列實(shí)驗(yàn)內(nèi)容,并編寫(xiě)出相應(yīng)的C語(yǔ)言源程序。2. 在VC運(yùn)行環(huán)境下,編輯錄入源程序。

      3. 調(diào)試運(yùn)行源程序,注意觀察調(diào)試運(yùn)行過(guò)程中發(fā)現(xiàn)的錯(cuò)誤及改正方法。4. 掌握如何根據(jù)出錯(cuò)信息查找語(yǔ)法錯(cuò)誤。

      5.最后提交帶有充分注釋的源程序文件(擴(kuò)展名為.c)。要求該文件必須能夠正確地編譯及運(yùn)行,并不得與他人作品雷同。

      6.源程序注釋信息可以包括以下幾方面內(nèi)容:

      ⑴程序功能描述。

      ⑵程序版本號(hào)、創(chuàng)作日期。

      ⑶作者信息描述:班級(jí)、學(xué)號(hào)、姓名。

      ⑷問(wèn)題分析描述。

      ⑸算法設(shè)計(jì)描述。

      ⑹關(guān)鍵語(yǔ)句注釋說(shuō)明。

      ⑺調(diào)試運(yùn)行過(guò)程中出現(xiàn)的錯(cuò)誤及改正方法。

      ⑻輸入數(shù)據(jù)樣例。

      ⑼輸出數(shù)據(jù)樣例。

      三、實(shí)驗(yàn)內(nèi)容

      以下兩題,任選其一解答。

      1. 海萍夫婦為了徹底告別“蝸居”生活,痛下決心貸款60萬(wàn)元購(gòu)買(mǎi)了一套三居室。若貸款月利率為0.5%,還款期限為120個(gè)月,還款方式為等額本金還款法(即貸款期限內(nèi)每期以相等的額度償還貸款本金,貸款利息隨本金逐期遞減)。試求出每個(gè)月還款的本金、每個(gè)月的利息以及總利息分別是多少元。

      2. 若還款方式采用等額本息還款法(即貸款期限內(nèi)每期以相等的額度償還貸款本息,貸款利息隨本金逐期遞減)。試求出每個(gè)月還款的本金、每個(gè)月的利息以及總利息分別是多少元。

      四、常見(jiàn)問(wèn)題

      疑問(wèn)1:等額本息還款法每個(gè)月的還款額怎么計(jì)算,應(yīng)該有個(gè)公式吧,要不然怎么計(jì)算出來(lái)每個(gè)月應(yīng)還的利息與本金?

      答:的確有一個(gè)計(jì)算公式。當(dāng)然你可以自己推導(dǎo)出來(lái)(這樣你會(huì)很有成就感?。?,要不然就從網(wǎng)上搜索出來(lái)。

      實(shí)驗(yàn)四 循環(huán)程序綜合應(yīng)用(4學(xué)時(shí))

      一、實(shí)驗(yàn)?zāi)康模?/p>

      掌握循環(huán)結(jié)構(gòu)程序設(shè)計(jì)的一般方法及循環(huán)結(jié)構(gòu)程序的調(diào)試方法,能夠綜合運(yùn)用順序、選擇和循環(huán)結(jié)構(gòu)解決一般難度的實(shí)際應(yīng)用問(wèn)題。

      二、實(shí)驗(yàn)要求

      1. 仔細(xì)閱讀下列實(shí)驗(yàn)內(nèi)容,并編寫(xiě)出相應(yīng)的C語(yǔ)言源程序。2. 在VC運(yùn)行環(huán)境下,編輯錄入源程序。

      3. 調(diào)試運(yùn)行源程序,注意觀察調(diào)試運(yùn)行過(guò)程中發(fā)現(xiàn)的錯(cuò)誤及改正方法。4. 掌握如何根據(jù)出錯(cuò)信息查找語(yǔ)法錯(cuò)誤。

      5.最后提交帶有充分注釋的源程序文件(擴(kuò)展名為.c)。要求該文件必須能夠正確地編譯及運(yùn)行,并不得與他人作品雷同。

      6.源程序注釋信息可以包括以下幾方面內(nèi)容:

      ⑴程序功能描述。

      ⑵程序版本號(hào)、創(chuàng)作日期。

      ⑶作者信息描述:班級(jí)、學(xué)號(hào)、姓名。

      ⑷問(wèn)題分析描述。

      ⑸算法設(shè)計(jì)描述。

      ⑹關(guān)鍵語(yǔ)句注釋說(shuō)明。

      ⑺調(diào)試運(yùn)行過(guò)程中出現(xiàn)的錯(cuò)誤及改正方法。

      ⑻輸入數(shù)據(jù)樣例。

      ⑼輸出數(shù)據(jù)樣例。

      三、實(shí)驗(yàn)內(nèi)容

      以下兩題,任選其一解答。

      1.編程序?qū)崿F(xiàn)如下功能:輸入任意一個(gè)年份和月份,按以下格式輸出該月份的公歷日歷。

      要求由程序計(jì)算出來(lái)該月份的1日是星期幾,并用循環(huán)控制打印。打印樣例如下:

      2012年日歷

      ==========

      9月

      ---------日 一 二 三 四 五 六2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30-------------------------

      2.編程序?qū)崿F(xiàn)如下功能:輸入任意一個(gè)年份,按以下格式輸出該年份全年的公歷日歷。要求由程序計(jì)算出來(lái)每個(gè)月份的1日是星期幾,并用循環(huán)控制打印。

      四、常見(jiàn)問(wèn)題

      疑問(wèn)1:如何控制某個(gè)月1日的打印位置?

      答:先由程序計(jì)算出來(lái)該月份的1日是星期幾,然后控制在打印“1”之前打印相應(yīng)個(gè)數(shù)的空格。

      疑問(wèn)2:如何控制每周和每月的打印換行?

      答:可以根據(jù)當(dāng)前這一天的打印位置控制每周的打印換行,并根據(jù)該月份的天數(shù)控制每月的打印換行。

      實(shí)驗(yàn)五 字符串處理綜合應(yīng)用(4學(xué)時(shí))

      一、實(shí)驗(yàn)?zāi)康?/p>

      掌握字符串處理的一般方法及字符串處理應(yīng)用程序的調(diào)試方法,能夠綜合運(yùn)用選擇、循環(huán)結(jié)構(gòu)和數(shù)組、指針解決一般難度的實(shí)際應(yīng)用問(wèn)題。

      二、實(shí)驗(yàn)要求

      1. 仔細(xì)閱讀下列實(shí)驗(yàn)內(nèi)容,并編寫(xiě)出相應(yīng)的C語(yǔ)言源程序。2. 在VC運(yùn)行環(huán)境下,編輯錄入源程序。

      3. 調(diào)試運(yùn)行源程序,注意觀察調(diào)試運(yùn)行過(guò)程中發(fā)現(xiàn)的錯(cuò)誤及改正方法。4. 掌握如何根據(jù)出錯(cuò)信息查找語(yǔ)法錯(cuò)誤。

      5.最后提交帶有充分注釋的源程序文件(擴(kuò)展名為.c)。要求該文件必須能夠正確地編譯及運(yùn)行,并不得與他人作品雷同。

      6.源程序注釋信息可以包括以下幾方面內(nèi)容: ⑴程序功能描述。

      ⑵程序版本號(hào)、創(chuàng)作日期。

      ⑶作者信息描述:班級(jí)、學(xué)號(hào)、姓名。

      ⑷問(wèn)題分析描述。

      ⑸算法設(shè)計(jì)描述。

      ⑹關(guān)鍵語(yǔ)句注釋說(shuō)明。

      ⑺調(diào)試運(yùn)行過(guò)程中出現(xiàn)的錯(cuò)誤及改正方法。

      ⑻輸入數(shù)據(jù)樣例。

      ⑼輸出數(shù)據(jù)樣例。

      三、實(shí)驗(yàn)內(nèi)容

      以下兩題,任選其一解答。

      1.編程實(shí)現(xiàn),輸入一個(gè)整數(shù)的小寫(xiě)金額值(即不考慮角和分),轉(zhuǎn)化為大寫(xiě)金額值并輸出。先實(shí)現(xiàn)基本功能,如輸入1002300,可以輸出“壹佰零拾零萬(wàn)貳仟叁佰零拾零元整”。

      2.編程實(shí)現(xiàn),輸入一個(gè)小寫(xiě)金額值,轉(zhuǎn)化為大寫(xiě)金額值輸出。要求實(shí)現(xiàn)相對(duì)完善的功能,如輸入1002300.90,應(yīng)該輸出“壹佰萬(wàn)貳仟叁佰元零玖角整”。

      四、常見(jiàn)問(wèn)題

      疑問(wèn)1:如何才能分離出整數(shù)中的每一位數(shù)字?

      答:可以利用整數(shù)的求余數(shù)和除法運(yùn)算實(shí)現(xiàn)數(shù)字的分離,同時(shí)將分離出的數(shù)字存入到一個(gè)事先定義好的數(shù)組中,每個(gè)數(shù)組元素只存儲(chǔ)一位數(shù)字。

      疑問(wèn)2:若不能確定整數(shù)的實(shí)際位數(shù),如何控制分離過(guò)程?

      答:可以通過(guò)循環(huán)控制數(shù)字的分離過(guò)程,每循環(huán)一次分離出來(lái)當(dāng)前的最末一位,然后去掉最末一位,直至分離出所有的位。

      疑問(wèn)3:如何控制給某位數(shù)字添加合適的數(shù)量單位,如萬(wàn)、仟、佰、拾、元?

      答:可以根據(jù)該數(shù)字在原小寫(xiě)數(shù)值中的位置進(jìn)行控制,如第0位單位為“元”,第1位單位為“拾”,依此類(lèi)推。

      實(shí)驗(yàn)六 文件應(yīng)用程序設(shè)計(jì)(2學(xué)時(shí))

      一、實(shí)驗(yàn)?zāi)康恼莆瘴募?yīng)用程序設(shè)計(jì)的一般方法及其調(diào)試方法。

      二、實(shí)驗(yàn)要求

      1. 仔細(xì)閱讀下列實(shí)驗(yàn)內(nèi)容,并編寫(xiě)出相應(yīng)的C語(yǔ)言源程序。2. 在VC運(yùn)行環(huán)境下,編輯錄入源程序。

      3. 調(diào)試運(yùn)行源程序,注意觀察調(diào)試運(yùn)行過(guò)程中發(fā)現(xiàn)的錯(cuò)誤及改正方法。4. 掌握如何根據(jù)出錯(cuò)信息查找語(yǔ)法錯(cuò)誤。

      5.最后提交帶有充分注釋的源程序文件(擴(kuò)展名為.c)。要求該文件必須能夠正確地編譯及運(yùn)行,并不得與他人作品雷同。

      6.源程序注釋信息可以包括以下幾方面內(nèi)容:

      ⑴程序功能描述。

      ⑵程序版本號(hào)、創(chuàng)作日期。

      ⑶作者信息描述:班級(jí)、學(xué)號(hào)、姓名。

      ⑷問(wèn)題分析描述。

      ⑸算法設(shè)計(jì)描述。

      ⑹關(guān)鍵語(yǔ)句注釋說(shuō)明。

      ⑺調(diào)試運(yùn)行過(guò)程中出現(xiàn)的錯(cuò)誤及改正方法。

      ⑻輸入數(shù)據(jù)樣例。

      ⑼輸出數(shù)據(jù)樣例。

      三、實(shí)驗(yàn)內(nèi)容

      以下兩題,任選其一解答。

      1. 海萍夫婦為了徹底告別“蝸居”生活,痛下決心貸款60萬(wàn)元購(gòu)買(mǎi)了一套三居室。若貸款月利率為0.5%,還款期限為120個(gè)月,還款方式為等額本金還款法(即貸款期限內(nèi)每期以相等的額度償還貸款本金,貸款利息隨本金逐期遞減)。試求出每個(gè)月還款的本金、每個(gè)月的利息以及總利息分別是多少元。要求將輸出結(jié)果寫(xiě)入到數(shù)據(jù)文件中。

      2. 若還款方式采用等額本息還款法(即貸款期限內(nèi)每期以相等的額度償還貸款本息,貸款利息隨本金逐期遞減)。試求出每個(gè)月還款的本金、每個(gè)月的利息以及總利息分別是多少元。要求將輸出結(jié)果寫(xiě)入到數(shù)據(jù)文件中。

      第四篇:《C語(yǔ)言程序設(shè)計(jì)》實(shí)驗(yàn)四

      電子科技大學(xué) 計(jì)算機(jī) 學(xué)院

      標(biāo) 準(zhǔn) 實(shí) 驗(yàn) 報(bào) 告

      (實(shí)驗(yàn))課程名稱

      C語(yǔ)言程序設(shè)計(jì)

      電子科技大學(xué)教務(wù)處制表

      電 子 科 技 大 學(xué) 實(shí)

      驗(yàn)

      報(bào)

      學(xué)生姓名:

      學(xué) 號(hào):

      指導(dǎo)教師:劉 勇 實(shí)驗(yàn)地點(diǎn): 計(jì)算機(jī)學(xué)院軟件306室

      實(shí)驗(yàn)日期:

      ****年**月**日

      一、實(shí)驗(yàn)室名稱:

      軟件實(shí)驗(yàn)室

      二、實(shí)驗(yàn)項(xiàng)目名稱:函數(shù)的應(yīng)用及預(yù)處理

      三、實(shí)驗(yàn)學(xué)時(shí):2

      四、實(shí)驗(yàn)原理:

      使用Turbo C軟件(簡(jiǎn)稱TC),在微型計(jì)算機(jī)上,對(duì)其程序進(jìn)行編輯、編譯、連接與運(yùn)行。Turbo C是一個(gè)集成環(huán)境,它具有方便、直觀、易用的界面和豐富的庫(kù)函數(shù)。通過(guò)上機(jī)練習(xí)掌握在TC環(huán)境下編輯、編譯、連接、和運(yùn)行C程序的方法和過(guò)程。

      五、實(shí)驗(yàn)?zāi)康?/p>

      1. 掌握C語(yǔ)言中定義函數(shù)的方法; 2. 掌握函數(shù)傳值調(diào)用的方法; 3. 掌握函數(shù)傳址調(diào)用的方法; 4. 掌握遞歸函數(shù)的設(shè)計(jì)方法; 5. 掌握命令行參數(shù)的使用方法;

      6. 掌握函數(shù)在不同文件中的編譯、鏈接方法。

      六、實(shí)驗(yàn)內(nèi)容

      編程實(shí)驗(yàn),完成以下上機(jī)內(nèi)容,調(diào)試運(yùn)行程序并完成報(bào)告 1)、教材第七章習(xí)題7.4;

      2)、編寫(xiě)一個(gè)實(shí)現(xiàn)冒泡法排序的函數(shù),并在主函數(shù)中從鍵盤(pán)上輸入6個(gè)數(shù)后進(jìn)行排序輸出;

      3)、教材第七章習(xí)題7.11; 4)、教材第七章習(xí)題7.15; 5)、教材第七章習(xí)題7.24; 6)、求解漢渃塔(tower of Hanoi)問(wèn)題。在一塊平板上立有3根立柱,從左到右分別標(biāo)記為A,B,C。最初在A柱上放有6個(gè)大小不等的圓盤(pán),并且大盤(pán)在下面,小盤(pán)在上面。要求將這些盤(pán)從A移到C(可以借助B柱)。條件是:每次只能移動(dòng)一個(gè)盤(pán),并且不允許把大盤(pán)放在小盤(pán)的上面。(提示:利用函數(shù)的遞歸調(diào)用);

      七、實(shí)驗(yàn)器材(設(shè)備、元器件):

      pc硬件要求:CPU PII 以上,64M 內(nèi)存,1OOM 硬盤(pán)空間即可。

      軟件要求:DOS3.0以上/Windows98/Me/XP/NT/2000。

      八、實(shí)驗(yàn)步驟: 實(shí)驗(yàn)編程與運(yùn)行結(jié)果

      ⑴ 編寫(xiě)一個(gè)求兩個(gè)整數(shù)的最小公倍數(shù)的函數(shù),兩個(gè)整數(shù)由鍵盤(pán)輸入,用主函數(shù)調(diào)用這個(gè)函數(shù),并輸出結(jié)果。

      程序文件名為7_4.c,源程序清單如下:

      #include lcd(int a,int b){ int temp,num1,num2;num1=a;num2=b;while(num2!=0){ temp=num1%num2;num1=num2;num2=temp;} return(a*b/num1);} main(){ int t,x,y;printf(“Please input two integers:”);scanf(“%d,%d”,&x,&y);if(x>y){t=x;x=y;y=t;} printf(“l(fā)cd(%d,%d)=%dn”,x,y,lcd(x,y));}

      運(yùn)行結(jié)果:

      ⑵ 編寫(xiě)一個(gè)實(shí)現(xiàn)冒泡法排序的函數(shù),并在主函數(shù)中從鍵盤(pán)上輸入6個(gè)數(shù)后進(jìn)行排序輸出。

      程序文件名為testf3.c,源程序清單如下:

      main(){ int i,j,a[7];int temp;clrscr();for(i=1;i<7;i++){ printf(“nInput a[%d]=”,i);scanf(“%d”,&a[i]);} for(i=1;i<6;i++)for(j=1;j<7;j++){ if(a[j]

      temp=a[j];a[j]=a[j+1];a[j+1]=temp;} } for(i=1;i<7;i++){ printf(“n%5d”,a[i]);} }_

      運(yùn)行結(jié)果:

      編寫(xiě)一個(gè)通過(guò)函數(shù)調(diào)用把輸入的小寫(xiě)字符串變?yōu)榇髮?xiě)字符串的程序。

      程序文件名為7_11.c,源程序清單如下:

      #include lowch_to_upch(char *str){ while(*str!='