久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

新編C語言程序設計教程練習一參考答案

時間:2019-05-12 19:40:28下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《新編C語言程序設計教程練習一參考答案》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《新編C語言程序設計教程練習一參考答案》。

第一篇:新編C語言程序設計教程練習一參考答案

練習一 1.1寫出最簡單的C程序。答:

void main(){

} 1.2用一條C語句完成下述要求。

a)把變量x,y,z和result定義為int類型。b)提示用戶輸入三個整數。

c)從鍵盤讀取三個整數并把它們存儲在變量x,y,z中。d)計算變量x,y和z所存儲的整數的和,并把計算結果賦給變量result.e)打印出“The sum is ”并緊接著打印出變量result的值。

答:

a)int x, y, z, result;b)printf(〞請輸入三個整數n〞);c)scanf(〞%d%d%d〞, &x, &y, &z);d)result = x + y + z;e)printf(〞The sum is %d〞, result);1.3用練習1.2中的語句寫出計算三個整數和的完整的程序。答:

void main(){ int x, y, z, result;printf(〞請輸入三個整數n〞);scanf(〞%d%d%d〞, &x, &y, &z);result = x + y + z;printf(〞The sum is %d〞, result);} 1.4指出并改正下列語句中的錯誤(每條語句可能不止一個錯誤)。

a)scanf(〞%d,value〞);b)printf(〞The sum of %d and %d is %d〞n,x,y);c)*/Program to determine the largest of three in integers/* d)printf(〞The value you entered is %d〞n,&value);e)int return=10;答:

a)scanf(〞%d〞, &value);b)printf(〞The sum of %d and %d is %dn〞, x, y, x + y);c)/* Program to determine the largest of three in integers*/ d)printf(〞The value you entered is %dn〞, value);e)int ret=10;//關鍵字不能作變量名

1.5 在VC6.0中編譯運行程序1-1,1-4和練習1.3所寫的程序。

1.6 下面的標識合法嗎?

aBc,-245, _245, +3a, 4E2, _ _, 2n, n2, account_total 答:

合法:aBc, _245, _ _, n2, account_total 1.7 標識符的第一個字符為何不能是數字? 答:

如果可以為數字,則32是變量名還是整數呢?如 int 32=56;則printf(〞%d〞, 32);的輸出為?

1.8 C語言中標識符區分大小寫嗎?即n1和N1是同一個標識符嗎?利用下面的程序驗證。

# include void main(){

int n1=3;

printf(〞n1=%d〞,N1);} 答: 程序編譯時出錯。如果在C語言中n1和N1被認為是同一個標識符,則不會出現這個錯誤。

1.9寫出輸出結果或輸出語句(x=2)。

a)printf(〞x=〞);b)printf(〞x=%d%d〞,x,x);c)/* printf(〞x+y=%d〞,x+y);*/ d)printf(〞% and %%〞);e)printf(〞Welcome to C!and x=%z〞);f)輸出信息100%.g)把信息“This is a c program.”打印在兩行上,第一行最后一個字母是c。答:

f)printf(〞100%%〞);g)printf(〞This is a cn program.〞);1.10 編寫一個C程序,輸出以下信息。

* * * * * * * * * * * * * * * * * * * * * * Very Good!* * * * * * * * * * * * * * * * * * * * * * 答:

#include void main(){ printf(〞* * * * * * * * * * * n〞);printf(〞* * * * * * * * * * * n〞);printf(〞 Very Good!n〞);printf(〞* * * * * * * * * * * n〞);printf(〞* * * * * * * * * * * n〞);}

1.11 分析下面程序運行結果,運行順序。

答:

#include void print(){ printf(〞* * * * * * * * * * * n〞);} void main(){ print();print();printf(〞 Very Good!n〞);print();print();} 本程序中的print函數與程序1-4中的sum函數有何不同? sum函數需要輸入兩個整數,它會輸出一個整數,因此在使用時需用一個變量保存函數的返回值,如result = sum(2, 3)。

