《C語言程序設計》練習測試題及答案_第1頁
《C語言程序設計》練習測試題及答案_第2頁
《C語言程序設計》練習測試題及答案_第3頁
《C語言程序設計》練習測試題及答案_第4頁
《C語言程序設計》練習測試題及答案_第5頁
已閱讀5頁,還剩23頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、精選優質文檔-傾情為你奉上專科C語言程序設計練習測試題及答案一、選擇題(下列各題有四個選項,只有一個答案是正確的,請選出正確選項)1.一個C程序的執行是從A。A) 本程序的main函數開始,到main函數結束B) 本程序文件的第一個函數開始,到本程序文件的最后一個函數結束C) 本程序的main函數開始,到本程序文件的最后一個函數結束D) 本程序文件的第一個函數開始,到本程序main函數結束2.以下敘述正確的是C。A) 在C程序中,main函數必須位于程序的最前面B) C程序的每行中只能寫一條語句C) C語言本身沒有輸入輸出語句D) 在對一個C程序進行編譯的過程中,可發現注釋中的拼寫錯誤3.以下

2、敘述不正確的是D。A) 一個C源程序可由一個或多個函數組成B) 一個C源程序必須包含一個main函數C) C程序的基本組成單位是函數D) 在C程序中,注釋說明只能位于一條語句的后面4.C語言規定:在一個源程序中,main函數的位置C。A) 必須在最開始B) 必須在系統調用的庫函數的后面C) 可以任意D) 必須在最后5.一個C語言程序是由B。A) 一個主程序和若干子程序組成B) 函數組成C) 若干過程組成D)若干子程序組成6.在C語言中(以16位PC機為例),5種基本數據類型的存儲空間長度的排列順序為A。A) char<int<long int<=float<double

3、B) char=int<long int<=float<doubleC) char<int<long int=float=doubleD) char=int=long int<=float<double7.若x、i、j和k都是int型變量,則執行下面表達式后x的值為C。x=(i=4,j=16,k=32)A)4B)16C)32D)528.假設所有變量均為整型,則表達式(a=2,b=5,b+,a+b)的值是B。A)7B)8C)6D)29.下列四組選項中,均不是C語言關鍵字的選項是A。A) defineIFtypeB) getccharprintfC) in

4、cludescanfcaseD) whilego pow10.下列四個選項中,均是C語言關鍵字的選項是B。A) autoenumincludeB) switchtypedefcontinueC) signedunionscanfD) if structtype11.下面四個選項中,均不合法的用戶標識符的選項是C。A) AP_0doB) floatla0_AC) b-agotointD) _123tempINT12.C語言中的標識符只能由字母、數字和下劃線三種字符組成,且第一個字符C。A) 必須為字母B) 必須為下劃線C) 必須為字母或下劃線D) 可以是字母、數字和下劃線中任一種字符13.下面四

5、個選項中,均是合法整型常量的選項是A。A) 160-0xffff011B) -0xcdf01a0xeC) -01986,0120668D) -0x48a2e50x14.下面四個選項中,均是不合法的整型常量的選項是D。A) -0f1-0xffff0011B) -0Xcdf01712,456C) -0189995e2D) -0x48eg-06803f15.下面四個選項中,均是不合法的浮點數的選項是B。A) 1600.12e3B) 1232e4.2.e5C) -.18123e40.0D) -e3.2341e316.下面四個選項中,均是合法浮點數的選項是B。A) +1e+15e-9.403e2B) -

6、.6012e-4-8e5C) 123e1.2e-.4+2e-1D) -e3.2345.e-017.下面四個選項中,均是合法轉義字符的選項是A。A) nB) 017”C) 018fxabD) 0101x1f18.下面四個選項中,均是不合法的轉義字符的選項是B。A) ”xfB) 1011aC) 011fD) abc101 xlf19.下面正確的字符常量是C。A)“c”B) C) WD) 20.下面四個選項中,均是不正確的八進制數或十六進制數的選項是D。A) 0160x8f018B) 0abc0170xaC) 010-0x110x16D) 0a127ff-12321.下面四個選項中,均是正確的八進制

