《C語言程序設計》綜合練習試卷(一_第1頁
《C語言程序設計》綜合練習試卷(一_第2頁
《C語言程序設計》綜合練習試卷(一_第3頁
《C語言程序設計》綜合練習試卷(一_第4頁
《C語言程序設計》綜合練習試卷(一_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、C語言程序設計綜合練習試卷(一) 試題一 判斷題 (每題1分,共10 分)(用T表示正確、F表示不正確)1 C的任何類型數(shù)據(jù)在計算機內(nèi)部都是以二進制形式存儲的。2 按格式符“%d”輸出float類型變量時,截斷小數(shù)位后取整輸出。3 字符數(shù)組中字符串可以整體輸入輸出。4 傳值調(diào)用的形參只有在被調(diào)用時,才被創(chuàng)建(分配存儲單元)。5 C語言中數(shù)組名是指針常量。6 結(jié)構(gòu)體類型中的各成員項數(shù)據(jù)類型可以不相同。7 函數(shù)必須有返回值,否則不能使用函數(shù)。8 C程序執(zhí)行總是從第一個函數(shù)開始。9 可以用關(guān)系運算符對字符串進行大小比較。10 For循環(huán)只能用于循環(huán)次數(shù)已確定的場合。試題二 單選題(每題1分 共15分

2、)從A)、B)、C)、D)四個選項中,選出正確的一項。1.以下程序運行后,輸出結(jié)果是 #includestdio.hvoid main( ) char s10=abcde,*p; p=s+2; printf(%s n,p);A) cde B)字符c的ASCII碼值 C)字符c的地址 D)出錯2.對下面函數(shù)f,寫出f(f(3)的值。int f(int x) static int k=0; x+=k-; return x; A) 5 B) 3 C) 2 D) 43.以下程序運行后,輸出結(jié)果是#define PT 5#define S(x) PT*x#includestdio.hvoid main(

3、 ) int a=1,b=2; printf (%dn,S(a+b); A) 15 B) 7 C) 8 D) 無正確答案4. 若有 float a34; 正確的引用第3行第1列的元素是 A) *(a+2) B) *(*a+2) C) a31 D) a305.語句printf(%.1f,%dn,10./4,10/8);的輸出是A) 2.5, 1.25 B) 2.5, 1 C) 1, 1.25 D) 2, 1.256.下面對數(shù)組定義正確的是A) int a ; B)int n=5,an;C) int n, an=1,2,3,4,5; D) int a10/2;7.若有定義:struct perso

4、n char name9; int age; ; person st10=john,17,paul,19,Mary,18;能輸出字母M的語句是A) printf(%c,); B) printf(%c,1); C) printf(%c,1); D) printf(%c,0);8不能把字符串:“Hello!”賦給數(shù)組b的語句是A) char b10=H,e,l,l,o,!,0;B) char b10;b=Hello!;C) char b10;strcpy(b,Hello!);D) char b10=Hello!;9若有 int a10

5、=1,2,3,4,5,6,7,8,9,10,*p=a;則表達式值為6的是A)*p+6 B)*(p+6) C)*p+=5 D)p+510. 已知:int *p,m=5, n; 正確的程序段是A) p=&n; scanf( %d,&p); B) p=&n; scanf( %d, *p); C) scanf(%d,&n); *p=n; D) p=&n; *p=m; 11. 下面程序的運行結(jié)果是:#includestdio.hvoid main( ) int x4= 2,4,6,8,*p, *pp; p=x; pp=&p; printf(%d,*p); printf(%3d,*pp); A) 4 4

6、B) 2 4 C) 2 2 D) 4 612下面程序執(zhí)行后a的值是#includestdio.hvoid main( ) int a,k=4,m=6,*p1=&k,*p2=&m; a=p1!=&m; printf(%dn,a); A)4 B)1 C)0 D)運行時出錯,a無定值13.下列語句序列中,能夠?qū)⒆兞縰、s中最大值賦給變量t的是A) if (us) t=u; t=s; B) t=s; if (us) t=u;C) if (us) t=s; else t=u; D) t=u; if (us) t=s;14. 若有 int a=7,b=12;則語句printf(%d,a&b);輸出結(jié)果A)

