c語言教程習題答案,c語言教程習題答案

時間 2021-07-21 03:32:34

1樓:匿名使用者

第一章1.1 exe

1.2 c obj exe

1.3 順序 選擇 迴圈

第二章一. 選擇題

2.1 b 2.2 d 2.3 b 2.4 a 2.5 c 2.6 a 2.7 b

2.8 b 2.9 d 2.10 c 2.11 b 2.12 b 2.13 a

二. 填空題

2.14 11 12

2.15 4.2 4.2

2.16 定義 執行語句

2.17 關鍵字 使用者識別符號

2.18 int float double

2.19 float a1=1; float a2=1;

2.20 儲存單元

2.21 3.5

2.22 (a*b)/c a*b/c a/c*b

2.23 把常量10賦給變數s

2.24 位 1或0

2.25 8 127 0111111 -128 10000000

2.26 32767 -32768 1000000000000000

2.27 10 8 16

三. 上機改錯題

2.28

#include "stdio.h"; 刪除行尾的";"

main(); / * main function * / 刪除")"後的";",註釋中的*要緊靠「/」,即應為「/*」和「*/」

函式開始處遺失了一個「」

2.29

#include "stdio.h"

main /* main function */ main後遺失了「()」

第三章一. 選擇題

3.1 c 3.2 c 3.3 d 3.4 c 3.5 d 3.6 b 3.7 c 3.8 d 3.9 a 3.10 b

3.11 c 3.12 d 3.

13 d 3.14 a 3.15 c 3.

16 c 3.17 c 3.18 無答案 3.

19 c 3.20 b

二. 填空題

3.21 (1)-2002500(2)i=-200,j=2500

(3)i=-200

j=2500

3.22 12 0 0

3.23 一條語句 ;

3.24 ;

3.25 100,25.81,1.89234 100 25.81 1.89234 100 25.81 1.89234

3.26 x=127,x= 127,x= 177,x= 7f,x= 127

3.27 x=127,x=127 ,x=$127 ,x=$000127,x=d

3.28 a=513.789215,a= 513.79,a= 513.78921500,a= 513.78921500

三. 程式設計題和改錯題

3.29 修改後的程式如下:

main()

3.30

#include

main()

3.31

#include

main()

3.32

#include

main()

3.33

#include

void main()

第四章一. 選擇題

4.1 a 4.2 a 4.3 a 4.4 d 4.5 c 4.6 a 4.7 b 4.8 c 4.9 d 4.10 c

二. 填空題

4.11 非0 0

4.12 < > >= <=同級 == !=同級

4.13 ! && ||

4.15 !

4.16 a == b || a < c x > 4 || x < -4

4.17 1

4.18 x <= 0 1 > 0

4.19 3 2 2

4.20 *#

三. 程式設計題

4.21 略

4.22

#include

/* 檢查日期的合法性 */

int checkdate(int year, int month, int day)

else if(month < 0 && month > 12)

else if(day <= 0 && day > 31)

else

break;

case 2:

if((year%4 == 0 && year0 != 0) || year@0 == 0)

}else

}break;

}/* end of switch(m0)*/

}return 1;

}void main()

else if(y0 > y1)

else if(y0 == y1)

else if(m0 == m1)}}

}/* 計算實足年齡 */

years = y1 - y0;

months = m1 - m0;

days = d1 - d0;

/* 修正實足年齡天數*/

if(days < 0)

else

break;

}/* end of switch(m1) */

}/* end of if(days < 0) */

/* 修正實足年齡月數*/

if(months < 0)

/* end of if(months < 0) */

printf("出生日期: %d年%d月%d日\n", y0, m0, d0);

printf("當前日期: %d年%d月%d日\n", y1, m1, d1);

printf("實足年齡: %d年%d月%d日\n", years, months, days);

return;

}4.23

#include

void main()

else

}4.24

#include

void main()

4.25

(1)不巢狀的if語句

#include

void main()

if ( x==0 )

if ( x>0 && x<10 )

if ( x>=10 || x<=-5)

}(2)巢狀的if語句

#include

void main()

else

}if(0 == x)

if(x > 0)

else}}

(3)if_else語句

#include

void main()

else if( x==0 )

else if( x>0 && x<10 )

else

}(4)switch語句

#include

void main()

}第五章

一. 選擇題

5.1 d 5.2 c 5.3 b 5.4 c 5.5 c 5.6 b 5.7 d 5.8 a 5.9 d 5.10 d

二. 填空題

5.11 5 4 6

