《C程序設計語言》課程模擬試題一講課講稿_第1頁
《C程序設計語言》課程模擬試題一講課講稿_第2頁
《C程序設計語言》課程模擬試題一講課講稿_第3頁
《C程序設計語言》課程模擬試題一講課講稿_第4頁
《C程序設計語言》課程模擬試題一講課講稿_第5頁
已閱讀5頁,還剩32頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、Good is good, but better carries it.精益求精,善益求善。C程序設計語言課程模擬試題一-C程序設計語言課程模擬試題(一題號一二三四五總分分數得分評卷人一、完成下列各題(共20分)1請用C語言的表達式表示下列代數式:(4分)(1)(2)x3sin550d(3)(e=2.71828)(4)(e=2.71828)2請指出下列各個說明中將dd說明成什么:(6分)(1)double*dd;(2)doubledd10;(3)double*dd10;(4)double(*dd)10;(5)double*dd();(6)double(*dd)();3設在程序的變量說明部分已作

2、了如下說明和初始化inti=3,j=8,k=11,x=0,t=0,*p=&i;chara=X,b=Y,c=Z;現若分別執行下列各條語句,請寫出各語句執行后變量x的值:(10分)(1)x=(cb)?k%i:k/i;(2)x=kj+2i;(3)x=!c&b2+a;(4)x*=c*a*p/b;(5)x=b+=c&+x;得分評卷人二、完成下列各題(共20分)1設在PC機上用TurboC執行下列語句,請寫出下列各語句的輸出結果:(5分)(1)printf(%d,strlen(ABCDtx04);(2)printf(%s,strcat(Beijing,China);(3)printf(%d,sizeof(

3、asin(0.5);(4)printf(%d,strcmp(Windows98,Windows95)MYFUNCFILE1.TXTFILE2.TXTFILE3.TXT問該程序的執行完成了什么工作?(10分)#includestdio.hmain(argv,argc)intargv;char*argc;FILE*fp;inti;char*ss;if(fp=fopen(argc1,a)=NULL)printf(nCantopenfile%s!,argc1);exit(1);ss=argc2;for(i=1;*(ss+i)!=0;i+)fputc(*(ss+i),fp);fclose(argc1);

4、得分評卷人三、完成下列各題(共20分)1請寫出下列程序的功能:#defineM200#includemain()intaM+1;inti,j,k=0;for(i=0;iM+1;i+)ai=0;a0=1;for(j=1;jM+1;j+)if(!aj-1)k+;for(i=j;i=M;i+=j)ai-1=1;printf(n%dn,k);2請寫出下列程序中各printf的輸出結果:#includeintx=1,y=2,z=3;voidfuncA(int,int);voidfuncB();voidmain()intx=6;y=5;funcA(x+,y);printf(%d,%d,%d,x,y,z);

5、voidfuncA(inty,intz)registerintc=10;intx;y=7;x=c;funcB();printf(%d,%d,%d,x,y,z);funcB();printf(%d,%d,%d,x,y,z);voidfuncB()staticinta=2;z=+a;printf(%d,%d,%d,x,y,z);得分評卷人四、閱讀下列程序(共20分)1請寫出下列程序中各printf的輸出結果:#includestdio.hmain()chara=MicrosoftWindows98;intb4=1,2,3,4,11,12,13,14,21,22,23,24;int*p;char*c

6、=a;printf(n%c,%c,a5,*c);c+=5;printf(%c,%c,*c,*(c+3);printf(%d,%d,*b1,(*b)2);p=b1;printf(%d,%d,p3,*(p+2);printf(%d,%d,*(b1+1),*(*b+10);2請寫出下列程序的輸出結果:#includevoidsort(cc,m)char*cc;intm;char*pp;inti,j,k;for(i=1;im-1;i+)k=i;for(j=i+1;jm;j+)if(strcmp(cck,ccj)=0)k=j;if(k!=i)pp=cci;cci=cck;cck=pp;main()int

7、i;char*tt=America,Austria,Russia,Britain,Japan,France;sort(tt,5);for(i=0;i=5;i+)i5?printf(%s,tti):printf(%s,tti);得分評卷人五、完成下列各題(共20分)1請補充下列程序中的空白處,使其能輸出下圖所示的圖形。#defineM10#includemain();for(i=0;i6;i+)printf(n);for(j=0;j=M/2-i;j+)printf();for(k=0;k=;k+)printf(*);for(i=0;i=5;i+);for(j=0;j+)printf();for(

8、k=0;k+)printf(*);2下列程序先輸入一個66的矩陣,然后再輸入一個整型變量n,若n6,則對66的矩陣中的左上角的nn矩陣進行轉置,請編寫出實現這一要求的函數transf()。#defineM6#includemain()charccMM;inti,j,n;for(i=0;iM;i+)for(j=0;jM)exit(0);transf(cc,n);for(i=0;iM;i+)printf(nn);for(j=0;j3*v(5)u|v3設在程序的變量說明部分已作了如下說明和初始化inti=4,j=5,k=6,x=0,t=0,*p=&i;chara=X,b=Y,c=Z;現若分別執行下列

9、各條語句,請寫出各語句執行后變量t的值:(10分)(1)t=k*p;(2)t=(b-=a)?i:j;(3)t=!c&cji;(5)t=+bc&t=5;得分評卷人二、完成下列各題(共20分)1設在PC機上用TurboC執行下列語句,請寫出下列各語句的輸出結果:(5分)(1)printf(“%d”,strlen(“C語言程序設計”);(2)printf(“%d”,strcmp(“Windows98”,”Windows95”)0?1:-1);(3)printf(“%d”,sizeof(“xyzt042”);(4)printf(“%d”,isalpha(P);(5)printf(“%s”,strupr

10、(“Jiangsu”);2請指出下列兩個程序段在什么情況下等價,在什么情況下不等價:(5分)inti,sum=0;inti,sum=0;scanf(%d,&i);scanf(%d,&i);while(i=100)dosum+=i;sum+=i;i+;i+;while(iMYFFA.TXTFB.TXT問該程序執行完成了什么工作?(10分)#includestdio.hmain(argc,argv)intargc;char*argv;FILE*fpr,*fpw;if(fpr=fopen(argv2,r)=NULL)printf(nFile%snotfound!,argv2);exit(1);if(

11、fpw=fopen(argv1,a)=NULL)printf(nCantopenfile%s!,argv1);exit(1);dofputc(fgetc(fpr),fpw);while(!feof(fpr);得分評卷人三、完成下列各題(共20分,每題10分)1修改下列程序段,去掉其中的break、continue,保持與原程序段等價。charc=MicroSoftWindows98;char*p;inti;p=c;i=0;while(pi!=0)if(*(p+i)=)break;if(isupper(pi)i+=1;continue;pi=*(p+i)-32;i+;2請寫出下列程序的輸出結果:

12、#includestdio.hmain()char*cc=AB911STUDENT;inti,c;for(i=1;(c=cci)!=0;i+)switch(c)caseA:putchar(c+1);i=i+5;caseB:putchar(c+4);continue;case9:putchar(c);break;caseS:while(c=cc+i)!=0);continue;case:putchar(X);break;case1:case9:putchar(Z);continue;putchar(*);得分評卷人四、閱讀下列程序(共20分,每題10分)1請寫出下列程序中各printf的輸出結果

13、:#includestdio.hintx=5,y=6,z=7;voidfuna(int,int);voidfunb();voidmain()intz=10;y=11;printf(n%d,%d,%d,x,y,z);funa(x,y);printf(%d,%d,%d,x,y,z);voidfuna(inta,intb)intz=12;y=a;printf(%d,%d,%d,x,y,z);x=b;funb();printf(%d,%d,%d,x,y,z);voidfunb()inty=30;printf(%d,%d,%d,x,y,z);2請寫出運行下列程序后的輸出結果:#defineNULL0#i

14、ncludestdio.hstructmylistchard1,d2;structmylist*next;typedefstructmylistNode;typedefstructmylist*LINK;voidplist();LINKbuildl();main()/*函數定義*/LINKhead;head=buildl(ABCDEFGHIJ);plist(head);LINKbuildl(cc)/*函數定義*/char*cc;LINKhead,tail;intk;if(*cc)head=(LINK)malloc(sizeof(Node);head-d1=cc0;head-d2=cc1;tai

15、l=head;for(k=2;cck!=0;k+=2)tail-next=(LINK)malloc(sizeof(Node);tail=tail-next;tail-d1=*(cc+k)+1;tail-d2=*(cc+k+1)+1;tail-next=NULL;return(head);voidplist(xx)/*函數定義*/LINKxx;if(xx!=NULL)if(xx-next!=NULL)printf(%c-,xx-d1);elseprintf(%cn,xx-d1);plist(xx-next);得分評卷人五、完成下列各題(共20分,每題10分)1、請編寫一完整的C程序把一個二維數組

16、的行列元素互換,構成一個新的二維數組。設原數組為4行3列,其中各數據元素由用戶輸入,要求分別輸出原數組和新數組。2、請補充下列程序中的空白處,使其能將name數組中的字符串按字典序從大到小輸出。#includestdio.hmain()voidsort();inti,n=5;char*name=MS-DOS,Windows,UCDOS,CCDOS,Unix;sort(name,n);for(i=0;in;i+)printf(n%s,);voidsort(cc,m)char*cc;intm;inti,j,k;for(i=0;im-1;i+)k=i;for(j=i+1;jm;j+)if()k=j;if()pp=cci;cci=cck;cck=pp;試卷代號:座

溫馨提示

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

評論

0/150

提交評論