7、數或十六進制數的選項是C。A) -100x8f-011B) 0abc-0170xcC) 0010-0x110xf1D) 0a12-0x123-0xa22.下面四個選項中,均是正確的數值常量或字符常量的選項是D。A) 0.00f8.9e&B) “a”3.9E-2.51e1”C) 30110xFF000aD) +0110xabcd2e250.23.下面不正確的字符串常量是A。A)abcB)“1212”C)“0”D)“”24.對應以下各代數式中,若變量a和x均為double類型,則不正確的C語言表達式是C。代數式C語言表達式A) exp(x*x/2)/sqrt(2*3.14159)B) 1.

8、0/2.0*(a*x+(a+x)/(4*a)C) sqrt(pow(sin(x*3.14159/180),2.5)D) x*x-exp(5.0)25.若有代數式,則不正確的C語言表達式是C。A) a/b/c*e*3B) 3*a*e/b/cC) 3*a*e/b*cD) a*e/c/b*326.已有如下定義和輸入語句,若要求a1,a2,c1,c2的值分別為10,20,A和B,當從第一列開始輸入數據時,正確的數據輸入方式是D。int a1,a2; char c1,c2;scanf(“%d%d”,&a1,&a2);scanf(“%c%c”,&c1,&c2);A)1020

9、AB<CR>B)10 20<CR> AB<CR>C)10 20 AB<CR>D)10 20AB<CR>27.已有程序段和輸入數據的形式如下,程序中輸入語句的正確形式應當為D。main()int a; float f;printf(“nInput number:”);輸入語句printf(“nf=%f,a=%dn”,f,a);Input number:4.5 2<CR>A) scanf(“%d,%f”,&a,&f);B) scanf(“%f,%d”,&f,&a);C) scanf(“%d%f”

10、,&a,&f);D) scanf(“%f%d”,&f,&a);28.根據定義和數據的輸入方式,輸入語句的正確形式為B。已有定義:float f1,f2;數據的輸入方式:4.523.5A) scanf(“%f,%f”,&f1,&f2);B) scanf(“%f%f”,&f1,&f2);C) scanf(“%3.2f %2.1f”,&f1,&f2);D) scanf(“%3.2f%2.1f”,&f1,&f2);29.閱讀以下程序,當輸入數據的形式為25,13,10<CR>正確的輸出結果為D。

11、main()int x,y,z;scanf(“%d%d%d”,&x,&y,&z);printf(“x+y+z=%dn”,x+y+z);A) x+y+z=48B) x+y+z=35C) x+z=35D) 不確定值30.閱讀以下程序,若運行結果為如下形式,輸入輸出語句的正確內容是B。main()int x; float y;printf(“enter x,y:”);輸入語句輸出語句輸入形式enter x,y:2 3.4輸出形式x+y=5.40A) scanf(“%d,%f”,&x,&y);printf(“nx+y=%4.2f”,x+y);B) scanf(“

12、%d%f”,&x,&y);printf(“nx+y=%4.2f”,x+y);C) scanf(“%d%f”,&x,&y);printf(“nx+y=%6.1f”,x+y);D) scanf(“%d%3.1f”,&x,&y);printf(“nx+y=%4.2f”,x+y);31.以下說法正確的是D。A) 輸入項可以為一實型常量,如scanf(“%f”,3.5);B) 只有格式控制,沒有輸入項,也能進行正確輸入,如scanf(“a=%d,b=%d”);C) 當輸入一個實型數據時,格式控制部分應規定小數點后的位數,如scanf(“%4.2f”,&am

13、p;f);D) 當輸入數據時,必須指明變量的地址,如scanf(“%f”,&f);32.根據下面的程序及數據的輸入方式和輸出形式,程序中輸入語句的正確的形式應該為A。main()char ch1,ch2,ch3;輸入語句printf(“%c%c%c”,ch1,ch2,ch3);輸入形式:A B C輸出形式:A BA) scanf(“%c%c%c”,&ch1,&ch2,&ch3);B) scanf(“%c,%c,%c”,&ch1,&ch2,&ch3);C) scanf(“%c %c %c”,&ch1,&ch2,&ch

14、3);D) scanf(“%c%c”,&ch1,&ch2,&ch3);33.有輸入語句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);為使變量a的值為1,b為3,c為2,從鍵盤輸入數據的正確形式應當是D。A) 132<回車>B) 1,3,2<回車>C) a=1 b=3 c=2<回車>D) a=1,b=3,c=2<回車>34.以下能正確地定義整型變量a,b和c并為其賦初值5的語句是A。A)int a=b=c=5;B)int a,b,c=5;C)a=5,b=5,c=5;D)a=b=c