7、 19 B) 9 C) 5 D) 415若有 FILE *fp; 以“只讀”方式打開文本文件a:aa.dat,下列語句中正確的是A) fp=fopen(a:aa.dat,w); B) fp=fopen(a:aa.dat,r);C) fp=fopen(a:aa.dat,w);D) fp=fopen(a:aa.dat,r);試題三 閱讀程序題( 每題4分,共24分) 寫出讀下列程序的輸出結(jié)果1. #includevoid main() char ch; for(ch=a;chf; ch+) putchar(ch-32); putchar(ch); 2. #includestdio.hvoid ma

8、in() int i; for( i=1;i=4;i+) if (i%3)=0) printf($); continue; else printf(*); printf(#); 3. #include stdio.hvoid main()int i;for(i=1;i5;i+) switch(i%5) case 5:printf( 5); case 3: printf( 3); case 1:printf( 1); default:printf(%2d,i); 4. #includestdio.hvoid main() int x10; int t,i,j,m=1; for(i=0;i10;i

9、+) m=-m; xi=m*i; for(i=1;i=0; j-) if(txj) break; else xj+1=xj; xj+1=t; for(i=0;i10;i+) printf(%3d,xi);5 #includevoid main() void swap1(int x ,int y ); void swap2(int *x,int *y); void swap3(int &x,int &y); int a1,b1,a2,b2,a3,b3; a1=a2=a3=10; b1=b2=b3=5; swap1(a1,b1); swap2(&a2,&b2); swap3(a3,b3); pri

10、ntf(a1=%d b1=%dn,a1,b1); printf(a2=%d b2=%dn,a2,b2); printf(a3=%d b3=%dn,a3,b3); void swap1(int x,int y) int t; t=x;x=y;y=t; void swap2(int *x,int *y) int t; t=*x; *x=*y; *y=t; void swap3(int &x,int &y) int t; t=x; x=y; y=t; 6 struct node int num;node *next; ;int fun( node *h) int s,n=0,i; node *p=h

11、 ; while(p!=NULL) for(s=0,i=1;inum;i+) if (p-num)%i=0) s+=i; if (s=p-num) n+; p=p-next; return n; head 寫出執(zhí)行語句“printf(“%dn”,fun(head);”的輸出結(jié)果。head是頭指針,以head為頭指針的鏈表各結(jié)點的當前值如下所示:285647 NULL 試題四 程序填空題 ( 每空2分,共24分)1. 下列程序讀入時間數(shù)值,將其加一秒后輸出,時間格式為hh:mm:ss,即時:分:秒,當小時數(shù)等于24時,置為0.#include struct stime int hour,minu

12、te,second; ; void main(void) stime time;scanf(“%d:%d:%d”, 1 ); time.second+; if(time.second=60) 2 ; time.second=0; if (time.minute=60) time.hour+; time.minute=0; if( 3 ) time.hour=0; printf(“%d:%d:%d”,time.hour,time.minute,time.second); 2以下程序建立一個如下所示的二維數(shù)組,并按以下格式輸出。1 0 0 0 10 2 0 2 00 0 3 0 00 4 0 4

13、05 0 0 0 5#includestdio.h void main() int a55=0; int *p5,i,j; for(i=0;i5;i+) pi= 1 ; for(i=0;i5;i+) *(pi+ i )=i+1; *(pi+ 2 )=i+1; for(i=0;i5;i+) for(j=0;j5;j+) printf(%2d,pij); 3 ; 3. 以下程序的功能是:從鍵盤上輸入一行字符串(不超過80個字符), 把該字符串中的所有小寫字母改寫后依次輸出到c:bb.txt文件中(其它字符不輸出)。小寫字母改寫規(guī)則如下:a改b, b改c, x改y,y改z, z改a。#include

14、#includevoid main() FILE *fp; char str81; int i=0; if (fp=fopen( 1 )=NULL) printf(cant open the file.n); exit(0); gets(str); while ( stri!=0 ) if( 2 )if (stri=z) stri=a;else stri=stri+1; 3 i+; fclose(fp);4. 以下程序的功能是: 輸出 2m,3n | m=1,n=1中由小到大排列的前32項數(shù),并且每行8個數(shù)。(如 2,3,4,8,9,16,27,32 ) #includestdio.hvoid main()long m2,n3;int k;m2=2;n3=3;k=0;while(k32)if ( 1 )printf( %ld,m2);m2*=2; els

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論