5.12 死迴圈

5.13 -1

5.14 11

5.15 d=1.0 k k<=n

5.16 x>=0 x

三. 程式設計題

5.17

#include

void main()

printf("sum=%d\n", sum);

}5.18

(1)#include

void main()

printf("e=%f\n",e);

}(2)

#include

void main()

printf("e=%f\n",e);

}5.19

#include

void main()}}

printf("\n");

}5.20

#include

#define n 7

void main()

for(j=0; j

for(j=0; j<2*(k-m) 1; j )

printf("\n");}}

第六章一. 選擇題

6.1 b 6.2 d 6.3 a 6.4 a 6.5 b 6.6 d 6.7 d 6.8 b 6.9 a 6.10 a 6.11 c

二. 填空題

6.12 -1

6.13 1

6.14 ctype.h

6.15 1

6.16 10a 20b 30c 40d

6.17 7.29 101.298ab

6.18 a7.29b101.298

6.19 a b c (每個字元後有三個空格)

三. 程式設計題

6.20

#include

#define n 80

void main()

}printf("\n");

}6.21

#include

#define n 80

void main()

iloop ;

}printf("%d\n",num);

}6.22

#include

#include

#define n 80

void main()

while(strcmp(str, "eof"));

printf("您輸入了%d行字元!\n",num);

}6.23

#include

#define n 80

void main()

iloop ;

}printf("您輸入了字元中有%d個小寫字母!\n",num);

}6.24

#include

void main()

for(iloop2 = 0; iloop2 < 2*iloop1 1; iloop2 )

printf("\n");}}

第七章一. 選擇題

7.1 c 7.2 c 7.3 b 7.4 c 7.5 a 7.6 d 7.7 a

二. 填空題

7.8 12

7.9 9.000000

7.10 4

7.11 n=1 s

7.12 <=y z*x

7.13 1 s*i 0 f(k)

三. 程式除錯和程式設計題

7.14

fun(int n)

else yes = 1;

}return yes;

}7.15

int mymod(int a, int b)

7.16

double fun(int n)

return sum;

}7.17

double fun(int n)

return t;

}7.18

#include

#include

double fun(double x)

void main()

2005-7-29 17:53 myhome1702

第八章一. 選擇題

8.1 a 8.2 b 8.

3 b 8.4 c 8.5 b 8.

6 b 8.7 c 8.8 d 8.

9 b 8.10 c 8.11 c 8.

12 c

二. 填空題

8.13 110

8.14 7 1

8.16 (1)s=p 3; (2)s=s-2 (3)50 (4)*(s 1) (5)2 (6)10 20 30 40 50

三. 程式設計題

8.17

void fun(double x, double y, double *sum, double *div)

8.18

void fun(double x, double y, double z, double *max, double *min)

if(*max < z)

if(*min > y)

if(*min > z)

return;

}第九章

一. 選擇題

9.1 d 9.2 a 9.3 a 9.4 c 9.5 c 9.6 a 9.7 b 9.8 d 9.9 c 9.10 c

9.11 c 9.12 d 9.13 d 9.14 a 9.15 a 9.16 a 9.17 c 9.18 c

二. 填空題

9.19 9 0

9.20 6

9.21 12

9.22 3

9.23 2721

9.24 -850,2,0

9.25 k=p k

9.26 (c=getchar()) c-'a'

三. 程式設計題

9.27

#include

#define n 81

int main()

;int iloop = 0;

char str[n];

gets(str);

while(str[iloop])

iloop ;

}for(iloop=0; iloop < 10; iloop )

return 0;

}9.28

void fun(int array, int arraysize, int start)

for(iloop = start; iloop < arraysize; iloop )

}for(iloop = 0; iloop < arraysize; iloop )

}9.29

int fun(int arry1, int arry2, int arrysize)

}return counter;

}9.30

void fun(char array, int arraysize)}}

}9.31

#include

void fun(int array, int arraysize, int inertnumber)

array[iloop] = inertnumber;

break;}}

if(iloop >= arraysize)

}else

array[iloop] = inertnumber;

break;}}

if(iloop >= arraysize)}}

int main()

;for(iloop = 0; iloop < 6; iloop )

printf("\n");

fun(a, 6, 0);

for(iloop = 0; iloop < 7; iloop )

printf("\n");

fun(a, 7, 4);

for(iloop = 0; iloop < 8; iloop )

printf("\n");

fun(a, 8, 8);

for(iloop = 0; iloop < 9; iloop )

printf("\n");

return 0;

}9.32