15、=5;35.已知ch是字符型變量,下面不正確的賦值語句是A。A)ch=a+b;B)ch=0;C)ch=7+9;D)ch=5+9;36.邏輯運算符兩側運算對象的數據類型B。A) 只能是0或1B) 只能是0或非0正數C) 只能是整型或字符型數據D) 可以是任何類型的數據37.以下關于運算符優先順序的描述中正確的是C。A) 關系運算符<算術運算符<賦值運算符<邏輯與運算符B) 邏輯與運算符<關系運算符<算術運算符<賦值運算符C) 賦值運算符<邏輯與運算符<關系運算符<算術運算符D) 算術運算符<關系運算符<賦值運算符<邏輯與運算

16、符38.下列運算符中優先級最高的是B。A)<B)+C)&&D)!=39.能正確表示“當x的取值在1,10和200,210范圍內為真,否則為假”的表達式是C。A) (x>=1)&&(x<=10)&&(x>=200)&&(x<=210)B) (x>=1)|(x<=10)|(x>=200)|(x<=210)C) (x>=1)&&(x<=10)|(x>=200)&&(x<=210)D) (x>=1)|(x<=10)&a

17、mp;&(x>=200)|(x<=210)40.表示圖中坐標軸上陰影部分的正確表達式是C。X a b cA) (x<=a)&&(x>=b)&&(x<=c)B) (x<=a)|(b<=x<=c)C) (x<=a)|(x>=b)&&(x<=c)D) (x<=a)&&(b<=x<=c)41.判斷char型變量ch是否為大寫字母的正確表達式是C。A)A<=ch<=ZB)(ch>=A)&(ch<=Z)C)(ch>

18、=A)&&(ch<=Z)D)(A<=ch)AND(Z>=ch)42.設x、y和z是int型變量,且x=3,y=4,z=5,則下面表達式中值為0的是D。A) x&&yB) x<=yC) x|y+z&&y-zD) !(x<y)&&!z|1)43.已知x=43,ch=A,y=0;則表達式(x>=y&&ch<B&&!y)的值是C。A)0B)語法錯C)1D)“假”44.若希望當A的值為奇數時,表達式的值為“真”,A的值為偶數時,表達式的值為“假”,則以下不能滿足要求的

19、表達式是C。A)A%2=1B)!(A%2=0)C)!(A%2)D)A%245.設有:int a=1,b=2,c=3,d=4,m=2,n=2;執行(m=a>b)&&(n=c>d)后n的值為B。A)1B)2C)3D)446.設有程序段int k=10;while(k=0) k=k-1;則下面描述中正確的是C。A)while循環執行10次B)循環是無限循環C)循環體語句一次也不執行D)循環體語句執行一次47.設有以下程序段int x=0,s=0;while(!x!=0) s+=+x;printf(“%d”,s);則B。A)運行程序段后輸出0B)運行程序段后輸出1C)程序段

20、中的控制表達式是非法的D)程序段執行無限次48.語句while(!E);中的表達式!E等價于A。A)E=0B)E!=1C)E!=0D)E=149.下面程序段的運行結果是A。a=1; b=2; c=2;while(a<b<c) t=a; a=b; b=t; c-;printf(“%d,%d,%d”,a,b,c);A)1,2,0B)2,1,0C)1,2,1D)2,1,150.下面程序段的運行結果是D。x=y=0;while(x<15) y+,x+=+y;printf(“%d,%d”,y,x);A)20,7B)6,12C)20,8D)8,2051.下面程序的功能是在輸入的一批正整數

