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

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

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

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

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

      《C語言程序設(shè)計(jì)教程》習(xí)題參考答案

      時(shí)間:2019-05-12 23:26:15下載本文作者:會(huì)員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《《C語言程序設(shè)計(jì)教程》習(xí)題參考答案》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《《C語言程序設(shè)計(jì)教程》習(xí)題參考答案》。

      第一篇:《C語言程序設(shè)計(jì)教程》習(xí)題參考答案

      《C語言程序設(shè)計(jì)教程》習(xí)題參考答案

      默認(rèn)分類 2007-09-10 12:38:44 閱讀6618 評論13 字號:大中小 訂閱

      【習(xí)題1】

      一、簡答題(在課本中尋找答案,略)1.1 C程序的基本結(jié)構(gòu)包括哪些內(nèi)容? 1.2 如何定義標(biāo)識符?

      1.3 輸入格式、輸出格式的組成包括哪些內(nèi)容? 1.4 C語言函數(shù)分為哪兩類?

      1.5 計(jì)算表達(dá)式的值應(yīng)該考慮哪些方面? 1.6 上機(jī)調(diào)試程序的步驟如何?

      二、判斷并改錯(cuò)

      1.7 C程序執(zhí)行的入口是main()函數(shù),所以main函數(shù)必須放在程序的開頭。錯(cuò)誤:main函數(shù)可以放在程序的任何位置。并不限定在程序的開頭。1.8 定義一個(gè)函數(shù)包括數(shù)據(jù)說明部分和執(zhí)行語句部分,兩者可以交叉出現(xiàn)。錯(cuò)誤:不可以交叉出現(xiàn),數(shù)據(jù)說明部分在執(zhí)行語句部分的前面。1.9 編輯與編譯不是一回事。

      錯(cuò)誤:不是一回事。編輯完成源程序的輸入和修改;編譯是對源程序進(jìn)行語法檢查,如果無語法錯(cuò)誤,則生成目標(biāo)程序。

      1.10 scanf(“%d,%d”,&x,&y);的正確輸入格式:3,4<回車>。正確

      1.11 注釋內(nèi)容太多會(huì)影響程序的執(zhí)行效率。

      錯(cuò)誤:不會(huì)影響程序的執(zhí)行效率。因?yàn)樵诰幾g時(shí),編譯系統(tǒng)將注釋內(nèi)容刪除或用空格代替,所以注釋內(nèi)容不會(huì)編譯到目標(biāo)程序中。

      1.12 所有的數(shù)學(xué)公式可以直接出現(xiàn)在源程序中。

      錯(cuò)誤:數(shù)學(xué)公式需要轉(zhuǎn)換成C語言能夠接受的公式才能出現(xiàn)在源程序中。

      三、編程題

      1.13 在屏幕上輸出自己名字的拼音。

      提示:中文名字叫“張三”,對應(yīng)的拼音為“Zhang San”,輸出用printf()函數(shù)。1.14 輸入圓的半徑,求圓的周長,并將結(jié)果保留兩位小數(shù)輸出到屏幕上。提示:定義圓的半徑r,圓的周長:2*3.14*r,輸出結(jié)果保留2位小數(shù)可以用%.2f 1.15 輸入兩個(gè)整數(shù),輸出其中最大者。提示:模仿例1.3 1.16 輸入三個(gè)整數(shù),輸出其中最小者。提示: min(min(a,b),c);【習(xí)題2】

      一、簡答題(在課本中尋找答案,略)2.1 常量與變量的區(qū)別?

      2.2 C語言中的標(biāo)識符的定義規(guī)則? 2.3 變量為什么要“先定義,后使用”? 2.4 字符常量'a'與字符串常量“a”有何區(qū)別? 2.5 大小寫字母轉(zhuǎn)換的規(guī)則是什么? 2.6 變量的具有哪三種屬性?

      二、單項(xiàng)選擇題

      2.7 C語言中,int型數(shù)據(jù)在內(nèi)存中的存儲(chǔ)形式是(D)。A)ASCII碼 B)原碼 C)反碼 D)補(bǔ)碼

      2.8 下面四個(gè)選項(xiàng)中,均是不合法的用戶標(biāo)識符的選項(xiàng)是(C)。A)BA、x_0、do B)float、1a0、_Y C)x-y、goto、123 D)_123、tmp、CHAR 2.9 下列選項(xiàng)中不正確的常數(shù)的選項(xiàng)是(D)。A)0x12F B)-1.23E-2 C)12.0 D)0388 2.10 下面正確的字符常量是(B)。A)“a” B)'' C)“n” D)“376” 2.11 下面正確的字符串常量是(C)。A)'a' B)'376' C)“" D)376 2.12 表達(dá)式'A'+4*25.0-'b'的正確結(jié)果是(B)。A)67 B)67.0 C)不確定 D)67L 2.13 執(zhí)行printf(”%x“,100);后的輸出結(jié)果是(C)。A)100 B)0x100 C)0X64 D)64 2.14 int型的-1在內(nèi)存中的存儲(chǔ)形式是(A)。A)1111 1111 1111 1111 B)0000 0000 0000 0001 C)1111 1111 1111 1110 D)1000 0000 0000 0001 2.15 存儲(chǔ)字符串”'abc376“需要的字節(jié)數(shù)是(D)。A)11 B)13 C)6 D)7 【習(xí)題3】

      一、計(jì)算題

      3.1 2.8+7%3*11%2/4(答案:2.8)3.2 5/2+5.0/2+7%6(答案:5.5)3.3 a=12,a*=2+3(答案:a=60)3.4 a=3,b=4,c=5,a+b>c&&b= =c(答案:0)3.5 3>5?3:5<8?25:40(答案:25)3.6 設(shè)a=1,b=2,c=3,d=4,m=n=1,有表達(dá)式(m=a>b)&&(n=c>d),計(jì)算表達(dá)式后m,n的值?(答案:m=0,n=1)3.7 設(shè)int b=7;float a=2.5,c=4.7;求下面表達(dá)式的值。a+(int)(b/2*(int)(a+c)/2)%4(答案:4.5)

      二、單項(xiàng)選擇題

      3.8 若有代數(shù)式,則不正確的C語言表達(dá)式是(C)。A)x/b/c*y*8 B)8*x*y/b/c C)8*x*y/b*c D)x*y/c/b*8 3.9 有如下類型說明: int k,a,b;unsigned long w=8;double x=2.9 則以下不符合C語言語法的表達(dá)式是(A)。A)x%(-3)B)w*=-2 C)k=(a=6,b=4,a-b)D)a*=a+=a-=(b=4)*(a=3)3.10 有如下類型說明: float n;int m;則以下能實(shí)現(xiàn)將n中的數(shù)值保留小數(shù)點(diǎn)后兩位,第三位四舍五入的表達(dá)式是(B)。A)n=(n*100+0.5)/100.0 B)m=n*100+0.5,n=m/100.0 C)n=n*100+0.5/100.0 D)n=(n/100+0.5)*100.0 3.11 設(shè)k=7,x=12;則下列表達(dá)式值為3的是(D)。A)x%=(k%=5)B)x%=(k-k%5)C)x%=k-k%5 D)(x%=k)-(k%=5)3.12 已知m=48,ch='a',n=0;則表達(dá)式(m>=n&&ch<'b'&&!n)的值是(B)。A)0 B)1 C)真 D)非0 3.13 下面哪個(gè)式子在b為奇數(shù)時(shí)結(jié)果為假(C)。

      A)a%2==1 B)!(a%2==0)C)!(a%2)D)a%2 3.13 執(zhí)行printf(”%f“,(x=3,y=5,x>y?1:1.5));后的輸出結(jié)果是(D)。A)語法錯(cuò)誤 B)1 C)1.5 D)1.500000 3.14 能表示條件0≤x≤100的表達(dá)式是(D)。A)0<=x<=100 B)x>=0,x<=100 C)0≤x≤100 D)x>=0&&x<=100 3.15 判斷char型變量ch為數(shù)字的正確表達(dá)式是(B)。A)ch>=”0“&&ch<=”9“ B)ch>='0'&&ch<='9' C)'0'≤ch≤'9' D)ch>='0'||ch<='9'

      三、編程題(應(yīng)用條件運(yùn)算)

      3.16 輸入一個(gè)整型成績x,3.17 如果大于等于60分,3.18 輸出“pass”,3.19 否則輸出“fail”。提示:printf(”%s“,x>60?”pass“:”fail“);3.17 輸入一個(gè)年份y,如果是閏年,輸出“y is a leap year”,否則輸出“y is not a leap year.” 提示:printf(”%d is %s“,y%4==0&&y%100!=0||y%400==0?”a leap year.“:”not a leap year.“);3.18 輸入三條邊a,b,c,如果它們能構(gòu)成一個(gè)三角形,輸出“Yes”,否則輸出“No”。提示:printf(”%s“,a+b>c&&a+c>b&&b+c>a?”Yes“:”No“);3.19 輸入三個(gè)數(shù)x,y,z,按從小到大的輸出結(jié)果。

      提示:分別用max0,min0代表最大、最小值,mid0表示中間值。max0=(x>y?x:y)>z?(x>y?x:y):z;max0=(x

      提示:分別用x,y代表平面上一個(gè)點(diǎn)。printf(”%s“,x*x+y*y<=0?”Yes“:”No“);【習(xí)題4】

      以下的編程題目要求首先畫出程序的傳統(tǒng)流程圖或N-S流程圖,再編寫程序代碼。上機(jī)實(shí)驗(yàn)時(shí)再輸入到計(jì)算機(jī)中進(jìn)行調(diào)試,并將調(diào)試過程中出現(xiàn)的問題和測試情況記錄下來。(流程圖請讀者自己參考課本自己畫,略)4.1 編程實(shí)現(xiàn),輸入一個(gè)整數(shù),判斷它是否為偶數(shù),并顯示相應(yīng)的信息。提示:x代表輸入的整數(shù),if(x%2==0)printf(”neven“);else printf(”nodd“);4.2 編程實(shí)現(xiàn),輸入一個(gè)平面上的點(diǎn),判斷它是否落在單位圓上,并顯示相應(yīng)的信息。提示:x,y代表平面坐標(biāo),if(x*x+y*y==1)printf(”nYes“);else printf(”nNo“);4.3 編程實(shí)現(xiàn),輸入一個(gè)成績等級(A-E),顯示相應(yīng)的百分制成績段。

      A: 90-100 B: 80-89 C: 70-79 D: 60-69 E: <60 提示:char grade;if(grade=='A')printf(”n90-100“);else if(grade=='B')printf(”n80-89“);....4.4 寫出下面程序的運(yùn)行結(jié)果:

      #include main(){ int a=-1,b=1,c=5;switch(a>0){ case 1:switch(b-2<0){ case 1:printf(”&“);break;case 2:printf(”*“);break;} case 0:switch(c= =5){ case 0:printf(”!“);break;case 1:printf(”#“);break;default:printf(”%%“);} default:printf(”@“);} } 運(yùn)行結(jié)果:&#@ 4.5 將以下語句改寫成switch語句。

      if((t>0)&&(t<=10))if((t>=3)&&(t<=6))x=2;else if((t>1)||(t>8))x=3;else x=1;else x=0;提示:int t;if(t<=0||t>10)c=0;else c=t;switch(t){ case 0: x=0;break;case 1: case 2: x=3;case 3:case 4:case 5: case 6: x=2;case 7:case 8: case 9: x=3;case 10: x=2;}

      4.7 編程實(shí)現(xiàn)一個(gè)具有簡單四則運(yùn)算功能的計(jì)算器。

      提示:參照例4.18,隨機(jī)產(chǎn)生3個(gè)數(shù),其中一個(gè)數(shù)用來判斷是哪種運(yùn)算。

      4.8 編程實(shí)現(xiàn),輸入一行字符,將其中的數(shù)字字符對應(yīng)的整數(shù)值加起來并輸出結(jié)果。如:

      a45b8&*3 則是4+5+8+3,結(jié)果為20。提示:char c;int sum=0;while((c=getchar())!='n')if(c>='0'&&c<='9')sum=sum+c-'0';4.9 編程實(shí)現(xiàn),求 的值。

      提示:先計(jì)算n!,再在計(jì)算階乘的外面套上一層循環(huán)。注意:20!是一個(gè)很大的值,float s=1;int i;例如:計(jì)算6?。?/p>

      for(i=1;i<=6;i++)s=s*i;4.10 編程實(shí)現(xiàn),找出1000之內(nèi)的所有完數(shù),并按下面格式輸出其因子:its factors are 1,2,3,所謂“完數(shù)”是指一個(gè)數(shù)如果恰好等于它的因子之和,因子是指能夠整除該數(shù)的數(shù)。提示:先判斷數(shù)是否為完數(shù),如果是再考慮輸出因子。以6為例輸出因子:

      for(i=1;i<6;i++)if(6%i==0)printf(”%d,“,i);4.11 編程實(shí)現(xiàn),計(jì)算序列的前20項(xiàng)之和,,,,...提示:這是一個(gè)累加式,每項(xiàng)是一個(gè)分式,用a、b分別表示分子、分母。注意:如果a、b都是整數(shù),則是整除。float sum=0,a=2,b=1;int i;for(i-1;i<=20;i++){sum=sum+a/b;a=a+b;b=a-b;}

      4.12 編程實(shí)現(xiàn),求Sn=a+aa+aaa+...+ aa...a之值,其中a是一個(gè)數(shù)字。如:2+22+222+2222+22222(此時(shí)n=5),n,a由鍵盤輸入。

      提示:這是一個(gè)累加式,后1項(xiàng)可以由前一項(xiàng)表示,譬如:第2項(xiàng)可以由第1項(xiàng)表示:

      第1項(xiàng) t=a;第2項(xiàng):t=t*10+a;4.13 編程實(shí)現(xiàn),把從鍵盤輸入的金額數(shù)(以圓為單位)按人民幣面額劃分,然后顯示支付該金額的各種面額人民幣的數(shù)量。

      提示:譬如:123.58元可以表示100元:1張;20元:1張;2元:1張;1元:1張;5角:1張;5分:1枚;2分:1枚;1分:1枚。

      為了簡單可以只完成整數(shù)部分轉(zhuǎn)換,即輸入的金額數(shù)為整數(shù)。4.14 編程實(shí)現(xiàn),使用循環(huán)結(jié)構(gòu)打印以下圖案。

      * * * * * * * * * * * * * * * * * * * * * * * * * 提示:輸出時(shí),本圖案要按向上三角形和向下三角形進(jìn)行輸出。每行輸出中包括空格輸出,?*?號輸出。輸出空格和?*?號個(gè)數(shù)要與行循環(huán)控制變量關(guān)聯(lián)起來。

      4.15 編程實(shí)現(xiàn),以菜單方式實(shí)現(xiàn)猜數(shù)游戲系統(tǒng)。(功能自己設(shè)定)提示:模仿例4.14和例4.18完成。功能可以包括猜數(shù)范圍,人數(shù)等設(shè)置。4.16 編程實(shí)現(xiàn),以菜單方式實(shí)現(xiàn)四則運(yùn)算輔助教學(xué)系統(tǒng)。

      提示:隨機(jī)產(chǎn)生兩個(gè)操作數(shù)和運(yùn)算符+、-、*、/,由使用者輸入一個(gè)數(shù),判斷計(jì)算結(jié)果與輸入的數(shù)是否相等,如果相等,表示正確,否則是錯(cuò)誤的?!玖?xí)題5】 填空題

      5.1 若有定義int a[3][5];則排列在數(shù)組中的第9個(gè)元素是(a[1][3])。5.2 strlen(”How are youn“)的值是(12)。5.3 C語言中字符串結(jié)束的標(biāo)志是('