print函數沒有輸入和輸出值,因此在使用時直接調用就好,如print()。

1.12找到工程目錄,查看VC6.0為一個工程所生成的文件。找到C語言源文件(擴展名為.c的文件),把它拷貝到某個文件夾中。打開VC6.0,單擊文件(File)→打開(Open),找到并打開拷貝到其它文件夾中的源文件。單擊組建(Build)→執行(Execute)命令(或Ctrl+F5),程序能被編譯嗎?

答: 能被編譯。

1.13 在VC6.0中編譯C語言程序時可以從新建一個C語言源文件開始嗎?請驗證。

答:

可以的,不過在編譯時會提示建工程。

1.14 C語言源文件能用記事本打開嗎?

答: 可以的。

1.15整理下面程序的布局。

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

C語言程序設計教程課后習題答案

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

1、自然語言

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

1、C語言程序由函數構成;

2、“/*”與“*/”之間的內容構成C語言程序的注釋部分;

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

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

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

1、具有結構語言的特點,程序之間很容易實現段的共享;

2、主要結構成分為函數,函數可以在程序中被定義完成獨立的任務,獨立地編譯代碼,以實現程序的模塊化;

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

4、數據類型豐富;

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

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

7、生成的目標代碼質量,程序執行效率高,同時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:調用主菜單 F4:程序運行到光標所在行(用于調試程序)Ctrl+F9:編譯并鏈接成可執行文件 Alt+F5:將窗口切換到 DOS 下,查看程序運行結果。說明下列Turbo C方式下輸入并運行下列程序,記錄下運行結果。

①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);} 答

運行結果:

******************** welcome you very good ******************** 運行結果:

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

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

1、User screen

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

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

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

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

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

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

①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);}

運行結果: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);}

運行結果:a=3,b='A'“end”

aabcc abc 3 寫出下列賦值的結果,表格中寫了數值的是要將它賦給其他類型的變量,將所有的空格填上賦值后的數據(實數保留到小數點后兩位)。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

★寫出程序運行結果。

①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之間應為逗號,教材有誤 答

運行結果: 9,11,9,10 運行結果: 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);}

運行結果: 11,19,30,1

★寫出下面表達式的值(設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 下列每組表達式中,被執行后結果完全等價的是哪些(設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結果為一整數,結果已經取整,精度可能受到影響,之后強制float后才為浮點型,后面的是先將a轉換為float后再與b相除,其值保證了精度,所以不同。

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

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

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

max=a>(b>c?b:c)?a:(b>c?b:c);9 ★若x為int型變量,則執行以下語句后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的結果為()類型。A.float B.char C.int D.double 答 D.第三章 順序結構程序設計 -習題答案 變量k為float類型,調用函數scanf(“%d”,&k),不能使變量k得到正確數值的原因是___。

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

|1234 1234 |

分析如下:

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

②%-3d為左對齊輸出變量,在輸出變量時,如是變量實際位數小于3,則在右端補空格,否則按實際輸出。★設有“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);”。本條解釋不必須掌握。★以下程序輸出的結果是___。main(){ int a1=1,a2=0,a3=2;printf(“%d,%d,%dn”,a1,a1+a2+a3,a3-a1);} 答 1,3,1 5 printf函數中用到格式符%5s,其中5表示輸出字符占用5列。如果字符串長度大于5,則按___輸出;如果字符串長度小于5,則按___輸出。

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

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

設int a=10,b=5;以下為輸出語句及結果: ①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 ★輸入一個非負數,計算以這個數為半徑的圓周長和面積。答

#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=%ftarea=%fn”,l,area);} 9 輸入任意一個3位數,將其各位數字反序輸出(例如輸入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語言程序設計實踐教程》答案-完整版

4.2練習題

一、選擇題

1. D

2. B

3. A

4. B和D

5. C

6. A

7. B

二、填空題

1. //或/**/

2. 主或main

3. 函數首部和函數體

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

三、讀程序,寫結果

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’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

三、讀程序,寫結果

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

三、讀程序,寫結果

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

三、讀程序,寫結果

1.2002,shangxian

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

第四篇:《C語言程序設計教程》課后題答案

《C語言程序設計教程》課后題答案

第一章

一選擇題

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

3.main或主 4.編譯 5.編譯 6..obj 7.庫函數

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在內存中是以補碼(設兩個字節)形式存儲的 3.A,C語言有32個關鍵字(參見課本第18頁),且C語言標識符是區分大小寫字母的 4.A,略

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

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

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

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

11.A,scanf函數中不允許出現%8.4,%6.2和%8這樣的格式符號

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

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

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

1.int

float

double(略)

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

3.a=98,b=765.000000,c=4321.000000,scanf函數中的格式符號%2d%3f%4f,表示將鍵盤輸入的數據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函數中不同的格式符號,即%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函數雙引號中兩個格式符號%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,可以用各種常量的形式體現出來。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元發工資,人名幣各票面的張數為:n”,m);

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

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

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

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

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