21、中求出最大者,輸入0結束循環,請選擇填空。B#include <stdio.h>main()int a,max=0;scanf(“%d”,&a);while(【1】)if(max<a) max=a;scanf(“%d”,&a);printf(“%d”,max);【1】 A)a=0B)aC)!a=1D)!a52.下面程序的運行結果是C。#include <stdio.h>main()int num=0;while(num<=2)num+;printf(“%dn”,num);A)1B)1C)1D)1 2 2 2 3 3 453.若運行以下程序時,

22、從鍵盤輸入2473<回車>,則下面程序的運行結果是A。#include <stdio.h>main()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”);A)B)C)D)54.C語言中while和do-while循環的主要區別是A。A) do-while的循環體至少無條件執行一次B) while的循環控制條件比do

23、-while的循環控制條件嚴格C) do-while允許從外部轉到循環體內D) do-while的循環體不能是復合語句55.以下能正確計算1×2×3××10的程序段是C。A)doi=1; s=1;B)doi=1; s=0;s=s*i; s=s*i; i+; i+; while(i<=10); while(i<=10);C)i=1; s=1;D)i=1; s=0; dos=s*i; dos=s*i; i+; i+; while(i<=10); while(i<=10);56.下面有關for循環的正確描述是D。A) for循環只能用于

24、循環次數已經確定的情況B) for循環是先執行循環體語句,后判斷表達式C) 在for循環中,不能用break語句跳出循環體D) for循環的循環體語句中,可以包含多條語句,但必須用花括號括起來57.對for(表達式1;表達式3)可理解為B。A)for(表達式1;0;表達式3)B)for(表達式1;1;表達式3)C)for(表達式1; 表達式1;表達式3)D)for(表達式1; 表達式3;表達式3)58.若i為整型變量,則以下循環執行次數是B。for(i=2;i=0;) printf(“%d”,i-);A)無限次B)0次C)1次D)2次59.以下for循環的執行次數是C。for(x=0,y=0;

25、(y=123)&&(x<4);x+)A)是無限循環B)循環次數不定C)執行4次D)執行3次60.以下不是無限循環的語句為A。A) for(y=0,x=1;x>+y;x=i+) i=xB) for(;x+=i);C) while(1) x+; D) for(i=10;i-) sum+=i;61.下面程序段的運行結果是C。for(y=1;y<10;) y=(x=3*y,x+1),x-1);printf(“x=%d,y=%d”,x,y);A)x=27,y=27B)x=12,y=13C)x=15,y=14D)x=y=2762.下面程序段的運行結果是D。for(x=3;

26、x<6;x+) printf(x%2)?(“*%d”):(“#%dn”),x);A)*3B)#3C)#3D)*3#4 #4 *4 *4#5 *5 *5 #563.下列程序段不是死循環的是C。A) int i=100;while(1)i=i%100+1;if(i>100) break;B) for(;);C) int k=0;do +k; while(k>=0);D) int s=36;while(s); -s;64.執行語句for(i=1;i+<4;);后變量i的值是C。A)3B)4C)5D)不定65.有一堆零件(100到200之間),如果分成4個零件一組的若干組,則多

27、2個零件;若分成7個零件一組,則多3個零件;若分成9個零件一組,則多5個零件。下面程序是求這堆零件總數,請選擇填空。_D_#include <stdio.h>main()int i;for(i=100;i<200;i+)if(i-2)%4=0)if(!(i-3)%7)if(【1】)printf(“%d”,i);A)i%9=5B)i%9!=5C)(i-5)%9!=0D)i%9=566.在C語言中,引用數組元素時,其數組下標的數據類型允許是C。A)整型常量B)整型表達式C)整型常量或整型表達式D)任何類型的表達式67.以下對一維整型數組a的正確說明是D。A)int a(10);B

28、)int n=10,an;C)int n;D)#define SIZE 10 scanf(“%d”,&n); int aSIZE; int an;68.若有說明:int a10;則對a數組元素的正確引用是D。A)a10B)a3.5C)a(5)D)a10-1069.在C語言中,一維數組的定義方式為:類型說明符 數組名A;A)常量表達式B)整型表達式C)整型常量 或整型表達式D)整型常量70.以下能對一維數組a進行正確初始化的語句是C。A)int a10=(0,0,0,0,0);B)int a10=;C)int a=0;D)int a10=10*1;71.以下對二維數組a的正確說明是C。A

