版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、C語(yǔ)言程序設(shè)計(jì)習(xí)題解答沈國(guó)榮 隋雪莉 閔芳目錄第1章 C語(yǔ)言程序設(shè)計(jì)概述2第2章 數(shù)據(jù)類型及其運(yùn)算3第3章 語(yǔ)句與輸入輸出4第4章 選擇結(jié)構(gòu)程序設(shè)計(jì)6第5章 循環(huán)結(jié)構(gòu)程序設(shè)計(jì)9第6章 數(shù)組12第7章 函數(shù)15第8章 編譯預(yù)處理18第9章 指針19第10章 結(jié)構(gòu)體與共用體21第11章 位運(yùn)算25第12章 文件操作26第1章 C語(yǔ)言程序設(shè)計(jì)概述一、選擇題12345678910CBACCBDBDA二、填空題1.函數(shù)、main()函數(shù)2./*、*/3.C、.OBJ、.EXE4.順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)三、編程題1.【參考代碼】#includeint main( )printf( (學(xué)校名稱)n )
2、 ;printf( (姓名)n ) ;return 0 ;2.【參考代碼】#includeint main( )printf( (學(xué)校名稱)n(姓名)n ) ;return 0 ;第2章 數(shù)據(jù)類型及其運(yùn)算一、選擇題12345678910CCCABADDC、BB11121314151617181920CADDDCDC注:第5題B選項(xiàng)為: 017 t二、填空題1.字母、數(shù)字、下劃線2.1、4、4、83.-6.97.68.-609.y%2=110.1、0、1三、程序閱讀題1.b2.03.04.10,25.9,10,9,106.3,1,0,07.3,20,30,1第3章 語(yǔ)句與輸入
3、輸出一、選擇題12345678910BCCCCBBBDA二、填空題1.123.472.D3.回車4.10,2三、程序閱讀題1.2612.203.201,104.y=4630y=46305.*3.140000,3.142*6.c:dec=120,oct=170,hex=78,ASCII=x7.x=1 y=2 *sum*=310 squared is : 1008.2 48 20.2 20.29.x+y+z=4810.55, ,A四、編程題1.【參考代碼】#includeint main( )char ch;printf(請(qǐng)輸入一個(gè)字符:n);scanf(%c,&ch);printf(%c的ASC
4、II碼為:%dn, ch,ch);return 0 ;2.【參考代碼】#include#define PI 3.1416int main( )double r, h;double cl,cs,cv;printf(請(qǐng)輸入圓的半徑:);scanf(%lf, &r);printf(請(qǐng)輸入圓柱高:);scanf(%lf, &h);cl=2*PI*r;cs=PI*r*r;cv=PI*r*r*h;printf(圓的周長(zhǎng)為:%.4lfn, cl);printf(圓的面積為:%.4lfn, cs);printf(圓柱的體積為:%.4lfn, cv);return 0 ;3.【參考代碼】#includeint
5、main( ) int splitInt,one,ten,hundred;printf(輸入要處理的整數(shù):); scanf(%d,&splitInt); hundred = splitInt/100;ten = splitInt%100/10;one = splitInt%10;printf(個(gè)位:%d,十位:%d,百位:%dn,one,ten,hundred);return 0 ;第4章 選擇結(jié)構(gòu)程序設(shè)計(jì)一、選擇題123456DCCBBC二、程序閱讀題1.102.2,2,23.64.97,b5.c=-16.88887.20,08.2,19.1,12,22,1-2,210.a=1,b=3三、程
6、序完善題1.ab、cx四、編程題1.【參考代碼】#includeint main( )int a, b, c,d,min; printf(輸入4個(gè)整數(shù):); scanf(%d%d%d%d,&a,&b,&c,&d);if(a b) min = a; else min = b; if(c min) min=c; if(dmin) min=d; printf(%dn,min); return 0 ;2.【參考代碼】#includeint main( ) int num,a,b,c,d; printf(請(qǐng)輸入一個(gè)四位整數(shù):); scanf(%d,&num);a=num/1000;b=num%1000/
7、100;c=num%100/10;d=num%10; printf(各位數(shù)字之和為:%dn,a+b+c+d);return 0 ;3.【參考代碼】#includeint main( )int x; printf(請(qǐng)輸入x:); scanf(%d,&x);printf(y的值為:);if(x0)printf(%dn,x);else if(x50)printf(%dn,3*x-2);else if(x100)printf(%dn,4*x+1);elseprintf(%dn,5*x);return 0 ;4.【參考代碼】#includeint main( )int dj;float zl,je,yf
8、k;printf(請(qǐng)輸入等級(jí)(14): );scanf(%d,&dj);if (dj4|dj1)printf(無(wú)此等級(jí)的蘋果!n);return 0;printf(請(qǐng)輸入重量(公斤): );scanf(%f,&zl);printf(n);switch (dj) case 1 : je=5.5*zl; break;case 2 : je=4.3*zl; break;case 3 : je=3.0*zl; break;case 4 : je=2.5*zl; break;printf(您選擇蘋果級(jí)別: %d 級(jí)n,dj);printf(您購(gòu)買蘋果重量: %.2f公斤n,zl);printf(您應(yīng)付金
9、額為: %.2f元n,je);printf(n);printf(顧客所付金額: );scanf(%f,&yfk);if (yfk Z & ch z ) ch - 262.k k/10 continue 3.i + t * 10 s = s + t4.fabs( t ) = 1e-6 f = -f 5.i10 j%3 !=0四、編程題1.【參考代碼】#includeint main( )int n , i , j , k ;printf( Output:n ) ;for(n = 100 ; n 1000 ; n+ )i = n % 10 ; /* 個(gè)位 */j = ( n / 10 ) % 10
10、 ; /* 十位 */k = n / 100 ; /* 百位 */if ( n = i * i * i + j * j * j + k * k * k )printf( %dn , n ) ;return 0 ;2. 【參考代碼】#includeint main ( ) int i , m , n , t , p , k ; printf( Please input: ) ;scanf ( %d,%d , &m , &n ) ;if( m n )t = n ;n = m ;m = t ; p = m * n ;while ( n != 0 ) /* 余數(shù)不為0,繼續(xù)相除,直到余數(shù)為0 */i
11、= m % n ;m = n ;n = i ; k = p / m ;printf( %d,%dn , m , k );return 0 ;3. 【參考代碼】#includeint main( )int i , n , t , sum ;t = 1 ;sum = 0 ;printf( Please input: n = ) ;scanf( %d , &n ) ;for( i = 1 ; i = n ; i+ ) t = t * i ;sum = sum + t ;printf( 1!+2!+%d!= %dn , n , sum ) ;return 0 ;4. 【參考代碼】#includeint
12、 main( ) int i , m ;double sum = 0 , k = 1 ;printf( Please input : m= ) ;scanf( %d , &m ) ;for( i = 1 ; i = m ; i+ )sum = sum + k / i ;k = -k ;printf( sum=%4.2fn , sum ) ;return 0 ;第6章 數(shù)組一、選擇題12345678910111213141516DDDBCCBCCDDBDDCD二、程序閱讀題1 82 43 0,24 125 t*M6 mo7 fwo三、程序完善題1 k = i j = i ak = max aj
13、= max2 sum += scorei scoreiavg3 si = si + aij printf( n ) ;4 j = strlen( str ) 1 strj = k5 ( c = getchar( ) ) != # numc-A += 1 四、編程題1. 【參考代碼】#include#define N 5int main( )int aN , i , j , r , temp ;printf( Please input %d numbersn , N ) ;for( i = 0 ; i N ; i+ )scanf( %d , &ai ) ;for( i = 0 ; i N - 1
14、 ; i+ )r = i ;for( j = i + 1 ; j N ; j+ )if( aj ar )r = j ;if( r != i )temp = ar ;ar = ai ;ai = temp ;printf( The array after sort:n ) ;for( i = 0 ; i N ; i+ )printf( %5d , ai ) ;printf( n ) ;return 0 ;2. 【參考代碼】#includeint main( )int a10 = 1 , 2 , 3 , 6 , 7 , 8 , 9 , 10 ;int x , j , k = 0 ;printf( P
15、lease input :x= ) ;scanf( %d , &x) ; if( x a7 )a8 = x ;elsefor( j = 0 ; j 8 ; j+ )if( x j ; k- )ak = ak - 1 ;aj = x ;for( j = 0 ; j 9 ; j+ )printf( %5d , aj ) ;printf( n ) ;return 0 ;3. 【參考代碼】#includeint main( )int a55 = 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21, 22,23,24 ;int i , j ,s
16、um = 0 ;for ( i = 0 ; i 5 ; i+ )for ( j = 0 ; j 5 ; j+)printf( %4d , aij ) ;printf( n ) ;for( i =0 ;i 5 ; i+ )sum += aii ;printf( sum=%4dn , sum ) ;return 0 ;4. 【參考代碼】#includeint main( )char s1100 , s230 ;int i , j ;printf( Please input s1: ) ;gets( s1 ) ;printf( Please input s2: ) ;gets( s2 ) ;for(
17、 i = 0 ; s1i != 0 ; i+ ) ;for( j = 0 ; s2j != 0 ; j+ , i+ )s1i = s2j ;s1i = 0 ;printf( Outputns1: ) ;puts( s1 ) ;return 0 ;5. 【參考代碼】#includeint main( )char s1100 ;int i ;printf( Please input s1: ) ;gets( s1 ) ;for( i = 0 ; s1i != 0 ; i+ ) ;printf( The length of s1 is %dn ,i ) ;return 0 ;第7章 函數(shù)一、選擇題1
18、23456789101112131415BDDABBCBDDAADDA二、程序閱讀題1 max is 22 a=1,b=23 1 114 a=11,b=12,c=25 66 7 8 97 8 178 0 1 2 0 1 2 三、程序完善題1 float area ( float r ) return s2 z = fun( x , y ) z = z * x 3 count =fun( score ) count+四、編程題1. 【參考代碼】#includeint main( ) void f(int n) ;int n ;printf( Please input: n= ) ;scanf(
19、%d , &n ) ;if( n = 0)printf( Wrong number!n ) ;elsef( n ) ;return 0 ;void f(int n)if( n % 2 = 1 )printf( %d is a odd number.n , n ) ;elseprintf( %d is a even number.n , n ) ;2. 【參考代碼】#include #include int main( )void f( int m ) ;int m ;printf( Please input: m= ) ; scanf( %d , &m ) ;f( m ) ;return 0
20、;void f( int m )int i , k ;k = sqrt( m );for(i = 2 ; i = k + 1 ) printf( %d is a Prime Number.n , m ) ; else printf( %d is not a Prime Number.n , m ) ;3. 【參考代碼】#includeint gys( int m , int n )int r ;r = m % n ;while( r != 0 )m = n ;n = r ;r = m % n ;return n ;int gbs( int m , int n , int r )return m
21、 * n / r ;int main( )int m , n , t ;printf( Please input(m,n): ) ;scanf( %d%d , &m , &n ) ;if( m n )t = m ;m = n ;n = t ;t = gys( m , n ) ;printf( gys=%dn , t ) ;t = gbs( m , n , t ) ;printf( gbs=%dn , t ) ;return 0 ;4. 【參考代碼】#includeint main( )void mystrcat( char s1100 , char s230 ) ;char s1100 , s
22、230 ;printf( Please input s1: ) ;gets( s1 ) ;printf( Please input s2: ) ;gets( s2 ) ;mystrcat( s1 , s2 ) ;printf( Outputns1: ) ;puts( s1 ) ;return 0 ;void mystrcat( char s1100 , char s230 )int i , j ;for( i = 0 ; s1i != 0 ; i+ ) ;for( j = 0 ; s2j != 0 ; j+ , i+ )s1i = s2j ;s1i = 0 ;第8章 編譯預(yù)處理一、選擇題123
23、456ADDABA二、程序閱讀題1 6,182 153 5第9章 指針一、選擇題123456789101112DBBCDCCCDBAC1314151617CDDAC二、填空題1.地址 , NULL(或0)2 .char a, *p; , scanf(%c, &a); , p=&a;3.*m4.for( k=0; k10; k+ )5.*(p+i) , pi , *(x+i)6.stri或*( str + i ) , i三、程序閱讀題1.gae2. bcdABCD3. 7, 8, 84. 8 45. 3 14 26. efgh7. w,one8. 7四、程序完善題1.ai 或 *( a + i
24、)2.*p!=0 *p-0 3.p1 p2-x4.max(int a , int b ); p = max四、編程題1.【參考代碼】#includevoid sort( int *a , int *b , int *c );int main()int m , n , t ;printf( Please input(m n t): ) ;scanf( %d%d%d , &m , &n , &t ) ;sort( &m , &n , &t ) ;printf( The result is :%dt%dt%dn , m , n , t ) ;return 0 ;void sort( int *a ,
25、 int *b , int *c )int temp ;if( *a *b ) temp = *a ; *a = *b ; *b = temp ; if( *a *c ) temp = *a ; *a = *c ; *c = temp ; if( *b *c ) temp = *b ; *b = *c ; *c = temp ; 2.【參考代碼】程序1:#include int strcompare( char *str1 , char *str2 );int main( )int m ; char s120 , s220 , *p1 , *p2 ; printf( Please input(
26、string1): ) ; scanf( %s , s1 ) ;printf( Please input(string2): ) ; scanf( %s , s2 ) ; m = strcompare ( s1 , s2 ) ; printf( The result of strcompare is: %dn , m ) ;return 0 ;int strcompare( char *str1 , char *str2 )int i = 0 ; while( ( *( str1 + i ) = *( str2 + i ) ) &( *( str1 + i ) != 0 ) )i+ ; ret
27、urn( *( str1 + i ) - *( str2 + i ) ) ;程序2:#include int strcompare( char *str1 , char *str2 );int main( )int m ; char s120 , s220 , *p1 , *p2 ; printf( Please input(string1): ) ; scanf( %s , s1 ) ;printf( Please input(string2): ) ; scanf( %s , s2 ) ; p1 = s1 ;p2 = s2 ; m = strcompare ( p1 , p2 ) ; pr
28、intf( The result of strcompare is: %dn , m ) ;return 0 ;int strcompare( char *str1 , char *str2 )int i = 0 ; while( ( *( str1 + i ) = *( str2 + i ) ) &( *( str1 + i ) != 0 ) )i+ ; return( *( str1 + i ) - *( str2 + i ) ) ;程序3:#include int strcompare( char str1 , char str2 );int main( )int m ; char s1
29、20 , s220 , *p1 , *p2 ; printf( Please input(string1): ) ; scanf( %s , s1 ) ;printf( Please input(string2): ) ; scanf( %s , s2 ) ; p1 = s1 ;p2 = s2 ; m = strcompare ( p1 , p2 ) ; printf( The result of strcompare is: %dn , m ) ;return 0 ;int strcompare( char *str1 , char *str2 )int i = 0 ; while( ( s
30、tr1i = str2i ) &( str1i != 0 ) )i+ ; return( str1i- str2i ) ;第10章 結(jié)構(gòu)體與共用體一、選擇題1234567891011CBACCDDDCBD二、填空題1.162 .p-next=head-next head-next=p3.p-next三、程序閱讀題1.51,60,212. 163. 1001,ChangRong,1098.0四、程序完善題1.sizeof( struct ps ) 或 sizeof( bt )2.p=p-next 3.personi.sex五、編程題1.【參考代碼】#define N 3#include stru
31、ct studentchar num6 ;char name8 ;int score2 ;float ave ; ;void input( struct student stuN ) ;void average( struct student stuN ) ;int max( struct student stuN ) ;int main( ) int i , j ;struct student stuN ;input( stu ) ;average( stu ) ;printf( NotNametScore1tScore2tAveragen ) ;for( i = 0 ; i N ; i+
32、)printf( %st%st , stui.num , ) ;for( j = 0 ; j 2 ; j+ )printf( %dt , stui.scorej ) ;printf( %8.2fn , stui.ave ) ;i = max( stu ) ;printf( nThe max is:n ) ;printf( NotNametScore1tScore2tAveragen ) ;printf( %st%st , stui.num , ) ;for( j = 0 ; j 2 ; j+ )printf( %dt , stui.scorej ) ;p
33、rintf( %5.2fn , stui.ave ) ;return 0;void input( struct student stuN)int i , j ;for(i=0;iN;i+)printf(nPlease input No%d student:n,i+1);printf(No:);scanf(%s,stui.num);printf(Name:);scanf(%s,);for(j=0;j2;j+)printf(score %d:,j+1);scanf(%d,&stui.scorej);void average( struct student stuN)int i ,
34、 j , sum ;for(i=0;iN;i+)for(j=0 , stui.ave = 0 ;j2;j+) stui.ave += stui.scorej;stui.ave = stui.ave / 2 ;int max( struct student stuN)int i , max , index;max = stu0.ave ;index = 0 ;for( i = 1 ; i N ; i+ )if( max stui.ave )max = stui.ave ;index = i ;return index;2.【參考代碼】#include#includestruct node sho
35、rt int data ;struct node *next ; ;typedef struct node NODE ;struct node *CreatLink( ) ;void PrintLink( NODE *head ) ;int max( NODE *head );int main( )NODE *head ;int max_value ;head = CreatLink( ) ;PrintLink( head ) ;max_value = max( head ) ;printf( The max is:%dn , max_value ) ;return 0 ;struct nod
36、e *CreatLink( ) NODE *head , *p , *q ;short int num ;head = ( NODE * )malloc( sizeof( NODE ) ) ;head-next = NULL ;p = head ;printf( Please input( end of -1)!:n ) ;scanf( %d , &num ) ;while( num != -1 )q = ( NODE *)malloc( sizeof( NODE ) ) ; q-data = num ;p-next = q ;p = q ;scanf( %d , &num ) ; p-nex
37、t = NULL ;return head ;void PrintLink( NODE *head )NODE *p;p = head-next ;printf( The data is:n ) ;while( p != NULL )printf( %4d , p-data ) ; p = p-next ;printf( n ) ;int max( NODE *head )NODE *p;short int max = -32768;p = head-next ;while( p != NULL )if( max data )max = p-data ; p = p-next ;return
38、max ;第11章 位運(yùn)算一、選擇題1234DBCA二、填空題1.0000 11112 .x | ff00 3.4 3三、程序閱讀題1.02. 11 223. 0四、編程題1.【參考代碼】#includeint main()short int data , low ,high ;printf( Please input( short int): ) ;scanf( %d , &data ) ;low = data & 0x00ff ; /* 0x00ff表示低字節(jié)全1 */high = data & 0xff00 ; /* 0xff00表示高字節(jié)全1 */ printf( data:0x%x,
39、the value of low byte is:0x%xn , data , high ) ;printf( data:0x%x,the value of high byte is:0x%xn , data , low ) ;return 0 ;2.【參考代碼】#include int main( )short int data , result ;printf( Please intput(short int): ) ;scanf( %d , &data ) ;result = data 0x000f ; /* 0x000f表示低4位全1,高12位全0 */ printf( The dat
40、a is 0x%x nThe result is :0x%xn , data,result ) ;return 0 ;第12章 文件操作一、選擇題123456789101112DB、CCBBABCDBCC131415CDC二、填空題1.二進(jìn)制 ASCII(文本)2 .FILE *fp # include 3.n 1 buf的首地址4. 15. 用以獲得文件讀寫位置標(biāo)記指針的位置,函數(shù)返回值為當(dāng)前文件讀寫位置標(biāo)記指針相對(duì)于文件開(kāi)頭的字節(jié)數(shù) 6. 使文件讀寫位置標(biāo)記指針重新返回文件的開(kāi)頭 三、程序閱讀題1.1 22. end3. 34. hello,四、程序完善題1.! feof (fp) fge
41、tc (fp) 2.fopen (“num.dat”,”r”) fp,”%d”,&temp z+ 3.( ch=getchar() ) ch , fp 五、編程題1.【參考代碼】#include#include#includeint main( ) FILE *fp ;char str100 , filename10 ;int i = 0 ;if( ( fp = fopen( upper.txt , w+ ) ) = NULL )printf( Cannot open file!n ) ;exit( 0 ) ;printf( Please input(string):n ) ;gets( st
42、r ) ;while( stri != ! )if( stri = a & stri = z )stri = stri - 32 ;fputc( stri , fp ) ;i+ ;rewind( fp ) ;fgets( str , strlen( str ) + 1 , fp ) ;printf( nThe result is :n ) ;printf( %sn , str ) ;fclose( fp ) ;return 0 ;2.【參考代碼】#include#include#define N 5struct studentchar num10 ; char name8 ; int score3 ; float ave
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣告牌建設(shè)施工合同格式
- 2024企業(yè)租車服務(wù)合同
- 2024年學(xué)生貸款償還協(xié)議
- 工程項(xiàng)目合作變更協(xié)議書(shū)
- 幼兒園勞動(dòng)合同樣本
- 建筑領(lǐng)域簡(jiǎn)易雇傭合同
- 勞動(dòng)協(xié)商協(xié)議范本
- 2024打樁工程勞務(wù)合同范本
- 外匯借款合同書(shū)撰寫指南
- 合作經(jīng)營(yíng)協(xié)議書(shū)范本編寫技巧
- 冠脈搭橋技術(shù)課件
- 客戶個(gè)性化課件
- 《放飛夢(mèng)想追求卓越》主題班會(huì)班主任反思
- 二年級(jí)音樂(lè)節(jié)奏訓(xùn)練課-動(dòng)起來(lái)教學(xué)教案
- 《中國(guó)特色社會(huì)主義政治經(jīng)濟(jì)學(xué)(第二版)》第三章社會(huì)主義所有制制度
- 人衛(wèi)第七版醫(yī)學(xué)統(tǒng)計(jì)學(xué)課后答案及解析-李康、賀佳主編
- 三年級(jí)上冊(cè)美術(shù)課件-第7課 黃色和藍(lán)色的畫(huà) 人美版 (共21張PPT)
- 五年級(jí)上冊(cè)英語(yǔ)課件-Unit5 What do they do?(第一課時(shí))|譯林版(三起) (共20張PPT)
- 小學(xué)五年級(jí)整本書(shū)閱讀方案
- 廣西建筑施工企業(yè)三類人員-公共知識(shí)考試題庫(kù)(含答案)
- imedical7.1住院醫(yī)生工作站使用說(shuō)明書(shū)
評(píng)論
0/150
提交評(píng)論