printf(“1元的張數:%dn”,m1);} 程序分析:人民幣的面值分別為100元,50元,20元,10元,5元和1元,工資4367元除以100后得到的商就為100元張數,余數再除以50,得到的商為50元的張數,余數再除20,??,以此類推就會得出人民幣各面值相應的張數。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(“三個電阻并聯后的總電阻為%fn”,r);} 程序分析:首先將計算并聯電阻值的公式變換一下;再就是考慮要保留小數位,故變量類型設置為實型,注意格式符號為%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逆置各位數后的值為%dn”,x,y);} 程序分析:1234除以10的余數就是4,商再除以10的余數就是3,1234除以100再除以10取余就是2,1234除以1000就是1。也可以用其他的表達式求出各位數值,例如輸入數據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(“請輸入三個數字字符:”);

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

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

9.不能得到指定的輸出結果,參考代碼如下: 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函數第二類形參是地址列表,所以語句改為scanf(“%d,%d,%d”,&a,&b,&c);而這個語句對應的鍵盤輸入形式為2,3,4。為了滿足題目要求,scanf語句改為scanf(“%d%d%d”,&a,&b,&c)。另外,printf函數雙引號只能出現一對,且雙引號中需要在相應的位置上添加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.死循環 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(“不能構成三角形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語言規定,s[1]下標變量中的數據是一個隨機數

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

主站蜘蛛池模板: 亚洲一区二区三区乱码在线欧洲| 久久久国产一区二区三区四区小说| 日本最新免费二区三区| 精品国品一二三产品区别在线观看| 久久精品国产精品亚洲| 亚洲色欲或者高潮影院| 狂野欧美激情性xxxx在线观看| 少妇被爽到高潮在线观看| 黄色视频免费在线观看| 国产一区二区三区av在线无码观看| 无码aⅴ精品一区二区三区| 文中字幕一区二区三区视频播放| 欧美黑人又粗又大xxxx| 骚片av蜜桃精品一区| 2020国产精品午夜福利在线观看| 国产在线aaa片一区二区99| 欧美三级在线播放线观看| 100国产精品人妻无码| 国产成人综合久久久久久| 国产露脸150部国语对白| 亚韩无码一区二区在线视频| 精品熟女少妇av久久免费软件| 97人人超碰国产精品最新o| 久久久久人妻精品一区蜜桃| 亚洲 日韩 国产 制服 在线| 少妇无码av无码一区| 国产奶头好大揉着好爽视频| 国产午夜成人精品视频app| 无套内谢孕妇毛片免费看看| 国产精品永久久久久久久久久| 国产超碰人人爽人人做| 黑人上司好猛我好爽中文字幕| 久久亚洲日韩av一区二区三区| 久久视频在线视频| 成年免费a级毛片免费看无码| 欧美综合自拍亚洲图久青草| 欧美人与动欧交视频| 国产成人久久a免费观看| 一区二区三区高清视频一| 国产在线乱码一区二三区| 日韩精品人妻2022无码中文字幕|