29、)int a3;B)float a(3,4);C)double a14;D)float a(3)(4);72.若有說明:int a34;則對a數組元素的正確引用是C。A)a24B)a1,3C)a1+10D)a(2)(1)73.若有說明:int a34;則對a數組元素的非法引用是D。A)a02*1B)a13C)a4-20D)a0474.以下能對二維數組a進行正確初始化的語句是B。A) int a2=1,0,1,5,2,3;B) int a3=1,2,3,4,5,6;C) int a24=1,2,3,4,5,6;D) int a3=1,0,1,1,1;75.以下不能對二維數組a進行正確初始化的語句

30、是C。A) int a23=0;B) int a3=1,2,0;C) int a23=1,2,3,4,5,6;D) int a3=1,2,3,4,5,6;76.若有說明:int a34=0;則下面正確的敘述是D。A) 只有元素a00可得到初值0B) 此說明語句不正確C) 數組a中各元素都可得到初值,但其值不一定為0D) 數組a中每個元素均可得到初值077.若有說明:int a4=0,0;則下面不正確的敘述是D。A) 數組a的每個元素都可得到初值0B) 二維數組a的第一維大小為1C) 因為二維數組a中第二維大小的值除以初值個數的商為1,故數組a的行數為1D) 只有元素a00和a01可得到初值0,

31、其余元素均得不到初值078.若有說明:int a34;則數組a中各元素B。A) 可在程序的運行階段得到初值0B) 可在程序的編譯階段得到初值0C) 不能得到確定的初值D) 可在程序的編譯或運行階段得到初值079.以下各組選項中,均能正確定義二維實型數組a的選項是C。A)float a34;B)float a(3,4); float a4; float a34; float a3=1,0; float a=0;0;C)float a34;D)float a34; static float a4=0,0; float a3; auto float a4=0,0,0; float a4;80.下面程

32、序A(每行程序前面的數字表示行號)。1 main()2 3 float a3=3*0;4 int i;5 for(i=0;i<3;i+) scanf(“%d”,&ai);6 for(i=1;i<3;i+) a0=a0+ai;7 printf(“%dn”,a0);8 A)第3行有錯誤B)第7行有錯誤C)第5行有錯誤D)沒有錯誤81.下面程序C(每行程序前面的數字表示行號)。1 main()2 3 float a10=0.0;4 int i;5 for(i=0;i<3;i+) scanf(“%d”,&ai);6 for(i=1;i<10;i+) a0=a0+

33、ai;7 printf(“%fn”,a0);8 A)沒有錯誤B)第3行有錯誤C)第5行有錯誤D)第7行有錯誤82.下面程序中有錯誤的行是D(每行程序前面的數字表示行號)。1 main()2 3 float a3=1;4 int i;5 scanf(“%d”,&a);6 for(i=1;i<3;i+) a0=a0+ai;7 printf(“a0=%dn”,a0);8 A)3B)6C)7D)583.下面程序D(每行程序前面的數字表示行號)。1 main()2 3 float a3=0;4 int i;5 for(i=0;i<3;i+) scanf(“%d”,&ai);6

34、 for(i=1;i<4;i+) a0=a0+ai;7 printf(“%dn”,a0);8 A)沒有錯誤B)第3行有錯誤C)第5行有錯誤D)第6行有錯誤84.若二維數組a有m列,則計算任一元素aij在數組中位置的公式為D。(假設a00位于數組的第一個位置上。)A)i*m+jB)j*m+iC)i*m+j-1D)i*m+j+185.對以下說明語句的正確理解是B。int a10=6,7,8,9,10;A) 將5個初值依次賦給a1至a5B) 將5個初值依次賦給a0至a4C) 將5個初值依次賦給a6至a10D) 因為數組長度與初值的個數不相同,所以此語句不正確86.以下不正確的定義語句是B。A)

