欧美色欧美亚洲高清在线观看,国产特黄特色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è)計實踐教程》答案-完整版(★)

      時間:2019-05-15 13:46:21下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《《C語言程序設(shè)計實踐教程》答案-完整版》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《《C語言程序設(shè)計實踐教程》答案-完整版》。

      第一篇:《C語言程序設(shè)計實踐教程》答案-完整版

      4.2練習題

      一、選擇題

      1. D

      2. B

      3. A

      4. B和D

      5. C

      6. A

      7. B

      二、填空題

      1. //或/**/

      2. 主或main

      3. 函數(shù)首部和函數(shù)體

      4. 編譯和連接

      5. 公號

      5.2練習題

      一、選擇題

      1. A

      2. D

      3. B

      4. B

      5. C

      6. C

      7. D

      8. A

      9. B

      10.B

      11.D

      12.B

      13.A或B

      14.C

      15.B

      17.D

      18.D

      19.C

      20.D

      21.B

      22.A

      23.D

      24.C

      25.C

      26.B

      27.C

      28.D

      29.A

      30.B

      二、填空題

      1. 102,10

      2. #define宏名 字符串

      3. 1

      4. n=1

      5.-4

      6. a=1,b= ,c=2

      7. c=A

      8. n1=%dnn2=%d

      9. a+b>c&&a+c>b&&b+c>a

      10.ch>=’a’&&ch<=’z’|| ch>=’A’&&ch<=’Z’ 11.7

      12.0

      13.11110000

      14.8,4

      6.2練習題

      一、選擇題

      1. A

      2. C

      3. D

      4. C

      5. A

      7. A

      8. D

      9. B

      10.C

      11.A

      12.A

      13.C

      14.B

      15.正確答案為:12345678

      二、填空題

      1. 10

      2. y=1x%i==0

      3. 屏幕中間輸出一個由星號組成的菱形

      4. 1

      5. 13

      6.(cx=getchar())!=-1front=cx;

      7. m%n

      8. 4

      9. *ppx=&xpy=&y

      三、讀程序,寫結(jié)果

      1.-1

      2. 3,1,-1,3. a=16,y=60

      4. x=12,y=4

      5. 59

      7.2練習題

      一、選擇題

      1. B

      2. C

      3. C

      4. A

      5. D

      6. C

      8. D

      9. C

      10.D

      11.D

      12.D

      13.A

      14.B

      15.C

      16.B

      17.B

      18.A

      19.A

      20.D

      21.B

      22.D

      23.C

      24.D

      25.D

      26.C

      二、填空題

      1. ‘a(chǎn)’0

      2. a[k]a[k]a[k]

      3. 06

      4. A B C D E

      A

      5. 1,6

      6. k=p;

      7. i

      8. 18

      9. 4,some string * test

      10.you&me

      三、讀程序,寫結(jié)果

      1. 54820

      2. 1024156

      3. love china!Hwl

      4. 666655

      5. Front

      一、選擇題

      1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.A A B B B A D C A A A B B A B B C

      二、填空題

      1.2.3.4.5.6.7.8.12 Itis fun(n-1)*nfun(k)s[i]-t[i] n%mi-1x[d] x=nx%10x m=f(a,4)+f(b,4)-f(a+b,3)a=1,b=1

      三、讀程序,寫結(jié)果

      1.s=7

      2.s=37

      3.bij1

      2一、選擇題

      1.B

      2.C

      3.B

      4.D

      5.B

      6.A

      7.B

      8.D

      9.D

      10.B

      11.D

      12.A

      13.B

      14.C

      15.C

      16.C

      17.A

      18.D

      19.B

      20.D

      二、填空題

      1.b->day(*b).day

      2.DDBBCC

      3.zhang 170.000000

      wang 150.000000

      4.99

      5.max=imin=istud[max].name,stud[max].score

      6.&r1feof(fp)break

      7.BBB AAA 123

      8.rewind

      三、讀程序,寫結(jié)果

      1.2002,shangxian

      2.32 stud[min].name,stud[min].score

      第二篇:C語言程序設(shè)計教程課后習題答案

      C語言程序設(shè)計教程課后習題答案

      第一章 C語言程序設(shè)計概述 -習題答案 算法的描述有哪些基本方法?

      1、自然語言

      2、專用工具C語言程序的基本結(jié)構(gòu)是怎樣的?舉一個例子說明。

      1、C語言程序由函數(shù)構(gòu)成;

      2、“/*”與“*/”之間的內(nèi)容構(gòu)成C語言程序的注釋部分;

      3、用預處理命令#include、#define可以包含有關(guān)文件或預定義信息;

      4、大小寫字母在C語言中是有區(qū)別的;

      5、除main()函數(shù)和標準庫函數(shù)外,用戶也可以自己編寫函數(shù),應用程序一般由多個函數(shù)組成,這些函數(shù)指定實際所需要做的工作。C語言有什么特點?

      1、具有結(jié)構(gòu)語言的特點,程序之間很容易實現(xiàn)段的共享;

      2、主要結(jié)構(gòu)成分為函數(shù),函數(shù)可以在程序中被定義完成獨立的任務(wù),獨立地編譯代碼,以實現(xiàn)程序的模塊化;

      3、運算符豐富,包含的范圍很廣;

      4、數(shù)據(jù)類型豐富;

      5、允許直接訪問物理地址,即可直接對硬件進行損傷,實現(xiàn)匯編語言的大部分功能;

      6、限制不太嚴格,程序設(shè)計自由度大,這樣使C語言能夠減少對程序員的束縛;

      7、生成的目標代碼質(zhì)量,程序執(zhí)行效率高,同時C語言編寫的程序的可移植性好?!镏赋龊戏ㄅc不合法的標識符命名。

      AB12--√ leed_3--a*b2--× 8stu--× D.K.Jon--× EF3_3--√ PAS--√ if--× XYZ43K2--√ AVE#XY--× _762--√ #_DT5--× C.D--×說明下列Turbo C熱鍵的功能。

      F2:源文件存盤 F10:調(diào)用主菜單 F4:程序運行到光標所在行(用于調(diào)試程序)Ctrl+F9:編譯并鏈接成可執(zhí)行文件 Alt+F5:將窗口切換到 DOS 下,查看程序運行結(jié)果。說明下列Turbo C方式下輸入并運行下列程序,記錄下運行結(jié)果。

      ①main()

      {printf(“********************n”);printf(“ welcome you n”);printf(“ very good n);printf(”********************n“);} ②main()

      { int a,b,c,t;printf(”please input three numbers;“);scanf(”%d,%d,%d“,&a,&b,&c);/*教材S是錯誤的*/ t=max(max(a,b),c);printf(”max number is:%dn“,t);} int max(int x, int y){ int z;if(x>y)z=x;else z=y;return(z);} 答

      運行結(jié)果:

      ******************** welcome you very good ******************** 運行結(jié)果:

      please input three numbers;3,1,4 /*左側(cè)下劃線內(nèi)容為鍵盤輸入*/ max number is:4 7 一個C程序是由若干個函數(shù)構(gòu)成的,其中有且只能有一個___函數(shù)。

      main()8 在Turbo C環(huán)境下進行程序調(diào)試時,可以使用Run下拉菜單的___命令或按___鍵轉(zhuǎn)到用戶屏幕查看程序運行結(jié)果。

      1、User screen

      2、Alt+F5 9 ★C語言對標識符與關(guān)鍵字有些什么規(guī)定?

      1、標識符用來表示函數(shù)、類型及變量的名稱,它是由字母、下劃線和數(shù)字組成,但必須用字母或下劃線開頭。

      2、關(guān)鍵字是一種語言中規(guī)定具有特定含義的標識符,其不能作為變量或函數(shù)名來使用,用戶只能根據(jù)系統(tǒng)的規(guī)定使用它們。C源程序輸入后是如何進行保存的?

      是以C為擴展名保存的純文本文件。

      第二章 C語言程序的基本數(shù)據(jù)類型與表達式 -習題答案 ★指出下列常數(shù)中哪些是符合C語法規(guī)定的。

      ''--× '101'--× ”“--× e3--× 019--√ 0x1e--√ ”abn“--√ 1.e5--×(2+3)e(4-2)--× 5.2e2.5--×請找出下列程序中的錯誤,改正后寫出程序運行結(jié)果。

      ①void main(){int x,y=z=5,aver;x=7 AVER=(x+y+z)/3 printf(”AVER=%dn“,aver);} ②void main()

      { char c1='a';c2='b';c3='c';int a=3.5,b='A' printf(”a=%db='“endn”,a,b);printf(“a%cb%cbc%ctabcn”,c1,c2,c3);} 答

      main(){int x,y=5,z=5,aver;x=7;aver=(x+y+z)/3;printf(“AVER=%dn”,aver);}

      運行結(jié)果:AVER=5 ②main()

      { char c1='a', c2='b', c3='c';int a=3,b='A';printf(“a=%d,b='%c'”end“n”,a,b);printf(“a%cb%cbc%ctabcn”,c1,c2,c3);}

      運行結(jié)果:a=3,b='A'“end”

      aabcc abc 3 寫出下列賦值的結(jié)果,表格中寫了數(shù)值的是要將它賦給其他類型的變量,將所有的空格填上賦值后的數(shù)據(jù)(實數(shù)保留到小數(shù)點后兩位)。int 99

      -1 char 'h'

      unsigned int

      float

      55.78

      long int

      答 int 99 104 66 55 68-1 char 'c' 'h' 'B' '7' 'D'

      unsigned int 99 104 66 55 68 65535

      float 99.00 104.00 66.00 55.78 68.00-1.00

      long int 99 104 66 55 68-1

      ★寫出程序運行結(jié)果。

      ①void main(){int i,j;i=8,j=10;printf(“%d,%d,%d,%dn”,i,j,++i,j++);} ②main()

      { int a=1,b=2,c=30;;printf(“%d,%d,%d,%dn”,a=b=c,a=b==c,a==(b=c),a==(b==c));} 注意:a=b=c,a=b==c之間應為逗號,教材有誤 答

      運行結(jié)果: 9,11,9,10 運行結(jié)果: 30,1,0,0

      ③void main()

      {int a=10,b=20,c=30,d;d=++a<=10||b-->=20||c++;printf(“%d,%d,%d,%dn”,a,b,c,d);}

      運行結(jié)果: 11,19,30,1

      ★寫出下面表達式的值(設(shè)a=10,b=4,c=5,d=1,x=2.5,y=3.5)。⑴a%=(b%=3)

      ⑵n++,a+=a-=a*=a ⑶(float)(a+c)/2+(int)x%(int)y ⑷a*=b+c ⑸++a-c+b++ ⑹++a-c+++b ⑺a

      ⑼a+b,18+(b=4)*3,(a/b,a%b)

      ⑽x+a%3*(int)(x+y)%2/4+sizeof(int)⑾a

      ⑴0 ⑵0 ⑶9.500000 ⑷90 ⑸10 ⑹10 ⑺'A' ⑻2 ⑼4.5 ⑽1 ⑾0 ⑿20 ⒀0 下列每組表達式中,被執(zhí)行后結(jié)果完全等價的是哪些(設(shè)a、b、m是已被賦值的整型變量)?

      ①m=(a=4,4*5)與m=a=4,4*5 ②(float)(a/b)與(float)a/b ③(int)a+b與(int)(a+b)④m%=2+a*3與m=m%2+a*3 ⑤m=1+(a=2)+(b=3)與a=2,b=3,m=1+a+b 答

      ①前面是賦值表達式,而后面的是一個逗號表達式,所以一定不同;

      ②前面的表達式中a/b結(jié)果為一整數(shù),結(jié)果已經(jīng)取整,精度可能受到影響,之后強制float后才為浮點型,后面的是先將a轉(zhuǎn)換為float后再與b相除,其值保證了精度,所以不同。

      ③因為a、b均為整數(shù),其前后兩個表達式的計算結(jié)果是一致的。

      ④前一表達式是一算術(shù)表達式,而后者為一賦值表達式,此為一點不同;另外,前一表達式的m只被賦過一次值,后一表達式中的m曾兩次被賦值,第一次賦值時與第一表達式中的值一致,第二次賦值后即不再相同。⑤前后表達式的計算結(jié)果應該是一致的:a=2, b=3, m=6 7 條件表達式x>0?x:-x的功能是什么?

      如果x的值是一正數(shù),則表達式的值為x值;如果x的值是一非正數(shù),則表達式的值為-x。其實該表達式的值即為x的絕對值,C語言中提供了一個函數(shù)fabs(x)即可完成此功能,該函數(shù)包含在math.h頭文件中。用一個條件表達式描述從a、b、c中找出最大都賦給max.答

      max=a>(b>c?b:c)?a:(b>c?b:c);9 ★若x為int型變量,則執(zhí)行以下語句后x的值為()。x=6;x+=x-=x*x;A.36 B.-60 C.60 D.-24 答 B.10 ★若有以下類型說明語句: char w;int x;float y;double z;則表達式w*x+z-y的結(jié)果為()類型。A.float B.char C.int D.double 答 D.第三章 順序結(jié)構(gòu)程序設(shè)計 -習題答案 變量k為float類型,調(diào)用函數(shù)scanf(“%d”,&k),不能使變量k得到正確數(shù)值的原因是___。

      格式修飾符與變量類型不一致。因為%d輸入的數(shù)據(jù)類型應該為十進制整數(shù),而&k為占用4個字節(jié)的float類型變量的地址?!颽=1234,b=12,c=34,則執(zhí)行“printf(“|%3d%3d%-3d|n”,a,b,c);”后的輸出是___。

      |1234 1234 |

      分析如下:

      ①%3d為右對齊輸出變量,且指定輸出變量的值寬度為3個字符位,如果變量實際位數(shù)小于3,則左端補空格,如果變量實際位數(shù)大于3,則按實際長度輸出,不受限制。

      ②%-3d為左對齊輸出變量,在輸出變量時,如是變量實際位數(shù)小于3,則在右端補空格,否則按實際輸出?!镌O(shè)有“int a=255,b=8;”,則“printf(“%x,%on”,a,b);”輸出是___。答 ff,10 ①如果“printf(“%X,%on”,a,b);”則輸出為FF,10。說明在輸出十六進制字母時,其大小寫受格式修飾符的限制,如果是“%x”則輸出小寫,如果是“%X”則輸出大寫。

      ②如果希望在輸出十六進制時輸出前導符0x或0X,則以上輸出語句應改“printf(“%#x,%on”,a,b);”為或“printf(“%#X,%on”,a,b);”。本條解釋不必須掌握?!镆韵鲁绦蜉敵龅慕Y(jié)果是___。main(){ int a1=1,a2=0,a3=2;printf(“%d,%d,%dn”,a1,a1+a2+a3,a3-a1);} 答 1,3,1 5 printf函數(shù)中用到格式符%5s,其中5表示輸出字符占用5列。如果字符串長度大于5,則按___輸出;如果字符串長度小于5,則按___輸出。

      ①實際 ②左端補空格 6 ★已定義變量如下: int a1,a2;char c1,c2;若要求輸入a1、a2、c1和c2的值,正確的輸入函數(shù)調(diào)用語句是___。

      scanf(“%d,%d,%c,%c”,&a1,&a2,&c1,&c2);7 輸入兩個整型變量a、b的值,輸出下列算式以及運算結(jié)果___。a+b、a-b、a*b、a/b、(float)a/b、a%b 每個算式占一行。如a=10,b=5,a+b輸出為:10+5=15 答

      設(shè)int a=10,b=5;以下為輸出語句及結(jié)果: ①printf(“%d+%d=%dn”,a,b,a+b);10+5=15 ②printf(“%d-%d=%dn”,a,b,a-b);10-5=5 ③printf(“%d*%d=%dn”,a,b,a*b);10*5=50 ④printf(“%d/%d=%dn”,a,b,a/b);10/5=2 ⑤printf(“%(float)d/%d=%fn”,a,b,(float)a/b);(float)10/5=2.000000 ⑥printf(“%d%%%d=%dn”,a,b,a%b);10%5=0 8 ★輸入一個非負數(shù),計算以這個數(shù)為半徑的圓周長和面積。答

      #define PI 3.1415926 main(){ float r,l,area;printf(“Input a positive:”);scanf(“%f”,&r);l=2*PI*r;area=PI*r*r;printf(“l(fā)=%ftarea=%fn”,l,area);} 9 輸入任意一個3位數(shù),將其各位數(shù)字反序輸出(例如輸入123,輸出321)。

      main(){ int x,y;printf(“Input a number(100-999):”);scanf(“%d”,&x);y=100*(x%10)+10*(x/10%10)+x/100;/*注意分析此處算法*/

      第三篇:《C語言程序設(shè)計教程》課后題答案

      《C語言程序設(shè)計教程》課后題答案

      第一章

      一選擇題

      1.A 2.B 3.C 4.D 5.B 6.C 二.填空題 1.程序 2.算法

      3.main或主 4.編譯 5.編譯 6..obj 7.庫函數(shù)

      8.文本或ASCII碼

      三、編程題

      1.參考代碼如下: #include void main(){

      printf(“金n木n水n火n土n”);} 2.參考代碼如下: #include void main(){ int a,b;

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

      printf(“%d+%d=%dn”,a,b,a+b);

      printf(“%d-%d=%dn”,a,b,a-b);

      printf(“%d*%d=%dn”,a,b,a*b);

      printf(“%d/%d=%dn”,a,b,a/b);} 3.參考代碼如下: #include void main(){

      float a,b,h,s;

      scanf(“%f%f%f”,&a,&b,&h);

      s=(a+b)*h/2;

      printf(“s=%fn”,s);}

      第二章

      一選擇題 答案及分析: 1.B,略

      2.A,-8在內(nèi)存中是以補碼(設(shè)兩個字節(jié))形式存儲的 3.A,C語言有32個關(guān)鍵字(參見課本第18頁),且C語言標識符是區(qū)分大小寫字母的 4.A,略

      5.D,八進制數(shù)據(jù)中不能出現(xiàn)數(shù)碼8 6.B,字符常量應該用單引號括起來,答案D超出了ASCII取值范圍(ASCII的取值范圍為[0,255])

      7.C,該字符串中轉(zhuǎn)義字符有三個:、22和 n,普通字符有三個:a、,和0,所以字符串長度為6 8.C,略

      9.D,C語言沒有read函數(shù)和%D格式符號,且scanf函數(shù)第二個形參為地址列表

      10.B,根據(jù)題意,scanf函數(shù)輸入數(shù)據(jù)時分隔符號不應該是逗號,應該是空格或回車符,且輸入數(shù)據(jù)時分一行或幾行均可

      11.A,scanf函數(shù)中不允許出現(xiàn)%8.4,%6.2和%8這樣的格式符號

      12.C,既要保證5位小數(shù)位,還得保證整數(shù)位不變,這樣數(shù)據(jù)12345.67800用10列不能完全顯示出來,按C語言規(guī)定,12345.67800原樣輸出

      13.B,printf函數(shù)中格式符號%d,%o,%x表示對應的整型數(shù)據(jù)分別按十進制,八進制和十六進制輸出

      14.C,按C語言規(guī)定,scanf函數(shù)形參雙引號中,如果包含非格式符號,在輸入數(shù)據(jù)時要求原樣輸入 二.填空題 答案及分析:

      1.int

      float

      double(略)

      2.65,89,printf函數(shù)中如果格式符號是%d,則輸出相應字符的ASCII十進制數(shù)值

      3.a=98,b=765.000000,c=4321.000000,scanf函數(shù)中的格式符號%2d%3f%4f,表示將鍵盤輸入的數(shù)據(jù)9876543210按2,3,4位分割,然后再分別賦給變量a,b,c 4.scanf(“%lf%lf%lf”,&a,&b,&c);double類型的變量對應的格式符號是%lf

      三、編程題

      1.參考代碼如下: #include void main(){

      int a=97;

      printf(“%cn”,a);

      printf(“%dn”,a);

      printf(“%on”,a);

      printf(“%xn”,a);} 程序分析:通過printf函數(shù)中不同的格式符號,即%c(字符),%d(十進制),%o(八進制),%x(十六進制)輸出相應的值。2.參考代碼如下: #include void main(){

      int h,m,minute;

      scanf(“%d:%d”,&h,&m);

      minute=h*60+m;

      printf(“minute=%dn”,minute);} 程序分析:輸入形式為10:27,故scanf函數(shù)雙引號中兩個格式符號%d之間必須加入“:”。3.參考代碼如下: #include void main(){

      float r=6371000,s,v;

      s=4*3.1415926*r*r;

      v=3.1415926*4/3*r*r*r;

      printf(“s=%fnv=%f”,s,v);} 程序分析:C語言中的π不代表3.1415926,可以用各種常量的形式體現(xiàn)出來。4.參考代碼如下: #include void main(){

      int m100,m50,m20,m10,m5,m1,m;

      scanf(“%d”,&m);

      m100=m/100;

      m50=(m-m100*100)/50;

      m20=(m-m100*100-m50*50)/20;

      m10=(m-m100*100-m50*50-m20*20)/10;

      m5=(m-m100*100-m50*50-m20*20-m10*10)/5;

      m1=m-m100*100-m50*50-m20*20-m10*10-m5*5;

      printf(“%d元發(fā)工資,人名幣各票面的張數(shù)為:n”,m);

      printf(“100元的張數(shù):%dn”,m100);

      printf(“50元的張數(shù):%dn”,m50);

      printf(“20元的張數(shù):%dn”,m20);

      printf(“10元的張數(shù):%dn”,m10);

      printf(“5元的張數(shù):%dn”,m5);

      printf(“1元的張數(shù):%dn”,m1);} 程序分析:人民幣的面值分別為100元,50元,20元,10元,5元和1元,工資4367元除以100后得到的商就為100元張數(shù),余數(shù)再除以50,得到的商為50元的張數(shù),余數(shù)再除20,??,以此類推就會得出人民幣各面值相應的張數(shù)。5.參考代碼如下: #include void main(){

      float r1,r2,r3,r;

      scanf(“%f%f%f”,&r1,&r2,&r3);

      r=r1*r2*r3/(r1*r2+r2*r3+r1*r3);

      printf(“三個電阻并聯(lián)后的總電阻為%fn”,r);} 程序分析:首先將計算并聯(lián)電阻值的公式變換一下;再就是考慮要保留小數(shù)位,故變量類型設(shè)置為實型,注意格式符號為%f。6.參考代碼如下: #include void main(){

      int x,a,b,c,d,y;

      scanf(“%d”,&x);

      a=x%10;

      b=x/10%10;

      c=x/100%10;

      d=x/1000;

      y=a*1000+b*100+c*10+d;

      printf(“%d逆置各位數(shù)后的值為%dn”,x,y);} 程序分析:1234除以10的余數(shù)就是4,商再除以10的余數(shù)就是3,1234除以100再除以10取余就是2,1234除以1000就是1。也可以用其他的表達式求出各位數(shù)值,例如輸入數(shù)據(jù)1234中的4,可以用公式a=x-d*1000-c*100-b*10來計算。7.參考代碼如下: #include void main(){

      float F,C;

      printf(“請輸入華氏溫度:”);

      scanf(“%f”,&F);

      C=5.0/9*(F-32);

      printf(“華氏溫度%f對應的攝氏溫度為%fn”,F,C);} 程序分析:5/9的值為0,所以要寫成5.0/9,5/9.0或5.0/9.0,還要注意變量類型為實型,且對應的格式符號為%f。8.參考代碼如下: #include void main(){

      char ch1,ch2,ch3;

      printf(“請輸入三個數(shù)字字符:”);

      scanf(“%c%c%c”,&ch1,&ch2,&ch3);

      printf(“將數(shù)字字符轉(zhuǎn)換為數(shù)字%d,%d,%dn”,ch1-'0',ch2-48,ch3-'0');} 程序分析:通過鍵盤輸入三個數(shù)字字符時要連續(xù)輸入,不要加任何分隔符號,例如121等,另外,數(shù)字字符輸出時遇到格式符號%d將輸出相應數(shù)字字符的ASCII值,但任何一個數(shù)字字符的ASCII值減去字符0的ASCII值,再對應%d格式符號輸出時,就是數(shù)字字符對應的數(shù)字,例如'2'-'0'=2。

      9.不能得到指定的輸出結(jié)果,參考代碼如下: void main(){

      int a, b, c,x, y;

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

      x=a*b;

      y=x*c;

      printf(“a=%d,b=%d,c=%dn”,a,b,c);

      printf(“x=%d,y=%dn”,x,y);}

      程序分析:scanf(“%d,%d,%d”,a,b,c);scanf函數(shù)第二類形參是地址列表,所以語句改為scanf(“%d,%d,%d”,&a,&b,&c);而這個語句對應的鍵盤輸入形式為2,3,4。為了滿足題目要求,scanf語句改為scanf(“%d%d%d”,&a,&b,&c)。另外,printf函數(shù)雙引號只能出現(xiàn)一對,且雙引號中需要在相應的位置上添加a=等這樣的字符串才能原樣輸出;還有整型變量對應格式符號是%d等。

      第三章

      一選擇題

      1.A 2.C 3.C 4.D 5.C 6.B 7.C 8.B 9.A 10.A 11.A 12.B 13.D 14.A 15.B 16.C 17.C 18.C 19.C 20.C 21.C 22.B 23.C 24.C 25.A 26.B 27.A 28.A 29.C 30.A 31.C 32.C 二.填空題 1.非零

      零 2.passwarm 3.525252 4.fabs(x)>5 5.x%y==0 6.if((1<=x&&x<=10||200<=x&&x<=210)&&x%2==1)printf(“%d”,x);7.k=1 8.Right!1

      Right!1 9.$$$ a=0 10.a=2,b=1 11.0

      “%f%f”

      a=b;13.“%c”,&ch

      'A'<=ch&&ch<='Z'

      ch 14.死循環(huán) 15.345 16.7 3-1 17.x>=0

      x

      j%3!=0 24.b=i+1 25.8 5 2 26.d=1.0

      k++ k<=n

      三、編程題

      1.參考代碼如下: #include void main(void){ float x,y;printf(“Please input the value of x:”);scanf(“%f”,&x);if(x>-5&&x<0)

      y=x;else if(x==0)

      y=x-1;else if(x>0&&x<10)

      y=x+1;printf(“y=%f”,y);} 2.參考代碼如下: #include void main(void){

      float a,b,c;

      printf(“請輸入三角形三邊的長度:n”);

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

      if(a+b>c&&b+c>a&&a+c>b)

      if(a==b&&a==c)

      printf(“該三角形是等邊三角形n”);

      else if(a==b&&a!=c)

      printf(“該三角形是等腰三角形n”);

      else

      printf(“該三角形是一般三角形n”);

      else

      printf(“不能構(gòu)成三角形n”);} 3.參考代碼如下: #include void main(void){

      float M,N,menoy;

      printf(“請輸入購買金額:”);

      scanf(“%f”,&M);

      if(M<100)

      N=0;

      else if(M>=100&&M<200)

      N=1.5;

      else if(M>=200&&M<300)

      N=2.5;

      else if(M>=300&&M<400)

      N=3.5;

      else if(M>=400&&M<500)

      N=4.5;

      else if(M>=500&&M<600)

      N=5.5;

      else

      N=6;

      menoy=M*(1-N/100);

      printf(“實際支付金額:%f,返還的金額:%fn”,menoy,M-menoy);} 4.參考代碼如下: #include void main(void){

      float M,N,menoy;

      int in;

      printf(“請輸入購買金額:”);

      scanf(“%f”,&M);

      in=M/100;

      switch(in)

      {

      case 0:N=0;break;

      case 1:N=1.5;break;

      case 2:N=2.5;break;

      case 3:N=3.5;break;

      case 4:N=4.5;break;

      case 5:N=5.5;break;

      default :N=6;break;

      }

      menoy=M*(1-N/100);

      printf(“實際支付金額:%f,返還的金額:%fn”,menoy,M-menoy);} 5.參考代碼如下: #include void main(void){

      float x,max;

      printf(“Enter a number:”);

      scanf(“%f”,&x);

      max=x;

      while(x>0)

      {

      printf(“Enter a number:”);

      scanf(“%f”,&x);

      if(x>max)

      max=x;

      }

      if(max>0)

      printf(“The largest number entered was %fn”,max);} 6.參考代碼如下: #include void main(void){

      float M,N,menoy;

      printf(“請輸入購買金額:”);

      scanf(“%f”,&M);

      while(M>0)

      {

      if(M<100)

      N=0;

      else if(M>=100&&M<200)

      N=1.5;

      else if(M>=200&&M<300)

      N=2.5;

      else if(M>=300&&M<400)

      N=3.5;

      else if(M>=400&&M<500)

      N=4.5;

      else if(M>=500&&M<600)

      N=5.5;

      else

      N=6;

      menoy=M*(1-N/100);

      printf(“實際支付金額:%f,返還的金額:%fn”,menoy,M-menoy);

      printf(“請輸入購買金額:”);

      scanf(“%f”,&M);

      } } 7.參考代碼如下: #include void main(void){

      float number,positivesum=0,negativesum=0,total=0;

      int i;

      for(i=1;i<=10;i++)

      {

      scanf(“%f”,&number);

      if(number>=0)positivesum+=number;

      else negativesum+=number;

      total+=number;

      }

      printf(“positive sum %f,negative sum %f,total %fn”,positivesum,negativesum,total);} 8.參考代碼如下: #include void main(void){

      int i,sum=0,k=1;

      for(i=1;i<=101;i+=2)

      {

      sum=sum+k*i;

      k=-k;

      }

      printf(“1-3+5-7+...-99+101=%dn”,sum);} 9.參考代碼如下: #include void main(void){

      float i,sum=0,k=1;

      for(i=1;k>=1e-4;i++)

      {

      sum=sum+k;

      k=k/i;

      }

      printf(“e=%fn”,sum);} 10.參考代碼如下: #include void main(void){

      float i,sum=0,n=2,d=1,temp;

      for(i=1;i<=20;i++)

      {

      sum=sum+n/d;

      temp=n;

      n=n+d;

      d=temp;

      }

      printf(“sum=%fn”,sum);} 11.參考代碼如下: #include #include void main(void){

      float apple,watermelon,pear;

      for(apple=1;apple<100;apple++)

      for(watermelon=1;watermelon<10;watermelon++)

      {

      pear=100-apple-watermelon;

      if(fabs(apple*0.4+watermelon*4+pear*0.2-40.0)<1e-6)

      printf(“apple:%.0f,watermelon:%.0f,pear:%.0fn”,apple,watermelon,pear);

      } }

      12.參考代碼如下: #include void main(void){

      int i,j,k;

      for(i=1;i<10;i++)

      for(j=0;j<10;j++)

      for(k=0;k<10;k++)

      if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)

      printf(“%dn”,i*100+j*10+k);} 或:

      #include void main(void){

      int a,b,c,i;

      for(i=100;i<1000;i++)

      {

      a=i/100;

      b=i/10%10;

      c=i%10;

      if(i==(a*a*a+b*b*b+c*c*c))

      printf(“%dn”,i);

      } } 13.參考代碼如下: #include void main(void){

      int a,b,c,d;

      for(a=1;a<10;a++)

      for(b=0;b<10;b++)

      for(c=0;c<10;c++)

      for(d=0;d<10;d++)

      if(a*1000+b*100+c*10+d==(a*10+b+c*10+d)*(a*10+b+c*10+d))

      printf(“%dn”,a*1000+b*100+c*10+d);} 或:

      #include void main(void){

      int a,b,c,d,i;

      for(i=1000;i<10000;i++)

      {

      a=i/1000;

      b=i/100%10;

      c=i/10%10;

      d=i%10;

      if(i==(a*10+b+c*10+d)*(a*10+b+c*10+d))

      printf(“%dn”,i);

      } } 14.參考代碼如下: #include void main(void){

      int i,j;

      for(i=1;i<=4;i++)//先控制打印前4行

      {

      for(j=1;j<=4-i;j++)

      printf(“ ”);

      for(j=1;j<=2*i-1;j++)

      printf(“*”);

      printf(“n”);

      }

      for(i=1;i<=3;i++)//再控制打印后3行

      {

      for(j=1;j<=i;j++)

      printf(“ ”);

      for(j=1;j<=2*(4-i)-1;j++)

      printf(“*”);

      printf(“n”);

      } }

      第四章

      一選擇題

      1.A,如果沒有給s[1]賦值,按C語言規(guī)定,s[1]下標變量中的數(shù)據(jù)是一個隨機數(shù)

      2.C,“China”字符串末尾還有一個