C語言程序設計模擬試題3(附答案)_第1頁
C語言程序設計模擬試題3(附答案)_第2頁
C語言程序設計模擬試題3(附答案)_第3頁
C語言程序設計模擬試題3(附答案)_第4頁
C語言程序設計模擬試題3(附答案)_第5頁
已閱讀5頁,還剩9頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、C語言程序設計模擬試卷三一、填空題。(每空2分,共16分)1 .在內存中,短整型變量占字節,單精度實型變量占字節,字符型變量占字節。2 .一個C語言文件是由若干個組成。3 .設有以下變量定義,并已賦確定的值charw;intx;floaty;doublez;則表達式:w*x+z-y所求得的數據類型為。4 .若x為int類型,請以最簡單的形式寫出與邏輯表達式!x等價的C語言關系表達式。5 .若有如下圖所示五個連續的int類型的存儲單元并賦值如下圖,a0的地址小于a4的地址。p和s是基類型為int的指針變量。請對以下問題進行填空。a0a1a2a3a42233445566(1)若p已指向存儲單元a1

2、。通過指針p,給s賦值,使s指向最后一個存儲單元a4的語句是:(2)若指針s指向存儲單元a2,p指向存儲單元a0,表達式s-p的值是。二、單項選擇題。(每題2分,共40分)1 .設有intx=11;則表達式(x+*1/3)的值是()。A)3B)4C)11D)122 .下列程序的輸出結果是()。A)3B)3.2C)0D)3.07main()doubled=3.2;intx,y;x=1.2;y=(x+3.8)/5.0;printf("%d,d*y);3 .下列程序執行后的輸出結果是(小數點后只寫一位)()。A) 666.06.0B)666.76.73 / 13C)666.06.7D)66

3、6.76.0main()doubled;floatf;longl;inti;i=f=l=d=20/3;printf("%d%ld%f%fn",i,l,f,d);scanf("%d",&d);4下列變量定義中合法的是()。A)short_a=1-.le-1;B)doubleb=1+5e2.5;C)longdo=0xfdaL;D)float2_and=1-e-3;5設intx=1,y=1;表達式(!x|y-)的值是()。A)0B)1C)2D)-16與y=(x>0?1:x<0?-1:0);的功能相同的A)if(x>0)y=1;else

4、if(x<0)y=-1;elsey=0;C)y=-1if(x)if(x>0)y=1;elseif(x=0)y=0;elsey=-1;7以下循環體的執行次數是(A)3B)2C)1main()inti,j;for(i=0,j=1;i<=j+1;i+=2,j-8以下敘述正確的是(A)do-whileif語句是()。B)if(x)if(x>0)y=1;elseif(x<0)y=-1;elsey=0;D)y=0;if(x>=0)if(x>0)y=1;elsey=-1;)。D)0)printf(“n%”d,i);)。語句構成的循環不能用其它語句構成的循環來代替。B

5、) do-while語句構成的循環只能用break語句退出。C) 用do-while語句構成的循環,在while后的表達式為非零時結束循環。D) 用do-while語句構成的循環,在while后的表達式為零時結束循環。9下列程序執行后的輸出結果是()。A)GB)HC)ID)Jmain()intx=f;printf(n”,“%Ac-+(ax+1);10執行下面的程序段后,變量k中的值為()。A)不定值B)33C)30D)10intk=3,s2;s0=k;k=s1*10;11 若已定義:inta=0,1,2,3,4,5,6,7,8,9,*p=a,i;其中00i09則a數組元素不正確的引用是()。A

6、)ap-aB)*(&ai)C)piD)a1012 下列程序執行后的輸出結果是()。A)6B)7C)8D)9voidfunc(int*a,intb)b0=*a+6;main()inta,b5;a=0;b0=3;func(&a,b);printf(“n%”d,b0);13 下列程序的運行結果是()。A)a=%2,b=%5B)a=2,b=5C)a=d,b=dD)a=%d,b=%d#include<stdio.h>main()printf("a=%d,b=%d,a,c);14 .下列程序執行后的輸出結果是()A)3B)6C)9D)隨機數main()inta33,*

