




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、習(xí)題一TC環(huán)境下,整型數(shù)占 2 個(gè)字節(jié)。整數(shù)45的機(jī)內(nèi)表示:0000 0000 0010 1101 -45的二進(jìn)制表示: 1000 0000 0010 1101 -45的補(bǔ)碼表示: 1111 1111 1101 0011-45的補(bǔ)碼對(duì)應(yīng)的無符號(hào)十進(jìn)制整數(shù)為( 65491 )。 -45的補(bǔ)碼對(duì)應(yīng)的無符號(hào)八進(jìn)制整數(shù)為:( 177723 )。-45的補(bǔ)碼對(duì)應(yīng)的無符號(hào)十六進(jìn)制整數(shù)為:( ffd3 )。2、整數(shù)200對(duì)應(yīng)的二進(jìn)制數(shù)為:(1100 1000 )、八進(jìn)制數(shù)為:( 310 )、十六進(jìn)制數(shù)為:( c8 )。3、整數(shù)50000對(duì)應(yīng)的二進(jìn)制數(shù)為:( 1100 0011 0101 0000)、八進(jìn)制數(shù)
2、為( 141520 )、十六進(jìn)制數(shù)為:( c350 )。4、在TC環(huán)境下,長(zhǎng)整型數(shù)占4個(gè)字節(jié)。整數(shù)178對(duì)應(yīng)的二進(jìn)制數(shù)為:( 1011 0010 );整數(shù)178的機(jī)內(nèi)(以長(zhǎng)整型數(shù)形式)表示為: 0000 0000 0000 0000 0000 0000 1011 0010整數(shù)178對(duì)應(yīng)的八進(jìn)制數(shù)為:( 0262 )。整數(shù)178對(duì)應(yīng)的十六進(jìn)制數(shù)為:( 0 xB2 )。習(xí)題二一、單選題1字符串I am a student在內(nèi)存中占用的字節(jié)數(shù)( D ) A12個(gè) B13個(gè) C14個(gè) D15個(gè)2Turbo C 2.0中,若定義unsigned long b,則變量b在內(nèi)存中分配的字節(jié)數(shù)是( C ) A
3、1個(gè) B2個(gè) C4個(gè) D8個(gè)3. 下列那些是C語言中的合法常量。(在正確項(xiàng)為紅色) 01 018 195 0 xhh 0 xff21 ff e5 -0.e5 1.0e0.5 “123” ff14. 下列那些是C語言中的合法標(biāo)識(shí)符。(在正確項(xiàng)為紅色) 9xy _year _123 ABC e pi int int_ file.c二、填空題1C語言的標(biāo)識(shí)符必須以字母或下劃線開頭,且長(zhǎng)度不超過32個(gè)字符。 2字符串常量是由雙引號(hào)括起來的若干字符,字符常量是由單引號(hào)括起來的一個(gè)字符。 3C語言中“轉(zhuǎn)義字符”是以符號(hào)開頭。 4字符變量中存放的是字符所對(duì)應(yīng) ASCII 編碼值。 5在定義變量的同時(shí)給變量賦
4、予初值,稱為變量的初始化。 6字符串a(chǎn)b045x66的長(zhǎng)度是5。7用int型定義的變量在內(nèi)存中占用2字節(jié);用long型定義的變量在內(nèi)存中占用 4 字節(jié);用float型定義的變量在內(nèi)存中占用4字節(jié);用double型定義的變量在內(nèi)存中占用8字節(jié);用char型定義的變量在內(nèi)存中占用1字節(jié)習(xí)題三一、單選題1下面表達(dá)式結(jié)果為3的是( C ) A(-7)%4 B(-7.0)%4.0 C7%(-4) D7.0%4.02設(shè)有int a=3,a+=a- =a*a的值是( C ) A18 B 9 C. -12 D 33若有int a,b;下面正確的表達(dá)式是( D ) A7.0%3.0 B(a+b)+ C7+ Da
5、+a 4設(shè)有int a=2, 表達(dá)式(a1的值是( B ) A1 B2 C. 4 D 85在有字符型、整型、實(shí)型常數(shù)的表達(dá)式運(yùn)算中,其最后結(jié)果的類型是( D ) AChar型 Blong型 Cfloat型 Ddouble型二、填空題1.設(shè)有 int x,a;則 a(x1,x+,x+2)的結(jié)果為: x 2 ; a= 4 。2.設(shè)a和n都已定義為整型變量, a12,n=5,分別寫出下面表達(dá)式運(yùn)算后a的值。 a+=a a= 24 a-=2 a= 10 a*=2+3 a= 60 a/=a+a a= 0 a%=(n%=2) a= 0 a+=a-=a*=a a= 03代數(shù)表達(dá)式 的C語言算術(shù)表達(dá)式是 sq
6、rt(sin(60*3.14/180)+1)*(sin(30*3.14/180)+1)/cos(x)。4代數(shù)表達(dá)式 | 1-x3.6 | 的C語言算術(shù)表達(dá)式是 fabs(1-pow(x,3.6) 。5代數(shù)表達(dá)式 的C語言算術(shù)表達(dá)式是 (exp(x)+exp(-x)/2。6設(shè)x=2.5,a=7,y=4.7,算術(shù)表達(dá)式x+a%3*(int)(x+y)%2/4 的值為 2.5 。7設(shè)a=2,b=3,x=3.5,y=2.5,算術(shù)表達(dá)式 (float)(a+b)/2+(int)x%(int)y的值為 3.5 。作 業(yè) 41在C語言中,邏輯表達(dá)式的結(jié)果為:0或1;但是判斷一個(gè)邏輯量的值時(shí),以_非0_代表“
7、真”,以_0_代表“假”,例如:_的值是 1,即為“真”。 2若a=2,b=3,c=-1,d=5;下面表達(dá)式的值為:0。 a+bc+d & a=c+d | !c0 | d0 3用表達(dá)式表示:x=100且y、z都大于80,或者y=100且x、z都大于80。_4.1main() int a=0,b=0,c; c=a+& (b=1);printf(a=%d,b=%d,c=%dn,a,b,c); a=1,b=0,c=04.2 main() int a,b,c; int x=8,y=10; a=(+x=-y) ? -x:+y; b=x+; c=+y; printf(a=%d,b=%d,c=%dn,a,b
8、,c); a=9,b=8,c=104.3main() float y; int x=2; if(x0) y=0.0; else if(x=2.0) & (x!=2.0) y=1.0/(x+2.0); else if(xc?b:c)a? (bc?b:c):a; min=(b=c?b:c)=a? (bc?b:c)a? (bc?b:c):a; min=(bc?b:c)a? (b0): bill(0):n); scanf(%d%f%f,&a,&b,&c); switch(a) case 1: d=5.5*b;break; case 2: d=4.2*b;break; case 3: d=3*b; br
9、eak; case 4: d=2.5*b;break; default: flag=1; break; if(b=0) flag=2; else if(c-d0) flag=3; if(flag=1) printf( the scale errorn); else if(flag=2) printf( the amount errorn); else if(flag=3) printf( the bill errorn); else printf( the exchange %fn,c-d);5對(duì)于一個(gè)不多于對(duì)于一個(gè)不多于5位的正整數(shù),位的正整數(shù),要求編寫一個(gè)程序要求編寫一個(gè)程序: 求出它是幾
10、位數(shù);求出它是幾位數(shù); 分別打出每一位數(shù)字;分別打出每一位數(shù)字; 按逆序打印出各位數(shù)字按逆序打印出各位數(shù)字(例如原數(shù)為例如原數(shù)為321,應(yīng)輸出,應(yīng)輸出 123)。 對(duì)不合法的輸入作必要的處理,例如輸入的數(shù)為對(duì)不合法的輸入作必要的處理,例如輸入的數(shù)為 負(fù)數(shù)或超過負(fù)數(shù)或超過5位數(shù)位數(shù)運(yùn)行程序運(yùn)行程序: (1)將程序運(yùn)行七遍,分別從鍵盤上輸入)將程序運(yùn)行七遍,分別從鍵盤上輸入1、12、 123、1234、12345、-25和和123456 (2)記錄下運(yùn)行的步驟、過程和結(jié)果,并核對(duì)結(jié)果記錄下運(yùn)行的步驟、過程和結(jié)果,并核對(duì)結(jié)果 的正確性。的正確性。 main() long x,a,b,c,d,e,f;
11、 do printf(please enter a number between 0 and 99999n); scanf(%ld,&x); while(x99999); a=x/10000; b=x/1000%10; c=x/100%10; d=x/10%10; e=x%10; printf(nThe count odrdern); if(a!=0) f=5; printf( %ld%ld%ld%ld%ldn,e,d,c,b,a); else if(b!=0) f=4; printf( %ld%ld%ld%ldn,e,d,c,b); else if(c!=0) f=3; printf( %l
12、d%ld%ldn,e,d,c); else if(d!=0) f=2; printf( %ld%ldn,e,d); else printf( %ldn,e);printf(n %ld digitalsn,f); printf( %ldn,x);習(xí)題五一、填空題1在C語言中,邏輯表達(dá)式的結(jié)果為: 0 或 1 ;但是在if語句中對(duì)表達(dá)式的判斷時(shí),以 非0 代表“真”,以_0_代表“假”。2若a=2,b=3,c=-1,d=5;下面表達(dá)式的值為: 0 。a+bc+d & a=c+d|!c0|d80&z80|y=100&x80&z80二、按照輸出格式寫出以下程序的運(yùn)行結(jié)果1 main() int a=0
13、,b=0,c; c=a+& (b=1); printf(a=%d,b=%d,c=%dn,a,b,c); a=1,b=0,c=02 main() int a,b,c; int x=8,y=10; a=(+x=-y) ? -x:+y; b=x+; c=+y; printf(a=%d,b=%d,c=%dn,a,b,c); a=8,b=8,c=103. main() float y; int x=2; if(x0) y=0.0; else if(x=2.0)&(x!=2.0) y=1.0/(x+2.0); else if(x10.0) y=1.0/x; else y=10.0; printf(y=%f
14、n,y); y=0.5000004main()int x=1,y=1; switch(x) case 1: switch(-y) case 0:printf(%dn,+x);break; case 1:printf(%dn,+x);break; case 2:printf(%dn,+x); 2 3三、分別用if語句和switch語句編寫下面程序 當(dāng)從鍵盤輸入字符k或K時(shí),輸出KOREA WORLD CUP; 當(dāng)從鍵盤輸入字符j或J時(shí),輸出JAPAN WORLD CUP;當(dāng)從鍵盤輸入字符c或C時(shí),輸出BEIJIN OLYMPIC GAMES;若輸入其他字符則原樣輸出。#include main(
15、)char ch; ch=getchar(); if(ch=k|ch=K)printf(KOREA WORLD CUP); else if(ch=j|ch=J)printf(JAPAN WORLD CUP); else if(ch=c|ch=C)printf(BEIJIN OLYMPIC GAMES);else printf(%c,ch) ;main()char ch; ch=getchar(); switch(ch) case k: case K:printf(KOREA WORLD CUP);break; case j: case J:printf(JAPAN WORLD CUP);bre
16、ak; case c: case C:printf(BEIJIN OLYMPIC GAMES);break; default:putchar(ch); 習(xí)題習(xí)題六六 (循環(huán)結(jié)構(gòu)(循環(huán)結(jié)構(gòu) I) 一、單選題一、單選題 1以下關(guān)于以下關(guān)于continue語句的描述中正確的是(語句的描述中正確的是( C )。)。 A、continue語句可以結(jié)束循環(huán)語句的執(zhí)行 B、continue語句只能用于switch語句體中 C、continue語句只能用于循環(huán)語句中 D、在循環(huán)語句中使用break語句或continue語句的作用相同 2以下關(guān)于以下關(guān)于break語句的描述中正確的是(語句的描述中正確的是( A
17、 )。)。 A、break語句可以結(jié)束循環(huán)語句的執(zhí)行 B、break語句只能用于switch語句體中 C、break語句只能用于循環(huán)語句中 D、在循環(huán)語句中使用break語句或continue語句的作用相同 3. 語句語句for (表達(dá)式表達(dá)式1; ; 表達(dá)式表達(dá)式3)等價(jià)于(等價(jià)于( D )。)。A、for (表達(dá)式1; 0 ; 表達(dá)式3) B、for (表達(dá)式1; 表達(dá)式3; 表達(dá)式3)C、for (表達(dá)式1; 表達(dá)式1; 表達(dá)式3) D、for (表達(dá)式1; 1 ; 表達(dá)式3) 4. 若要執(zhí)行循環(huán)若要執(zhí)行循環(huán)while(!x)循環(huán),其中表達(dá)式循環(huán),其中表達(dá)式!x等價(jià)于等價(jià)于 ( C ).
18、。 A. x=1 B. x!=1 C. x=0 D. x!=05. 以下程序段中的以下程序段中的do-while循環(huán)(循環(huán)( C ) 。m=-1;do m=m*m; while(!m);A、是死循環(huán) B、執(zhí)行二次 C、執(zhí)行一次 D、有語法錯(cuò)誤6下面程序段的執(zhí)行結(jié)果是(下面程序段的執(zhí)行結(jié)果是(B)。)。 int x = 10; do x+=1; while (x20); printf(“x=%d”,x); A. x=10 B. x=11 C. x=20 D. x=21 7下面程序段的執(zhí)行結(jié)果是(下面程序段的執(zhí)行結(jié)果是(?)。)。 int i, x = 10; 初值初值 do i+=1;+x; i
19、+=1;+x; while (x20); printf(“i=%d”,i);8.下面程序段的循環(huán)次數(shù)為(下面程序段的循環(huán)次數(shù)為( B )。)。 int x=2; while (x=0) printf(“%d”,x); x-=1; printf(“n”); A. 無限次 B. 0次 C. 1次 D. 2次 9.下面程序段的循環(huán)次數(shù)為(下面程序段的循環(huán)次數(shù)為( B )。)。 int x=2; while (x=0) printf(“%d”,x); x-=1; printf(“n”); A. 無限次 B. 0次 C. 1次 D. 2次10.下面程序段的循環(huán)次數(shù)為(下面程序段的循環(huán)次數(shù)為( B )。)
20、。 int x=2; while (x=0) printf(“%d”,x); x-=1; printf(“n”); A. 無限次 B. 0次 C. 1次 D. 2次一、填空題一、填空題 1 若有:若有: for (a=0;a10;a+) a+; 則循環(huán)體執(zhí)行的次數(shù)為( 5 )次。 2 若有:若有: int x=1; while (x+5); 正常結(jié)束循環(huán)后x的值為( 6 )。 3 若有:若有: int a=10,s=0; while (a!=0) a-; s+=-a; 執(zhí)行完循環(huán)后,a的值為( 0 ),s的值為( 20 )。 三三.判斷題(正確打判斷題(正確打,錯(cuò)誤打,錯(cuò)誤打X并改錯(cuò))并改錯(cuò))
21、1 在while循環(huán)結(jié)構(gòu)中,表達(dá)式只能是邏輯表達(dá)式和關(guān)系表達(dá)式。 ( X )2. 在while (表達(dá)式)循環(huán)結(jié)構(gòu)中,循環(huán)體至少被執(zhí)行一次。 ( X ) 3. 在do - while (表達(dá)式)循環(huán)結(jié)構(gòu)中,循環(huán)體至少被執(zhí)行一次。 ( ) 4. 在for(表達(dá)式1;表達(dá)式2;表達(dá)式3)中,表達(dá)式3可以是逗號(hào)表達(dá)式。( ) 5. 在for(表達(dá)式1;表達(dá)式2;表達(dá)式3)中,可缺省表達(dá)式1但分號(hào)不能省。( ) 6. 在for(表達(dá)式1;表達(dá)式2;表達(dá)式3)中,不能缺省表達(dá)式3。 ( X )7. continue 只能用于while,do while,for三種循環(huán)結(jié)構(gòu)中。 ( ) 8. break
22、只能用于while,do while,for三種循環(huán)結(jié)構(gòu)中。 ( X )9 在循環(huán)體中可以用continue語句結(jié)束本次循環(huán)。 ( ) 10 在循環(huán)體中可以用break語句結(jié)束本次循環(huán)。 ( X ) 11 在循環(huán)體中可以用continue語句結(jié)束循環(huán),轉(zhuǎn)去執(zhí)行下一個(gè)語句。 ( X ) 12 在循環(huán)體中可以用break語句結(jié)束循環(huán),轉(zhuǎn)去執(zhí)行下一個(gè)語句。 ( ) 四四.按照輸出格式寫出以下程序的運(yùn)行結(jié)果按照輸出格式寫出以下程序的運(yùn)行結(jié)果 1main( ) int i; for(i=1;i4) break; else k+=2*j; j+; while (j10); printf(k=%d,k);
23、_K=61_ j=1: k=k+(j-1)*j; k=1 j=4 k=k+2*j; k=1+2 k=3 j=2: k=k+(j-1)*j; k=5 j=4 k=k+2*j; k=5+4 k=9j=3: k=k+(j-1)*j; k=15 j=4 k=k+2*j; k=15+6 k=21j=4: k=k+(j-1)*j; k=33 j4 break五編寫程序:五編寫程序: 1計(jì)算:s = 1!2! + 3!4! + + 9!10! (提示:注意選擇合適的數(shù)據(jù)類型)main() long t=1,i,mult=1,sum=0; for(i=1;i=10;i+) mult*=i; sum+=t*mu
24、lt; t=-t; printf(sum=%ldn,sum);2有一分?jǐn)?shù)序列: 2/1,3/2,5/3,8/5,13/8,21/13, 求出這個(gè)數(shù)列的前20項(xiàng)之和。 main() int i; float f0,f1,f2, sum=0; f1=1;f2=2; printf(n); for(i=1;i=20;i+) printf(%5.0f/%-5.0f, ,f2,f1); sum+=f2/f1; if(i%5=0) printf(n); f2=f1+f2; f1=f2-f1; printf(sum=%f n ,sum); 二、實(shí)驗(yàn)內(nèi)容及步驟二、實(shí)驗(yàn)內(nèi)容及步驟 1 計(jì)算s = 1 + 2 +
25、3 + 4 + + 100 的程序如下: main() int i=1,sum=0; while (i=100) i+;sum+=i ;printf(sum =%d,n, sum); sum+=i ;i+;1求1,100之間的奇數(shù)之和的程序:main() int i= -1 ,sum=0;do i+=2; ;sum+=i ;while ( i=97 ); printf(sum =%d,n, sum); 求1,100之間的偶數(shù)之和的程序:main() int i,sum=0; for ( i=0 ; i=100 ; i+ ) sum+=i ; printf(sum =%d,n, sum);習(xí)題七
26、 (循環(huán)結(jié)構(gòu) II) 一、填空題 a) 在for 循環(huán)語句中,已知循環(huán)初值、終值、步長(zhǎng)值, 循環(huán)次數(shù)= (終值初值)步長(zhǎng)值)取整 。 b) 在do while 結(jié)構(gòu)中,循環(huán)體最少執(zhí)行 次。 c) 在 while 結(jié)構(gòu)中,循環(huán)體最少執(zhí)行 0 次。 main( ) int j=1; float i; /* (int)(終值-初值)/步長(zhǎng)+1) */ for(i=12;i100;i=i+1) printf( %d %f n,j+,i ); j=(int)(99.-12)/1+1); /* 計(jì)算運(yùn)算次數(shù)的公式 */ printf(%dn,j); 要注意終值的確定方法: 1. 如果終值、初值、步長(zhǎng)有小數(shù)
27、值,則同步放大為整數(shù)。 2. 如果 終值,則 (int)(終值 - 1 - 初值)/步長(zhǎng)+1)。 3. 如果 =終值,則 (int)(終值 - 初值)/步長(zhǎng)+1)。二、判斷題(正確打,錯(cuò)誤打X并改錯(cuò)) 1 對(duì)于嵌套循環(huán)來說,在內(nèi)層循環(huán)結(jié)構(gòu)中使用break語句可以提前結(jié)束本次內(nèi)層循環(huán)結(jié)構(gòu)的執(zhí)行,而不影響外層循環(huán)結(jié)構(gòu)的繼續(xù)執(zhí)行。 ( )2 對(duì)于嵌套循環(huán)來說,在內(nèi)層循環(huán)結(jié)構(gòu)中使用break語句可以提前結(jié)束內(nèi)、外層循環(huán)結(jié)構(gòu)的執(zhí)行。 ( X ) 3 對(duì)于嵌套循環(huán)來說,在內(nèi)層循環(huán)結(jié)構(gòu)中使用goto語句可以提前結(jié)束內(nèi)、外層循環(huán)結(jié)構(gòu)的執(zhí)行,但在結(jié)構(gòu)化程序設(shè)計(jì)中不提倡使用。 ( ) 4 對(duì)于并列的循環(huán)結(jié)構(gòu)中,控
28、制循環(huán)執(zhí)行的變量名字可以相同 。 ( )5. 對(duì)于嵌套循環(huán)結(jié)構(gòu)中,內(nèi)、外層控制循環(huán)執(zhí)行的變量 名字可以相同。 ( X ) 三.按照輸出格式寫出以下程序的運(yùn)行結(jié)果1main( ) int i , j , x ; for(i=1;i=6;i+) for (j=1;j8;j+) x = x + 1; printf(%3d,%3d,%3d, i , j , x); 由于x的初值不確定 ,本題錯(cuò)誤。 2main( ) int x , y , z = 0; for(x=1;x=5;x+) for (y=1;y=5;y+) if ( x = y ) | (x + y = 6 ) ) z = z + 1; p
29、rintf(%d , z); _9_ 3#include main( ) char c; int letter=0,space=0,digit=0,other=0; printf(請(qǐng)輸入一行字符:); while (c=getchar()!=n) if (c=a & c=A & c=0 & c=9) digit+; else other+; printf(%d,%d,%d,%dn,letter,space,digit,other);請(qǐng)輸入一行字符:My teachers address is”#123 Beijing Road,Shanghai”.四編寫程序: 1求:100300之間的所有素?cái)?shù)
30、。#include main() int i,j,x,flag; printf(n); for(i=100;i300;i+) flag=1; for(j=2;ji;j+) if(i%j=0) flag=0;break; if(flag)printf( the prime number: %d n,i); printf(n); for(i=100;i300;i+) flag=1; x=sqrt(i); for(j=2;jx;j+) if(i%j=0) flag=0;break; if(flag)printf( the prime number: %d n,i); 2打印出所有的“水仙花數(shù)”。所謂
31、“水仙花數(shù)”是指一個(gè)3位數(shù),其各位數(shù)字的立方和等于該數(shù)本身。例如,153是一個(gè)“水仙花數(shù)” ,因?yàn)?53 = 1 3 + 5 3 +3 3。main() long int a,i,j,k; for (a=100;a=999;a+) i=a%10; j=(a/10)%10; k=(a/100)%10; if(i*i*i+j*j*j+k*k*k=k*100+j*10+i) printf(%ld+%ld+%ld=%ld%ld%ldn, k*k*k,j*j*j,i*i*i,k,j,i); 實(shí)驗(yàn)報(bào)告(實(shí)驗(yàn)七:循環(huán)結(jié)構(gòu)II) main() int i, j, k; for (i=0;i5;i+) for
32、(j=0;j20;j+)printf( );for (k=0;k5;k+)printf(*);printf(n);* * * * 1* * * * * * * * * * * * * * 2 * * * * * * * * * * * * 3 * * * * * * * * * * *1、main() int i, j, k; for (i=0;i5;i+) for (j=0;j20;j+) printf( ); for (k=0;ki+1;k+) printf(*); printf( n); 2、main() int i, j, k; for (i=0;i5;i+) for (j=0;j25
33、-i;j+) printf( ); for (k=0;ki+1;k+) printf(*); printf(n); 3、main() int i, j, k; for (i=0;i4;i+) for (j=0;j25-i;j+) printf( ); for (k=0;kx2)? x1:x2; min=(x1x2)? x1:x2; /*先假定 max、 min */ for(i=3;imax) max=x; /*如果剛輸入的值最大或最小則 */ if (xmin) min=x; /* 替換 max、 min */ p=(sum-max-min)/8; printf(%.2fn,p); prin
34、tf(%.2f,%.2fn,max,min); main() float m1,m2,n2,n1,sum=0,p,x,t; int i,j; scanf(%f%f%f%f,&m1,&m2,&n1,&n2);sum+=m1+m2+n1+n2; /*輸入并求和*/ if(m1m2)t=m1;m1=m2;m2=t; if(m1n2)t=m1;m1=n2;n2=t;/*排序*/ if(m1n1)t=m1;m1=n1;n1=t; if(m2n2)t=m2;m2=n2;n2=t; if(m2n1)t=m2;m2=n1;n1=t; if(n2n1)t=n2;n2=n1;n1=t; for(i=1;im1)
35、m2=m1;m1=x; else if(xm2) m2=x; if(xn1) n2=n1;n1=x; else if(xn2) n2=x; sum+=x; p=(sum-m1-m2-n1-n2)/16; printf(%.2fn,p);利用數(shù)組求解:main() float a4,sum=0,p,x,t; int i,j; for(i=0;i4;i+) scanf(%f,&ai);sum+=ai; /*輸入并求和*/ for(i=0;i3;i+) for(j=i+1;j4;j+) /*排序*/ if(aiaj)t=ai;ai=aj;aj=t; for(i=1;ia0) a1=a0;a0=x;
36、else if(xa1) a1=x; if(xa3)a2=a3;a3=x; else if(xa2) a2=x; sum+=x; p=(sum-a0-a1-a2-a3)/16; printf(%.2fn,p);習(xí)題八一. 填空題1 定義一個(gè)有10個(gè)實(shí)型數(shù)、數(shù)組名為b的一維數(shù)組:float b10,數(shù)組元素下標(biāo)的上限是 9 ,下限是 0 。 2 數(shù)組a有10個(gè)元素,前5個(gè)元素的值分別為5、12、8、20、15,為該數(shù)組定義同時(shí)完成初始化的語句是 int a10=5,12,8,20,15,數(shù)組元素a0 5 ,a2 8 ,a5 0 ,a7 0 ,a9 0 ,aa2-a0 a8-5 = a3=20 ,
37、a10的值為 不確定 。用賦值語句為數(shù)組元素a5賦值數(shù)值10的語句是a5=10;,利用輸入語句為數(shù)組元素a6賦值的語句是 scanf(“%d”,&a6); ,輸出全部數(shù)組元素值的語句是 for(i=0;i10;i+) printf(“%d”,ai); 。 3. 有定義float count8,說明該數(shù)組的數(shù)組名為 count ,它代表 地址 常量。該數(shù)組有 8 個(gè)元素,每個(gè)元素的數(shù)據(jù)類型為 float ,元素的初值為 不確定 ,整個(gè)數(shù)組在內(nèi)存中連續(xù)占用 32 個(gè)字節(jié)的存儲(chǔ)單元。 一. 簡(jiǎn)答題1. 判斷以下對(duì)一維數(shù)組的說明是否正確? 數(shù)組定義 正確否 錯(cuò)誤原因 char a(10); 10 in
38、t a ; int k=5,ak; k int y5=0, 1, 3, 5, 7, 9; 數(shù)據(jù)多于元素char ch2 =x10, xa, x8; char a =a , b , c; 2. ? 3. 說明int b10=1,5,8,2,3與int b=1,5,8,2,3的區(qū)別? 10個(gè)元素 5個(gè)元素三、 程序閱讀1) 以下程序的功能是輸入10個(gè)數(shù)給數(shù)組a,再依次將數(shù)組a中的各個(gè)元素賦值給數(shù)組b的各個(gè)元素,并輸出數(shù)組b。閱讀程序,找出程序中的錯(cuò)誤并修改。main() float a10,n=10,i; float bn; float b10; for(i=0;i10;i+) scanf(“%f
39、”, ai); scanf(“%f”, &ai);B=a; bi=ai;for(i=1;i=10;i+) for(i=0;i10;i+)printf(“%8.2f”,bi); 2)程序的運(yùn)行結(jié)果:main() int i,k,a10,p3; k=5; for (i=0;i10;i+) ai=i; for (i=0;i3;i+) pi=ai*(i+1); for (i=0;i3;i+) k+=pi*2; printf(%dn,k); 213)程序的運(yùn)行時(shí)輸入8,執(zhí)行結(jié)果是及程序的功能:main ( ) int a,t,x10=3,5,7,9,1,2,4,6,8,0;for (a=0;a10;a+
40、) printf(%4d,xa);printf(n input t:n);scanf(%d,&t);for (a=0;a10;a+) if (t=xa) break;printf(x%dn,a) 3 5 7 9 1 2 4 6 8 0 input t: 8 x8 輸出與輸入值相等的數(shù)組元素4)程序的運(yùn)行結(jié)果及程序的功能: #define N 10#define M 5main( ) int pa,pb, value; int aM=3,5,7,1,6; int bN=9,12,7,2,0,12,5,6,7,11; for(pa=0;paM;pa+) value=apa; for(pb=0;pb
41、=1); for( j=i-1;j=0;j-) printf(%d,aj);printf(n); 10010 求18的二進(jìn)制表示。 1. 定義一個(gè)有10個(gè)元素的一維數(shù)組count,從鍵盤上輸入8個(gè)整數(shù),將其按從大到小的順序排列,并將排序后的數(shù)組輸出。 事先編好程序和流程圖。注意要有輸入數(shù)據(jù)的提示語句。變量及數(shù)組的定義輸入10個(gè)整數(shù)給數(shù)組count 按功能確立算法排序 知道編程輸出排序后的數(shù)組將程序運(yùn)行二遍,分別從鍵盤上輸入兩組不同的數(shù)據(jù)。記錄下運(yùn)行的步驟、過程和結(jié)果。 10,4,-7,32,14,25,-18,20 22,6,-9,15,-2,10,36,18 變量及數(shù)組的定義輸入10個(gè)整數(shù)給
42、數(shù)組count排序輸出排序后的數(shù)組int i,j,count8 ,t; 循環(huán)輸入countj元素 i=0;i7; i+ j=i+1;jcountj n 交換counti 和countj的 值 int i,j,count8 ,t;for(i=0;i8; i +) scanf(%d,&counti);for(i=0;i7; i+) for(j=i+1;jcountj)t=countj;countj=counti;counti=t;for(i=0;i8; i+) printf(%d ,counti); 2. 將以上程序中8個(gè)數(shù)據(jù)的輸入改為數(shù)組的初始化(初始化的數(shù)據(jù)為:10,4,-7,32,14,25
43、,-18,20),再從鍵盤上輸入1個(gè)整數(shù),將其插入到排序后的數(shù)組count中,使插入后的序列仍保持降序排列。變量及數(shù)組的定義及初始化排序輸入1個(gè)數(shù)插入輸出插入后的降序數(shù)組將程序運(yùn)行三遍,分別從鍵盤上輸入不同的數(shù)據(jù),記錄下運(yùn)行的步驟、過程和結(jié)果。 8 20 40 變量及數(shù)組的定義輸入10個(gè)整數(shù)給數(shù)組count排序插入輸出排序后的數(shù)組scanf(%d,&t); i=0;icounti y n j=8;ji;j- countj=countj-1; count8 counti=t; break; =t;變量及數(shù)組的定義輸入10個(gè)整數(shù)給數(shù)組count排序輸入排序輸出排序后的數(shù)組main( )int i,
44、j,t,count9=10,4,-7,32,14,25,-18,20 ; for(i=0;i7; i+) for(j=i+1;j8; j+) if(counticountj)t=countj;countj=counti;counti=t;for(i=0;i8; i+) printf(%d ,counti);printf(n);scanf(%d,&t); for(i=0;icounti) for(j=8;ji;j-) countj=countj-1; counti=t; break; else count8=t; for(i=0;istr2) B、if (strcmp(str1, str2)C、if (strcmp(str2, str1)0)D、if (strcmp(str1, str2)0)12. 下面程序段的運(yùn)行結(jié)果是 B char x5=a, b, 0, c, 0;printf(%s, x);A、abB、abC、abcD、abc13. 有兩個(gè)字符數(shù)組a,b,則以下能正確為a,b進(jìn)行賦值的語句是 D A、gets(a, b); B、scanf(%s%s, &a, &b);C、getchar(a); getchar(b); D、gets(a)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度文化創(chuàng)意產(chǎn)業(yè)股份發(fā)行合作協(xié)議
- 2025年紅花山牽牛項(xiàng)目投資可行性研究分析報(bào)告
- 2025年大齒輪鉸行業(yè)深度研究分析報(bào)告
- 農(nóng)村林地入股合同范本
- 共用煙道維修合同范本
- 科技企業(yè)如何將ESG融入企業(yè)文化
- 企業(yè)尋求合作合同范本
- 親子活動(dòng)基地合同范本
- 會(huì)展平臺(tái) 合同范本
- 8小時(shí)工作制合同合同范本
- 湖北省黃岡市2023-2024學(xué)年五年級(jí)上學(xué)期數(shù)學(xué)期中試卷(含答案)
- ××管業(yè)分銷市場(chǎng)操作方案
- 《ISO 41001-2018 設(shè)施管理- 管理體系 要求及使用指南》專業(yè)解讀與應(yīng)用指導(dǎo)材料之15:“7支持-7.6 組織知識(shí)”(雷澤佳編制-2024)
- 2024年建設(shè)工程質(zhì)量檢測(cè)人員-建設(shè)工程質(zhì)量檢測(cè)人員(主體結(jié)構(gòu)工程)考試近5年真題集錦(頻考類試題)帶答案
- 《向量共線定理》同步課件
- 小學(xué)數(shù)學(xué)學(xué)習(xí)經(jīng)驗(yàn)交流課件
- 2024年第二批政府專職消防員招錄報(bào)名表
- 注塑模具基礎(chǔ)知識(shí)
- 2024年單招考試題
- 三年級(jí)數(shù)學(xué)下冊(cè)期末測(cè)試卷及答案【可打印】
- 蘇教版小學(xué)語文上冊(cè)教學(xué)研究論文
評(píng)論
0/150
提交評(píng)論