int fun(int number, int array)

while(midnumber);

binlen = iloop;

for(iloop2 = 0, iloop = binlen - 1; iloop2 < iloop; iloop2 , iloop--)

return binlen;

}9.33

#include

#include

#define n 15

void fun(int array, int arraysize)

iloop2 ;

}while(iloop2 < iloop);

array[iloop] = x;}}

int main()

return 0;

}第十章

一. 選擇題

10.1 c 10.2 b 10.3 c 10.4 b 10.5 c 10.6 a 10.7 c 10.8 a 10.9 c 10.10 c

二. 填空題

10.11 gfedcb

10.12 xyz

10.13 so

10.14 10

10.15 itis

10.16 strlen(str)-1 j--

10.17 3

10.18 goodgood!

三. 程式設計題

10.19

char* mygets(char *str)

str[iloop] = '\0';

return str;

}char * myputs(char *str)

putchar('\n');

return str;

}10.20

#include

#include

int fun(char *str)

}return result;

}int main()

10.21

char fun(char *str, int pos)

ch = str[pos];

for(iloop = pos; iloop < len - 1; iloop )

str[len-1] = '\0';

return ch;

}2005-7-29 17:54 myhome1702

第十一章

一. 選擇題

11.1 d 11.2 b 11.3 a 11.4 c

二. 填空題

11.5 ijklefghabcd

11.6 7

11.7 8

11.8 *(s j) i 1 i

11.9 17

11.10 (*fun)() (*fun)(a i*h)/h mypoly

三. 程式設計題

11.11

#include

#include

#define n 81

int main(int argc, char **argv)

;char outstr[n] = ;

if(argc < 2)

else

printf("請輸入一個字串:");

gets(str);

if(sig == '-')

strcpy(outstr, str pos);

}else if(sig == ' ')

outstr[pos] = '\0';

}printf("處理後的字串為:");

printf("%s\n", outstr);

return 0;

}11.12

#include

#include

void movebin(char *bin)

return;

}void fun(int n, char *bin)

if(n == 1)

movebin(bin);

bin[0] = (n%2) '0';

n /= 2;

fun(n, bin);

return;

}int main()

;fun(a, bin);

printf("%s\n", bin);

return 0;

}11.13

#include

long fun(int n)

else

}int main()

11.14

#include

int fun(int n)

else

}int main()

第十二章

一. 選擇題

12.1 b 12.2 b 12.3 a 12.4 c 12.5 d 12.6 b 12.7 a 12.8 a

二. 填空題

12.9 2,5,1,2,3,-2

12.10 2468

第十三章

一. 選擇題

13.1 a 13.2 c 13.3 b 13.4 c 13.5 d 13.6 d 13.7 d

二. 填空題

13.8 ar=9 ar=9 ar=11

13.9 int* s *b

三. 程式設計題

13.10

#define myalpha(c) ((c>='a' && c<='z') || (c>='a' && c<='z')) ? 1 : 0

13.11

#define swap(t,x,y)

13.12

#include

#include

int main()}}

printf("%d %d %d\n", *p, *(p 1), *(p 2));

free(p);

p = null;

return 0;

}字太多了 粘不完

c語言教材哪本好,初學c語言用什麼教材好,求推薦

徐光豬 c程式設計語言 是一本很好的入門書,它由兩個c語言的設計者編寫的,對每條程式都詳細講解,對你短時間瞭解c語言有很大幫助,而且還有一些思想的學習,不過他的缺點就是不夠系統,知識比較散。c程式設計 是一本由譚浩強編寫的,每個初學c的人幾乎都用這本教程 我也是 我覺得這本是知識系統,但舉例太簡單,...

c語言圖形程式設計的教程書,介紹幾本c語言圖形程式設計入門書籍

1 圖形程式設計都是用的純c函式庫,比如windows的gdi,還有directx,以及開源的opengl。這些都是純c庫,也就是說會c語言就能開發圖形介面和遊戲了。c 當然也可以呼叫這些函式庫,但不是必要的。2 學gdi的話最好的書是 windows程式設計.chm 這個文件,這東西網上到處都有。...

C語言高手求教,程式理解

我學的是c 你的程式我看不懂,不過 fun 函式基本能懂 照著你的程式給你翻譯一下 返回值為無符號的 fun函式 形參為 無符號定義了幾個無符號的變數 把m的值賦值給t while條件為 t 10 滿足時 迴圈 if t可以除以10,即t 10 對t除以10進行取餘 即t的個位數 賦值給p用s加上p...