




已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
C語言程序設(shè)計補充練習(xí)題-程序題第2章一、閱讀程序?qū)戇\行結(jié)果題1.#include void main (void) char c1a,c2b,c3c,c4=101,c5=116; printf(“a%c b%ctcctabcn.”,c1,c2,c3); printf(“tb%c %c”,c4,c5); 2.#include void main (void) int c1,c2: c197;c298; printf(“%c%cn”,c1,c2); printf(“%d%dn,c1,c2); 3.#include void main(void) int i,j,m,n; i= 8;j10; m=+i;n=j+; printf(%d,%d,%d,% d”.,i,j,m,n); 4.#include void main(void)int a=1,b=2,c3; a=b;b=c;c=a; printf(“a=%d,b=%d,c%dn”,a,b,c);5.#include void main (void) int a,b,c; a=(b=(c= 3)*5)*2-3; printf(“a=%d;b=%d;c%dn”,a,b,c); 第3章一、閱讀程序?qū)戇\行結(jié)果題1.#include void mian (void) int a=5,b=10; float x=34.73125; char cA; printf(“%3d%3dn”,a,b); printf(“%d,fn”,a,x); printf(”%7.2f,9.4fn”,x,x); printf(.”c,%d”,c,c); printf(“s,l0sn”,” computer”,” computer”); 二、程序設(shè)計題1.編寫程序,用getchar()函數(shù)讀入兩個字符給c1, c2.然后分別用putchar()函數(shù)和printf()函數(shù)輸出這兩個字符,并思考以下問題: (1)變量c1, c2應(yīng)定義為字符型還是整型?或兩者皆可? (2)若要求輸出c1、c2值的ASCII碼,應(yīng)如何處理。第4章一、閱讀程序?qū)戇\行結(jié)果題1.若從鍵盤上輸入“Next”,寫出下列程序運行結(jié)果。#include void main(void)char c; c=getchar(); if(c=a& c=A& c=x& c=x&c=z) c=c- 23; printf(“n”,c); 2.寫出下列程序運行結(jié)果。#includevoid main(void) int x=1,y=0,a=0,b=0; switch(x) case 1:switch (y) case 0:a+;break; case 1:b+;break; case 2:a+;b+;break; case 3:a+;b+; printf(“a=%d,b=%dn”,a,b); 二、程序設(shè)計題1.編寫運輸公司對用戶計算運費程序。距離(S.單位為 km)越遠,每公里運費越低。標(biāo)準(zhǔn)如下:S250 沒有折扣250,S500 2%折扣500S1000 5%折扣1 000-S2 000 8%折扣2 000,S3 000 10%折扣3 000S 15%折扣設(shè)每公里每噸貨物的基本運費為P,貨物重為w,距離為S,折扣為d.則總運費f計算公式為:f=PWS(1-d)第5章一、閱讀程序?qū)戇\行結(jié)果題1.寫出下列程序運行結(jié)果。 void main(void) int i; for(i1;i6;i+) if(i%2) printf(“#”); else continue; printf(“$”); printf(“&n”);2.若輸入“1234寫出下列程序運行結(jié)果。#include void main(void)int c; while(c=getchar()!n) switch(c-2) case 0: case 1:putchar(c+4); case 2:putchar(c+4);break; case 3:putchar(c+3); default:putchar(c+2);break; printf(“n”);3.寫出下列程序運行結(jié)果。 #include void main(void) int s=0,i; for(i= 1;i+) if(s50)break; if(i%2=0)s+=i; printf(”i%d,s二%dn.,i,s); 二、程序填空題1.下列程序的功能是計算并輸出1!+2!+3!+10!。 void main(void) float y ,x; int i,n; for(n=1;n10;n+) ; for(i= 1;i=n;i+) ; y=y+x; printf(“fn”,y): 2.利用公式: ,求的近似值,直到最后一項的絕對值小于10-6為止。#include void main(void)int s1; float n=1,t1,pi0; while( =1e-6) pi=pi+ ; n=n+2; s= ; t= sn; pi=pi*4; printf(“pifn”,pi);3.用鍵盤輸入一段文字,以”*”作為結(jié)束標(biāo)志,試編寫一個對行、單詞和字符計數(shù)的程序。其中單詞為一串不含空格、制表符或換行符的字符串。#include #define YES 1#define NO 0void main(void)int n1,nw,nc,inword; char c; inword=NO; nl=nw=nc= 0; while(C=getchar() ) +nc; if(c= n)+nl; if (c= |C=t|c= ) inword=NO; else if (inword= =NO) inword= ;+nw; nc-; n1+; nc+; printf(”%dt%dt%dn”,n1,nw,nc); 三、程序設(shè)計題1.求解滿足條件1+2+3+-+n1000的最小n值及其和s。2. 3.求出10100之內(nèi)能同時被2, 3, 7整除的數(shù),并輸出。4.利用循環(huán)語句求 (直到第100項的和)。5.編寫求S。6.輸入n,求ex的泰勒級數(shù)展開式的前n項之和。 (-x)7.求1100之間的奇數(shù)之和及偶數(shù)之和,并輸出。8.利用公式求cos x的近似值(精度為10-6): 9.找出1100之間的全部同構(gòu)數(shù)。所謂“同構(gòu)數(shù)”是指某個數(shù)出現(xiàn)在它的平方數(shù)的右端。如:6的平方是36,6出現(xiàn)在36的右端,6就是同構(gòu)數(shù)。10.11.編寫一個程序,要求輸出如下圖案。 1 1*1 2*2 3*3 4*4 5*5 $12.編寫一個程序,模擬選舉過程,共有n個人參加選舉,候選人有4位,分別用字符A, B, C, D表示,選某位候選人時,直接鍵入其代號;若鍵入除A, B, C, D以外其他字符時為無效票。選舉結(jié)束后按得票多少的順序輸出候選人代號所得票數(shù)。第6章一、閱讀程序?qū)戇\行結(jié)果1.寫出下列程序運行結(jié)果。 void main(void) int i,x331,2,3,4,5,6,7,8,9; for(i=0;i3;i+)printf(“%d”, xi2- i); 2.寫出下列程序運行結(jié)果。 void main(void) int a51,1,1,0,i,k=2; for(i0; i0&cha9;a+)s=10*s+cha-0; printf(“%dn”,s);4.若輸入ABC,寫出下列程序運行結(jié)果。 #include #include void main(void) char a10; gets(a);strcat(a,“6789”);printf(“%sn“,a);5.寫出下列程序運行結(jié)果。 void main(void) static char xa,a,a,a,a; int i,J,k; for(i0;i=3;i+) printf(.n”); for(70;Ji;J+)printf(“”); for(k=0;k5;k+)printf(“%c”,xk); 6.寫出下列程序運行結(jié)果。 void main(void) int s31,3,5,7,2,4,6,8,9; int i,7,s1=0,s2=0; for(i二0;i=2;i+) for(J0;7=2;J+) if(i= =j)s1=sl+sij; iff(i+j=2)s2=s2+sij; printf(”%dn%dn“,s1,s2); 7.寫出下列程序運行結(jié)果。 #include void main(void) int i,j; int a331,2,3,4,5,6,7,8,9,b33; for(i0;i3;i+) for(j=0;j3;j+)bJi= -LCiJ; for(i0;i3;i+) printf(”n“); for(j二0;j3;j+)printf(“%4d”,bij); 8.寫出下列程序運行結(jié)果。 #include void main(void) char a“11223344”; a30; printf”sn“,a); 9.有如下程序,運行結(jié)果為_。 void main(void) int a331,2,3,4,5,6,i,j,s=0; for(i1;i3;i+) for(j0;j=i;j+)s+=aij; printf(“%dn”,s); 10.有如下程序,其運行結(jié)果是_。 void main(void) int a331,2,3,4,5,6,i,j,s=0;for(i1;i3:i+)for(j0;j2;j+)s=s+aij;printf(“%dn”,s); 二、程序填空題1.下面程序的功能是將一個字符串str的內(nèi)容顛倒過來,請在程序橫線處填上適當(dāng)內(nèi)容。 #include void main(void) char str80; int i,j, ; gets(str); j= ; for(i=0;ij;i+,j一) k=stri;stri=strj;strj=k; puts(str); 2.下列程序的功能為:輸入一組整數(shù)賦給一個3X3的矩陣,求解該矩陣兩條對角線元素值的和,請在程序橫線處填上適當(dāng)內(nèi)容。 #include void main(void) int a33,sum=0; int i,J; for(i二0;i3;i+) for(j0;j3;j+) scanf(毋), for(i二0;i3;i+) sum=sum+ aii+; printf(.%d.,sum); 3.下面程序是對輸入的字符串統(tǒng)計其中數(shù)字字符出現(xiàn)的次數(shù),請在程序橫線處填上適當(dāng)內(nèi)容。 # include #include void main(void) char ch80; int i, ; for(i0;i0&chi9) ; i+; for(i0;i9;i+) printf(”%d,%dn“,i,ai); 三、程序設(shè)計題1.將字符數(shù)組str2中的全部字符復(fù)制到字符數(shù)組ctrl中。不使用StrCpY函數(shù).復(fù)制時,0也要復(fù)制進去,0后面的字符不復(fù)制。2.將輸入的n個整數(shù)按從小到大排序輸出,并求出其中所有奇數(shù)的個數(shù)。3.輸入n個整數(shù),求出其中最大數(shù)及其所在的位置,以及此n個數(shù)中素數(shù)的個數(shù)。4.統(tǒng)計從鍵盤輸入的字符串中各數(shù)字字符的個數(shù)。5.輸入10個學(xué)生的分?jǐn)?shù),計算平均分,并打印低于平均分?jǐn)?shù)的成績。6.任意輸入20個整數(shù),再輸入一個數(shù)x.判斷x是否在該數(shù)組中存在,若存在,則輸出x所在的位置,否則輸出N0 DATA”。7.輸入一個長度不超過80的字符串,編寫程序,刪除其中所有的數(shù)字字符。8.編程,將任意一個整數(shù)x插入到一個有序的數(shù)組a中。假設(shè)數(shù)組a是升序排列。9.編程實現(xiàn)二維數(shù)組(nxn)轉(zhuǎn)置(即行列互換)。10.任意輸入一個35的整數(shù)矩陣a,編寫程序選出各行最大的元素并依次放入一維數(shù)組b中,輸出數(shù)組a和b.。11.找出一個二維數(shù)組中的鞍點,即該位置上的元素在該行上最大、在該列上最小。數(shù)組中也可能沒有鞍點。12.編程,打印楊輝三角形前8行8列的值。即輸出: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 1 7 21 35 35 21 7 1第7章一、程序填空題1.計算輸出x的平方值,請?zhí)羁铡?void main(void) int x=7; x= ; printf(“n the square is %d.,x); square(int x) return( ); 2.計算矩形面積,請?zhí)羁铡?void main(void) float x,y; scanf(“ff”,&x,&y); printf(%f,一.廷一(x,y); float mul() return(a*b); 13.輸入兩個整數(shù),求它們差的絕對值,請?zhí)羁铡?#include void main(void) int x,y,z; scanf(.%d%d.,&x,&y); z=fabs(x-y): printf(“I%d-%dl:$d“,x,y,z); 二、閱讀程序?qū)戇\行結(jié)果題1.寫出下列程序運行結(jié)果。 #includevoid fun(int x,int y) int a,b; float d; a=x+14; b=y-4; d=(float)(b/a); printf(“d=f n.,d); void main(void) int b=9,a=6,C; c=ba; printf(“c%dn”,c); fun(a,b); 2.寫出下列程序運行結(jié)果。 #include int d=1; void fun(int p) int d=5; d+=p+; printf(“%dn”,d); void main(void) int a=3; fun(a); d+=a+; printf(“%dn”,d); 3.寫出下列程序運行結(jié)果。 #include void test() static int x=0; printf(“%dn”,+x); void main(void) test(); test(); test(); 4.寫出下列程序運行結(jié)果。 #include void main(void) f int n=4,x=2,s; sfun(x,n); printf(“s=%dn”,s); int fun(int x,int n) if(n=1) return(x); else return(x*fun(x,n-1); 5.寫出下列程序運行結(jié)果。 long fun(int n) long s; if(n= =1)|(n= =2)s=2; else s=n+fun(n-l); return s; void main(void) long x; x=fun(5); printf(“x=ldn.,x); 三、程序設(shè)計題1.分別用自動變量、靜態(tài)變量和外部變量編寫九九乘法表。2.編寫求x!的函數(shù),通過調(diào)用該函數(shù)求出能使等式x!= x3-l0x成立的10以內(nèi)的所有正整數(shù)x。3.求組合數(shù)。編程計算:C=m!/(n!(m-n)!)4.編寫函數(shù),求方程ax2+bx+c=0的b2-4ac,并作為函數(shù)的返回值。其中的a, b, c作為函數(shù)的形參。第8章 補充練習(xí)題一、單選題二、填空題三、閱讀程序?qū)戇\行結(jié)果題四、程序填空題五、程序設(shè)計題5.編寫函數(shù),統(tǒng)計一個字符串中,大寫字母、小寫字母和標(biāo)點符號的個數(shù)(標(biāo)點符號包括:逗號、句號、分號)。大、小寫字母和標(biāo)點符號的個數(shù)由函數(shù)參數(shù)返回。第9章 補充練習(xí)題一、單選題二、填空題5.函數(shù)調(diào)用mall0c(size0f(float)的功能是申請一字節(jié)的內(nèi)存。這批內(nèi)存的首地址是。三、閱讀程序?qū)戇\行結(jié)果題四、程序填空題五、程序設(shè)計題第10章 補充練習(xí)題一、單選題1.設(shè)a=5,b=3,則表達式ab+2的值(二進制表示形式)是_。A)00011000 B)00001101 C)00000100 D)000010012.以下運算符優(yōu)先級最高的是_。A) B) c) D)3.表達式ab|c&d的運算順序為_。A) &,| B),|, C) ,|,& D) ,&,|4.表達式0x2a&0x3f的值是_。A) 0x2a B) 0x3f C) 0x15 D) 0xaf5.有以下程序: #includevoid main(void)short a,b;a=5;b=a,1/a,2;printf(“%d, %dn”,a,b);程序運行結(jié)果為_。A) 5,3 B)5,1 C)5,2 D) 5,0二、填空題 1.測試短整型變量a是否為正數(shù)的位運算表達式是_。 2.在C語言中,的含義包括_和_。 3.位運算符按優(yōu)先級從高到低的次序是_。 4.位運算:0xla2c0xla79的運算結(jié)果是(用八進制形式寫出)_。 5.位運算:0x27a1 | 0xla54+2的運算結(jié)果是(用八進制形式寫出)_。三、閱讀程序?qū)戇\行結(jié)果題 1.己知下面程序:#includevoid main(void)unsigned a,b,c;scanf(“%o”,&a);b=a|2;c=b&0x000f;printf(“%d,%0n”,c,c);若輸入數(shù)據(jù)為:553則該程序的功能是_,程序運行結(jié)果是_。 2.已知下面程序:#includevoid main(void)unsigned a,b,c;int n;scanf(“a=%0,n=%d”,&a,&n);b=a+(16-n);c=a;n;c=bc;printf(“%0n%0n“,a,c);若輸入數(shù)據(jù)為:a=175324,n=4 d則該程序的功能是_。程序運行結(jié)果是_。四、程序填空題 1.下面程序是將一個正整數(shù)n的各個位向左循環(huán)移動4位,請在程序的橫線上填寫適當(dāng)內(nèi)容。#includevoid main(void)int k,n,a;scanf(“%d”,&n);k=n&0xf000;k= ;a=n+ 4;a=k| a;printf(“n=%on a=%on”,n,a);2.下面程序是判斷一個整數(shù)n的最高位是0還是1,若是0則輸出“一”,否則輸出“+”。請在程序的橫線上填寫適當(dāng)內(nèi)容。#includevoid main(void)int n;scanf(.$d.,&n);printf(“n=+d“,n);test(n);test(int x)x=x; ;if(x=1)printf(“n+n”);else ;五、程序設(shè)計題1.輸入兩個無符號整數(shù)分別存入a, b中,再由a, b兩個數(shù)生成新的數(shù)c,具體要求如下: (1)將a的低位字節(jié)作為c的高位字節(jié),將b的高字節(jié)作為c的低字節(jié)。(2)數(shù)據(jù)a, b從鍵盤鍵入,用十進制和十六進制兩種形式輸出a, b, c的值。2.編寫一個函數(shù),對一個16位的二進制數(shù)取出它的偶數(shù)位。即取出從左邊起第2, 4,、16位。將取出的8位數(shù)用八進制形式輸出。第11章 補充練習(xí)題一、單選題1.若fp勿是指向某文件的指針,且己讀到此文件末尾,則庫函數(shù)fe0f(fp)的返回值是_。 A)-1 B)0 C)非0值D)NULL2.在C語言中,文件的存取方式以_為單位。 A)記錄B)結(jié)構(gòu)C)字符D)字節(jié)3.若要向文件末尾添加新的數(shù)據(jù),則應(yīng)以方式打開文件。 A) r B)w C) a D) rb4.在C語言中,可以把整數(shù)以二進制形式存放到文件中的函數(shù)是_。 A) fprintf()B)fread()C) fwrite()D) fputc()5.在C語言中,若按數(shù)據(jù)的組織形式分類文件可分為_。 A)字符文件、數(shù)字文件B)文本文件、二進制文件 C)順序文件、隨機文件D)以上均不對6. fseek函數(shù)的正確調(diào)用形式是_。 A) fseek(文件類型指針,起始點,位移量);B)fseek飾,位移量,起始點); C) fseek(起始點,位移量,助;D)fseek(起始點,位移量,文件類型指針);7. fwrite函數(shù)的一般調(diào)用形式為_。 A) fwrite(buffer,c0unt,size,fp); B)fwrite(fp,size,c0unt,beffer); C)fwrite(fp,c0unt,size,buffer); D) fwrite(buffer,size,c0unt,fp)8. rewind函數(shù)的作用是 A)使位置指針重新返回文件的開頭B)將位置指針指向文件中所要求的特定位置 C)使位置指針指向文件的末尾D)使位置指針自動移至下一個字符的位置9. fgetc函數(shù)的作用是從指定的文件讀入一個字符,該文件的打開方式必須是_。 A)只讀B)追加C)讀或讀寫D) B和C都正確10.檢測文件位置指針是否在文件起始處的條件是。 A) fp- =0 B) $ell(fp)=0 C) fseek(fp,0,SEEKSET) D) fe0t(fp)11.若勿為文件指針,且文件已正確打開,則以下語句的輸出結(jié)果為_。 f seek(fp,0,SEEK-END); i二f tell(fp); printf(“i%dn“,i); A)勿所指文件的記錄長度B)勿所指文件的長度,以字節(jié)為單位 C)勿所指文件的長度,以位為單位D)勿所指文件的當(dāng)前位置,以字節(jié)為單位12.有如下程序: #include void main(void) FILE *fp; fp=fopen(“data.txt”,” w”); fprintf(fp, abc”); f close(fp); 若文本文件中data.txt原有內(nèi)容為:hell0,則運行以上程序后,文件data.txt中的內(nèi)容為 A) g00dabc B) abcd C) abc D) abcg00d13.設(shè)有宏定義命令:#define MUL 2+3,則表達式“5+MUL*5.0”的值為_。 A) 50.0 B)30.0 C)22.0 D) 20.014.下列說法正確的是 A)C程序必須在開頭用預(yù)處理命令#include B)在C語言中,預(yù)處理命令必須位于源程序的首部 C)在C語言中,預(yù)處理命令都以“#”開頭 D)C語言的預(yù)處理命令只能實現(xiàn)宏定義和條件編譯的功能15.有以下宏定義 #define N 2 #define Y(nx(N+1)*n) 則表達式“z=2*(N+Y(5);”的值為_。 A)34 B)70.0 C)無定值D)表達式有誤16.下列程序執(zhí)行結(jié)果為_。 #define M0D(x,Y)x%Y void main(void) int z,a=15,b=100; z=M0D(b,a); printf(.%dn”,z+); A)11 B)10 C)0 D)宏定義不合法二、填空題1.在C語言中,數(shù)據(jù)文件的存取方式為_。2.如果調(diào)用fopen函數(shù)不成功,則函數(shù)返回值為_;如果調(diào)用fclose函
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國電捕魚行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國電子學(xué)和和生物電子學(xué)行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國電動醫(yī)療車行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國生物纖維素面膜行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國環(huán)保涂料行業(yè)市場發(fā)展現(xiàn)狀及發(fā)展趨勢與投資策略研究報告
- 2025-2030年中國煤氣化行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國熱處理服務(wù)行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國激光脫毛器(LHR)行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國潛孔鉆頭行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030年中國游泳池圍墻行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 箱變供貨方案
- 全國九城市公共廁所男女廁位狀況調(diào)查報告
- 《話題:敘述角度和人稱》教學(xué)課件
- 高中語文必修下冊名師全冊教案合集【word版】
- 《有余數(shù)的除法》(數(shù)學(xué)西師版二年級下冊)課件
- 中型生產(chǎn)制造企業(yè)組織結(jié)構(gòu)
- 機械制造專業(yè)畢業(yè)設(shè)計(論文)-BCL-609型壓縮機結(jié)構(gòu)設(shè)計
- DB11 509-2017 房屋建筑修繕工程定案和施工質(zhì)量驗收規(guī)程
- 幼兒園小班繪本:《小黑捉迷藏》 課件
- 專家聘用協(xié)議書參考
- 板式家具生產(chǎn)工藝PPT通用通用課件
評論
0/150
提交評論