7、p,i;p=&a00;for(i=0;i<9;i+)pi=i+1;printf("%d',a12); int a, b, c; ;5 / 1315 .設有數組定義:chararray="ChlnaSarray所占的空間為(A)4個字節B)5個字節C)6個字節D)7個字節16 .下列程序的輸出結果是()A)4B)6C)8D)10intb=2;intfunc(int*a)b+=*a;return(b);main()inta=2,res=2;res+=func(&a);printf("rafres);17 .有以下定義和語句inta32=1

8、,2,3,4,5,6,*p3;P0=a1;則*(p0+1)所代表的數組元素是()A)a01B)a10C)a11D)a1218 .下列程序的輸出結果是()。A)5B)6C)7D)8structabcmain()structabcs2=1,2,3,4,5,6;intt;t=s0.a+s1.b;printf(“%nd”,t);19 若有以下調用語句,則不正確的fun函數的首部是()。A)voidfun(intm,intx)B)voidfun(ints,inth41)C)voidfun(intp,int*s)D)voidfun(intn,inta)main()inta50,n;fun(n,&a

9、9);20 在C程序中,可把整型數以二進制形式存放到文件中的函數是()。A)fprintf函數B)fread函數C)fwrite函數D)fputc函數三、修改下列程序:(在程序出錯的語句下劃橫線并標號,把修改后的語句寫在程序下面的橫線上。)(每小題5分,共10分)I .下列給定程序的功能是:讀入一個整數(2<=k<=10000),打印它的所有質因子(即所有為素數的因子)。例如,若輸入整數2310,則應輸出2、3、5、7、II 。#include<conio.h>#include<stdio.h>*IsPrime(intn);inti,m;m=1;for(i=

10、2;i<n;i+)*if!(n%i)m=0;contitue;return(m);main()intj,k;clrscr();printf("nPleaseenteranintegernumberbetween2and10000:");scanf("d,k);printf("nnTheprimefactor(s)of%dis(are):",k);for(j=2;j<=k;j+)if(!(k%j)&(IsPrime(j)printf("%4d",j);getchar();)2,下列給定程序中,函數fun的功

11、能是:逐個比較a、b兩個字符串對應位置中的字符,把ASCII值大或等于的字符一次存放到c數組中,形成一個新的字符串。例如,若a中的字符串為aBCDeFgH,bH勺字符串為:ABcd,則c中的字符串為:aBcdeFgh#include<stdio.h>#include<string.h>*void;fun(char*p,char*q,char*c)*intk=1;*while(*p!=*q)if(*p<*q)ck=*q;elsec止*p;if(*p)p+;if(*q)q+;k+;K='0'*main()chara10="aBCDeFgh,b

12、10="ABcd',c80=""fun(a,b,c);printf("Thestringa:");puts(a);printf("Thestringb:");puts(b);printf("Theresult:");puts(c);四、閱讀下列程序,在程序后面的橫線上,寫出該程序的功能或給出運行結果(每小題4分,共16分)1. #include<stdio.h>voidmain()charch;intk=0;for(ch='A;ch<'H;ch+,k+)if(k%

13、2=0)printf("%c,ch);printf("n”);輸出結果:2. #include<stdio.h>voidmain()intk=0;charc='A;doswitch(c+)case'A':k+;break;case'B':k-;case'C:k+=2;break;case'D':k=k%2;break;case'E':k=k*10;break;default:k=k/3;k+;while(c<'G);printf("n",k);輸出結

14、果:3. #include<stdio.h>voidmain()inta6=12,4,17,25,27,16,b6=27,13,4,25,23,16,i,j;for(i=0;i<6;i+)for(j=0;j<6;j+)if(ai=bj)break;if(j<6)printf("d",ai);printf("n”);輸出結果:4. #include<stdio.h>voidmain()inta8=1,0,1,0,1,0,1,0,i;for(i=2;i<8;i+)ai+=ai-1+ai-2;for(i=0;i<8;

15、i+)printf("d",ai);printf("n”);輸出結果:五、按給出的程序功能,在空格處,填寫正確的程序語句,使程序完整。(每空1分,共6分)1.將兩個數從小到達輸出。main()floata,b,lscanf(,&a,&b);if(a>b)t=a;b=t;printf("Thenumsmalltobig:%d%d",a,b);2.輸出購買總價值和數量。#define30main();num=10;total=num*PRICE;printf("total=%d,num=%dn”,);六、按要求編寫下

16、列程序。(每題6分,共12分)1 .輸出下圖。* * * *yes;2.編程判斷輸入的正整數是否既是5又是7的整數倍數。若是,則輸出否則輸出no11 / 1311/13C語言程序設計模擬試卷三答案一、填空題。(每空2分,共16分)1. 2412. 函數3. double4. x=0|x=15. s=p+32二、單項選擇題。(每題2分,共40分)1.A2.C3.A4.A5.B6.A7.C8.D9.A10.A11.D12.A13.B14.B15.C16.B17.C18.B19.D20.C三、修改下列程序:(在程序出錯的語句下劃橫線并標號,把修改后的語句寫在程序下面的橫線上。)(每小題5分,共10分)1IsPrime(intn)if(!(n%i)scanf("d,&k);2 .voidfun(char*p,char*q,char*c)k=0;while(*p|*q)四、閱讀下列程序,在程序后面的橫線上,寫出該程序的功能或給出運行結果(每小題4分,共16分)1. ACEG2. k=83. 42527164. 1022571320五、按給出的程序功能,在空格處,填寫正確的程序語句,使程序完整。(每空1分,共6分)1. _t_“a=%f,b=%f'a=b2.PRICEintnum,totaltotal,num六、按要求編寫下列

溫馨提示

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

評論

0/150

提交評論