35、 double x5=2.0,4.0,6.0,8.0,10.0;B) int y5=0,1,3,5,7,9;C) char c1=1,2,3,4,5;D) char c2=x10,xa,x8;87.若有說明:int a3=1,2,3,4,5,6,7;則a數組第一維的大小是B。A)2B)3C)4D)無確定值88.若二維數組a有m列,則在aij前的元素個數為B。A)j*m+iB)i*m+jC)i*m+j-1D)i*m+j+189.定義如下變量和數組:int k;int a33=1,2,3,4,5,6,7,8,9;則下面語句的輸出結果是A。for(k=0;k<3;k+) printf(“%d”

36、,ak2-k);A)3 5 7B)3 6 9C)1 5 9D)1 4 790.若有以下程序段: int a=4,0,2,3,1; i,j,t;for(i=1;i<5;i+)t=ai; j=i-1;while(j>=0&&t>aj) aj+1=aj; j-; aj+1=t; 則該程序段的功能是B。A) 對數組a進行插入排序(升序)B) 對數組a進行插入排序(降序)C) 對數組a進行選擇排序(升序)D) 對數組a進行選擇排序(降序)二、填空題1、在C語言中(以16位PC機為例),一個char型數據在內存中所占的字節數為【1】;一個int型數據在內存中所占的字節數為

37、【2】。2、在C語言中(以16位PC機為例),一個float型數據在內存中所占的字節數為【4】;一個double型數據在內存中所占的字節數為【8】。3、若有以下定義,則執行表達式y+=y-=m*=y后的y值是【-16】。int m=5,y=2;4、設C語言中,一個int型數據在內存中占2個字節,則int型數據的取值范圍為【-32768 32767】。5、在C語言中的實型變量分為兩種類型,它們是【單精度型(或:float)】和【雙精度型(或:double)】。6、C語言所提供的基本數據類型包括:單精度型、雙精度型、【整型】、【字符型】和【枚舉類型】。7、若s是int型變量,且s=6,則下面表達式

38、的值為【1】。s%2+(s+1)%28、若a是int型變量,則下面表達式的值為【26】。(a=4*5,a*2),a+69、若x和a均是int型變量,則執行表達式(1)后的x值為【12】,執行表達式(2)后的x值為【4】。(1)x=(a=4,6*2)(2)x=a=4,6*210、若a、b和c均是int型變量,則執行下面表達式后,a值為【6】,b值為【4】,c值為【2】。a=(b=4)+(c=2)11、若a是int型變量,且a的初值為6,則執行下面表達式后a的值為【-60】。a+=a-=a*a12、若a是int型變量,則執行下面表達式后a的值為【2】。a=25/3%313、若x和n均是int型變量

39、,且x和n的初值均為5,則執行下面表達式后x的值為【10】,n的值為【6】。x+=n+14、若有定義:int b=7; float a=2.5,c=4.7;則下面表達式的值為【5.】。a+(int)(b/3*(int)(a+c)/2)%415、若有定義:int a=2,b=3; float x=3.5,y=2.5;則下面表達式的值為【3.】。(float)(a+b)/2+(int)x%(int)y16、以下程序的輸出結果為i:dec=-4,oct=,hex=fffc,unsigned=65532。main()short i;i=-4;printf(“ni:dec=%d,oct=%o,hex=%

40、x,unsigned=%un”,i,i,i,i);17、以下程序的輸出結果為*3.,3.142*。main()printf(“*%f,%4.3f*n”,3.14,3.1415);18、以下程序的輸出結果為c:dec=120,oct=170,hex=78,ASCII=x。main()char c=x;printf(“c:dec=%d,oct=%o,hex=%x,ASCII=%cn”,c,c,c,c);19、已有定義int d=-2;執行以下語句后的輸出結果是*d(1)=-2*d(2)=-2*d(3)=-2*d(4)=*d(5)=*d(6)=*。printf(“*d(1)=%d*d(2)=%3d*

41、d(3)=%-3d*n”,d,d,d);printf(“*d(4)=%o*d(5)=%7o*d(6)=%-7o*n”,d,d,d);20、已有定義int d=-2;執行以下語句后的輸出結果是*d(1)=-2*d(2)=-2*d(3)=-2*d(4)=fffe*d(5)=fffe*d(6)=fffe*。printf(“*d(1)=%d*d(2)=%3d*d(3)=%-3d*n”,d,d,d);printf(“*d(4)=%x*d(5)=%6x*d(6)=%-6x*n”,d,d,d);21、已有定義float d1=3.5,d2=-3.5;執行以下語句后的輸出結果是*d(1)=3.50000e+0

42、0*d(2)=3.500e+00*d(3)=3.500e+00*d(4)=-3.50000e+00*d(5)=-3.50000e+00*d(6)=-3.5000e+00*。printf(“*d(1)=%e*d(2)=%.4e*d(3)=%10.4e*n”,d1,d1,d1);printf(“*d(4)=%e*d(5)=%.6e*d(6)=%-12.5e*n”,d2,d2,d2);22、以下程序的輸出結果為x=1 y=2 *sum*=310 Squared is: 100。main()int x=1,y=2;printf(“x=%d y=%d *sum*=%dn”,x,y,x+y);printf

43、(“10 Squared is:%dn”,10*10);23、以下程序的輸出結果為。#include <stdio.h>main()int x=10; float pi=3.1416;printf(“(1) %dn”,x);printf(“(2) %6dn”,x);printf(“(3) %fn”,56.1);printf(“(4) %14fn”,pi);printf(“(5) %en”,568.1);printf(“(6) %14en”,pi);printf(“(7) %gn”,pi);printf(“(8) %12gn”,pi);答案: (1) 10(2) 10(表示空格)(3

44、) 56.(4) 3.(5) 5.68100e+02(6) 3.14160e+00(7) 3.1416(8) 3.141624、以下程序的輸出結果為。#include <stdio.h>main()float a=123.456; double b=8765.4567;printf(“(1) %fn”,a);printf(“(2) %14.3fn”,a);printf(“(3) %6.4fn”,a);printf(“(4) %lfn”,b);printf(“(5) %14.3lfn”,b);printf(“(6) %8.4lfn”,b);printf(“(7) %.4fn”,b);

45、答案:(1) 123.(2) 123.457(3) 123.4560(4) 8765.(5) 8765.457(6) 8765.4567(7) 8765.456725、以下printf語句中*號的作用是【1】,輸出結果是【2】。#include <stdio.h>main()int i;for(i=1;i<=5;i+) printf(“#%*dn”,i,i);答案:【1】可以使同一輸出語句中的輸出寬度得以改變。【2】#1#2#3#4#526、當運行以下程序時,從鍵盤鍵入right?<CR>(<CR>代表回車),則下面程序的運行結果是sjhiu。#inc

46、lude <stdio.h>main()char c;while(c=getchar()!=?) putchar(+c);27、下面程序的運行結果是s=254。#include <stdio.h>main()int a,s,n,count;a=2; s=0; n=1; count=1;while(count<=7) n=n*a; s=s+n; +count; printf(“s=%d”,s);28、當運行以下程序時,從鍵盤鍵入China#<CR>(<CR>代表回車),則下面程序的運行結果是5,5。#include <stdio.h&g

47、t;main()int v1=0,v2=0; char ch;while(ch=getchar()!=#)switch(ch)case a:case h:default: v1+;case o: v2+;printf(“%d,%dn”,v1,v2);29、執行下面程序段后,k值是36。k=1; n=263;do k*=n%10; n/=10; while(n);30、下面程序段中循環體的執行次數是3。a=10;b=0;do b+=2; a-=2+b; while(a>=0);31、下面程序段的運行結果是* *。x=2;do printf(“*”); x-; while(!x=0);32、

48、下面程序段的運行結果是a=-5。i=1; a=0; s=1;do a=a+s*i; s=-s; i+; while(i<=10);printf(“a=%d”,a);33、下面程序的功能是用do-while語句求1至1000之間滿足“用3除余2;用5除余3;用7除余2”的數,且一行只打印五個數。請填空。#include <stdio.h>main()int i=1,j=0;doif(【1】)printf(“%4d”,i);j=j+1;if(【2】) printf(“n”);i=i+1;while(i<1000);答案:i%3=2&&i%5=3&&i%7=234、下面程序的功能是統計正整數的各位數字中零的個數,并求各位數字中的最大者。請填空。#include <stdio.h>main()int n,count,max,t;count=max=0;scanf(“%d”,&n);dot=【n%10】;if(t=0) +count;else if(max<t) 【max=t】;n/=10;while(n);printf(“count=%d,ma

溫馨提示

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

評論

0/150

提交評論