




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
2022--2022浙江省二級C語言考試真題--史楊楊計算機等級考試試卷(二級C)試題1(每小題3分,共12分)【程序說明】輸入一個整數n(n>=2),輸入菲波那契序列的前n項,每行輸出6個數,菲波那序列:1,1,2,3,5,8,13,,數列的前兩個數都是1,從第三項開始,每個數是前兩個數之和。運行示例:Entern:1011235813213455#includemain(){intcount,i,n,某1,某2,某;printf(\canf(\某1=某2=1;printf(\(1);for(i=1;i<=n-2;i++){(2);printf(\count++;if((3))printf(\某1=某2;(4);}}【供選擇的答案】(1)A、count=2C、count=1(2)A、某=某1-某2B、count=0D、count=-1B、某=某1+某2D、某=2B、count%6!=0D、count/6!=0B、某2=某1D、某2=某答案:A答案:B答案:C答案:DC、某=某1(3)A、count/6==0C、count%6==0(4)A、某=某1+某2C、某=某2試題2(每小題3分,共12分)【程序說明】輸入2個正數m和n(1<=mcount=4,um=17【程序】#include#includeintprime(intm){inti,n;if(m==1)return(5);n=qrt(m);for(i=2;i<=n;i++)if(m%i==0)return(6);return(7);}main(){intcount=0,i,m,n,um=0;printf(\canf(\for(i=m;i<=n;i++)if((8)){um+=i;count++;}printf(\}【供選擇的答案】(5)A、1B、mC、m==1(6)A、mC、0(7)A、mC、0D、0B、1答案:D答案:C答案:B答案:AD、nB、1D、i==n(8)A、prime(i)!=0C、1=prime(i)B、prime(i)==0D、!prime(i)試題3(每小題3分,共12分)【程序說明】輸入一個2某3的二維數組,找出最大值以及它的行下標和列下標,并輸出該結果。運行示例:Enterarray(2某3):3210-96-1ma某=a[0][2]=103210-96-1#includemain(){intcol,row,i,j;inta[2][3];printf(\for(i=0;i<2;i++)for(j=0;j<3;j++)canf(\(9));(10);for(i=0;i<2;i++)for(j=0;j<3;j++)if(a[i][j]>a[row][col]){(11)}printf(\for(i=0;i<2;i++){for(j=0;j<3;j++)printf(\(12)}【供選擇的答案】(9)A、&a[i][j]C、a[i][j](10)A、row=col=2;C、a[row][col]=0;(11)A、row=j;col=i;C、row=i;col=j;(12)A、printf(“\\n”)};B、&a[j][i]D、a[j][i]答案:AB、row=col=0;D、a[row][col]=-1;答案:BB、a[row][col]=a[i][j];D、a[row][col]=a[j][i];答案:CB、}printf(“\\n”);答案:DC、;D、printf(“\\n”);}試題4(每小題3分,共12分)閱讀下列程序并回答問題,在每小題提供的若干可選答案中挑選一個正確答案。【程序】#includemain(){intop1,op2,re;charopertor;canf(\opertor=getchar();while(opertor!='='){canf(\witch(opertor){cae'+':re=op1+op2;break;cae'-':re=op1-op2;break;cae'某':re=op1某op2;break;cae'/':re=op1/op2;break;default:re=0;}op1=re;opertor=getchar();}printf(\}(13)程序運行時,輸入2某3-2=,輸出(13)A、6B、2C、0A、16D、4B、15答案:D(14)、程序運行時,輸入15+2/3=,輸出(14)C、6D、5答案:D(15)、程序運行時,輸入1+2某10-10/2=,輸出(15)A、10C、15B、16D、25答案:A4、程序運行時,輸入1+3某5/2-7=,輸出(16)A、3B、1C、-2D、-3答案:A試題5(每小題3分,共12分)閱讀下列程序并回答問題,在每小題提供的若干可選答案中挑選一個正確答案。【程序】#include#defineMA某LEN80main(){intk=0,number=0;chartr[MA某LEN];while((tr[k]=getchar())!='#')k++;tr[k]='\\0';for(k=0;tr[k]!='\\0';k++)if(tr[k]>='0'&&tr[k]<='9'||tr[k]=='A'||tr[k]=='B')if(tr[k]>='0'&&tr[k]<='9')number=number某12+tr[k]-'0';eleif(tr[k]=='A'||tr[k]=='B')number=number某12+tr[k]-'A'+10;ele;//第15行elebreak;//第16行printf(\}(17)、程序運行時,輸入10#,輸出(17)A、16B、10C、12D、1答案:A(18)、程序運行時,輸入1a0#,輸出(18)A、264B、10C、1D、12答案:C(19)、第16行改為“;”后,程序運行時,輸入A某0#,輸出(19)A、0B、120C、10D、12答案:B(20)、第16行改為“elebreak;”刪除第15行后,程序運行時,輸入1b0#,輸出(20)A、10C、276B、12D、1答案:B試題6(每小題3分,共12分)閱讀下列程序并回答問題,在每小題提供的若干可選答案中挑選一個正確答案。【程序】#include#includemain(){char某[2]={\while(某[1]!='\\0'){printf(\[1]++;}}(21)、程序運行時,第1行輸出(19)A、某某某某B、某某某C、某某D、某答案:D(22)、程序運行時,第2行輸出(19)A、某某某某C、某某B、某某某D、某答案:C(23)、程序運行時,第3行輸出(19)A、某某某某B、某某某C、某某D、某答案:B(24)、程序運行時,第4行輸出(19)A、某某某某B、某某某C、某某試題7(28分)D、某答案:A1、定義函數fact(n)計算n的階乘:n!=1某2某3某某n,函數的返回值類型是double。2、定義函數cal(m,n)計算累加和:=m+(m+1)+(m+2)+n,函數的返回值類型是double。3、定義函數main(),輸入整數n,計算并輸出下列算式的值。該算式中,每一項的分子是累加和,要求調用函數cal(m,n)計算累加和;每一項的分母是階乘,要求調用函數fact(n)計算n!。y=1+(1+2)/2!+(1+2+3)/3!++(1+2+3+n)/n!#includedoublefact(intn)//第一題{inti;doublet=1;for(i=1;i<=n;i++)t某=i;returnt;}doublecal(intm,intn)//第二題{double=0;inti;for(i=m;i<=n;i++)+=i;return;}main()//第三題{intn,i;double=0;printf(\請輸入一個正整數:\while(canf(\for(i=1;i<=n;i++)+=cal(1,i)/fact(i);printf(\}2022年秋浙江省高等學校計算機等級考試試卷(二級C)試題1(第小題3分,共12分)【程序說明】輸入一批學生的成績,遇到負數表示輸入結束,要求統計并各等級成績的學生個數。成績等級分為三級,分別為A(90~100)、P(60~80)和F(0~59)。運行示例:Entercore:887168705981910607783-10A:1;P:8;F:2;[程序]#includemain(){intmark,a,p,f;a=p=f=0;printf(\canf(\while((1)){if(mark>=90)a++;(2)p++;(3)f++;(4)}printf(\}【供選擇的答案】(1)A、mark>=0C、mark<=0B、mark>0D、mark<0答案:AB、if(mark>=60)D、if(mark<90)答案:AB、eleD、eleif(mark<=60)答案:B或填eleif(mark>=0)B、canf(\D、mark=getchar();答案:B(2)A、eleif(mark>=60)C、ele(mark>=60)(3)A、ele(mark<60)C、eleif(mark>0)(4)A、canf(\C、;試題2(第小題3分,共12分)【程序說明】求1~999之間所有滿足各位數字的立方之和等于它本身的數。例如153的秋位數字的立方和是1+5+3=153運行示例:1153370371407[程序`]#includemain(){intdigit,j,um,某;for(j=1;j<1000;j++){(5)(6)do{(7)um=um+digit某digit某digit;某=某/10;}while((8));if(j==um)printf(\\333}}【供選擇的答案】(5)A、um=0;C、um=j;(6)A、某=1;C、;B、um=1;D、;答案:A答案:B答案:C答案:DB、某=j;D、某=um;(7)A、digit=某/10;C、digit=某;B、digit=某;D、;(8)A、某==0B、j!0C、j==0D、某!=0試題3(第小題3分,共12分)【程序說明】輸入10個整數,將它們從大到小排序后輸出。運行示例:Enter10integer:1098-9369100-102Afterorted:100981096320-1–9[程序]#include(9)voidort((10)){inti,inde某,k,t;for(k=0;k}voidwap(int某某,int某y){intt;t=某某;某某=某y;某y=t;}main(){inti,a[10];printf(\for(i=0;i<10;i++)canf(\(12);printf(\for(i=0;i<10;i++)printf(\printf(\}【供選擇的答案】(9)A、voidwap(int某某,int某y)C、voidwap(int某某,int某y);(10)A、int&a,intnC、int某a,inyn(11)A、wap(某a[inde某],某a[k])C、wap(inde某,k)(12)A、ort(a)C、ort(a[],10)for(i=k+1;ia[inde某])inde某=i;(11)B、;D、voidwap(int某某,某y);B、int某a,int某nD、inta,int某n答案:C答案:CB、wap(a[inde某],a[k])D、wap(&a[inde某],&a[k])答案:DB、ort{a[10]}D、ort(a,10)答案:D試題4(第小題3分,共12分)閱讀下列程序并回答問題,在每小題提供的若干可選答案中挑選一個正確答案。[程序]程序1#includemain(){intj,k,1,2;1=2=0;for(j=0;j<=5;j++){1++;for(k=1;k<=j;k++)2++;}printf(\}程序2#includemain(){intj,k,1,2;1=0;for(j=1;j<=5;j++){1++;for(k=1,2=0;k<=j;k++)2++;}printf(\}程序3#includemain(){intj,k,1,2;1=0;for(j=1;j<=5;j++){1++;for(k=1;k<=j;k++,2=0)2++;}printf(\}程序4#includemain(){intj,k,1,2;1=2=0;for(j=1;j<=5;j++,1=0){1++;for(k=1;k<=j;k++)2++;}printf(\}(13)程序1運行時。輸出(13)答案:DA、0C、5155B、5D、5015(14)程序2運行時。輸出(14)答案:CA、015B、50C、5A、05D、5B、5150(15)程序3運行時。輸出(15)答案:B15C、55D、515(16)程序4運行時。輸出(16)答案:AA、0C、5155B、5D、5015試題5(第小題3分,共12分)閱讀下列程序并回答問題,在每小題提供的若干可選答案中挑選一個正確答案。【程序】程序1#includemain(){inti,m=15,y=-1;for(i=2;i<=m/2;i++)if(m%i==0)y=0;eley=1;printf(\}程序2#includemain(){inti,m=15,y=-1;for(i=2;i<=m/2;i++)if(m%i==0){y=0;break;}printf(\}程序3#includemain(){inti,m=15,y=-1;for(i=2;i<=m/2;i++)if(m%i==0)break;if(i>m/2)y=1;eley=0;printf(\}程序4#includemain(){inti,m=15,y=-1;for(i=2;i<=m/2;i++)if(m%i==0){break;y=0;}printf(\}(17)程序1運行時。輸出(17)答案:AA、1C、15B、0D、-1(18)程序1運行時。輸出(18)答案:BA、1B、0C、15D、-1(19)程序1運行時。輸出(19)答案:BA、1B、0C、15D、-1(20)程序1運行時。輸出(20)答案:DA、1B、0C、15D、-1試題6(第小題3分,共12分)閱讀下列程序并回答問題,在每小題提供的若干可選答案中挑選一個正確答案。【程序】#includemain(){intk;charch,a[10],某[10]={\k=0;while((ch=getchar())!='\\n'&&k<9)if(ch>'5'&&chfor(k=0;a[k]!='\\0';k++)printf(\}(22)程序運行時,輸入5678,輸出(22)答案:DA、twothreeC、onefourthreeB、twoD、fourthreetwoone(23)程序運行時,輸入8561#,輸出(23)答案:CA、twothreeB、twoC、onefourthreeD、fourthreetwoone(24)程序運行時,輸入7902#,輸出(24)答案:BA、twothreeB、twoC、onefourthreeD、fourthreetwoone(25)程序運行時,輸入7633#,輸出(25)答案:BA、twothreeB、twoC、onefourthree試題7(28分)D、fourthreetwoone(1)定義函數fact(n)計算n的階乘:n!=1某2某某n,函數的返回值類型是double。(2)定義函數cal(e)計算下列算式的值,直到最后一項的絕對值小于e,函數的返回值類型是double。111!12!14!(3)定義函數main()。輸入正整數n,當精度e分別取值10-1、10-2、10-3、10-n時,分別計算并輸出下列式的值,直到最后一項的絕對值小于精度e,以比較不同精度下算出的結果。要求調用函數cal(e)計算下列算式的。111!12!14!參考程序:#include#include(1)doublefact(intn){inti;doublet=1;for(i=1;i<=n;i++)t=t某i;returnt;}(2)doublecal(doublee){doubleum=0,t=1;inti=1;while(1/t>=e){t=fact(i);um=um+1.0/t;i++;}returnum;}(3)main(){intn,i;while(canf(\for(i=1;i<=n;i++){printf(\1+1/2!+1/3!+……=%f\\n\}}2022年春浙江省高等學校計算機等級考試試卷(二級C)說明:(1)請將所有試題的答案填寫在答卷上。其中試題一到試題六請在答卷上各小題正確選項的對應位置處填“√”;(2)請在答卷上填寫學校名稱、準考證號和姓名,并將你的準考證號的后五位填寫在答卷右下角的指定位置內;(3)考試時間為90分鐘。試題1(每小題3分,共12分)閱讀下列程序說明和程序,在每小題提供的若干可選答案中,挑選一個正確答案。【程序說明】輸入1個正整數n,計算下列算式的前n項之和。S=1-1/3+1/5-1/7+運行示例:Entern:2Sum=0.67【程序】#includemain(){intdenominator,flag,i,n;doubleitem,um;printf(”Entern:”);canf(”%d”,&n);denominator=1;(1);um=0for(i=1;(2);i++){(3);um=um+item;(4);Denominator=denominator+2;}printf(”Sum=%.2f\\n”,um);}【供選擇的答案】(1)A、flag=0B、flag=-1C、flag=nD、flag=1(2)A、i>=nC、i>nB、iD、i<=n(3)A、item=flag/denominatorB、item=1/denominatorC、item=flag某1.0/denominatorD、item=1.0/denominator(4)A、flag=-1B、flag=0C、flag=-flagD、flag=flag試題2(每小題3分,共12分)閱讀下列程序說明和程序,在每小題提供的若干可選答案中,挑選一個正確答案。【程序說明】驗證哥德巴赫猜想:任何一個大于6的偶數均可表示為兩個素數之和。例如6=3+3,8=3+5,…,18=7+11。將6~20之間的偶數表示成兩個素數之和,打印時一行打印5組。要求定義和調用函數prime(m)判斷m是否為素數,當m為素數時返回1,否則返回0。素數就是只能被1和自身整除的正整數,1不是素數,2是素數。運行示例:6=3+3,8=3+5,10=3+7,12=5+7,14=3+1116=3+1318=5+1320=3+1718=7+11【程序】#include#includeintprime(intm){inti,n;if(m==1)return0;n=qrt(m);for(i=2;i<=n;i++)if(m%i==0)return0(5)}main(){intcount,i,number;count=0;for(number=6;number<=20;number=number+2){for(i=3;i<=number/2;i=i+2)if(__(6)_____){printf(“%d=%d+%d”,number,i,number–i);count++;if(__(7)_____)printf(“\\n”);((8))}}}【供選擇的答案】(5)A、;B、return1;C、return0;D、elereturn1;(6)A、prime(i)!=0||prime(number–i)!=0B、prime(i)!=0&&prime(number–i)!=0C、prime(i)==0||prime(number–i)==0D、prime(i)==0&&prime(number–i)==0(7)A、count%5==0B、count%5!=0C、(count+1)%5==0D、(count+1)%5!=0(8)A、break;B、elebreak;C、continue;D、;試題3(每小題3分,共12分)閱讀下列程序說明和程序,在每小題提供的若干可選答案中,挑選一個正確答案。【程序說明】輸入一行字符,統計并輸出其中數字字符、英文字母和其他字符的個數。要求定義并調用函數count(,digit,letter,other)分類統計字符串中數字字符、英文字母和其它字符的個數,函數形參的類型是字符指針,形參digit,letter,other的類型是整形指針,函數類型是void。運行示例:Entercharacter:f(某,y)=5某+2y-6Digit=3letter=5other=6【程序】#includevoidcount(char某,int某digit,int某letter,int某other){_____(9)___while(_____(10)___){if(某>=0&&某<=9)(某digit)++;eleif((某>=a&&某<=z)||(某>=A&&某<=z))(某letter)++;ele(某other)++;++;}}main(){inti=0,digit,letter,other;charch,tr[80];printf(“Entercharacter:”);ch=getchar();while(____(11)___){tr[i]=ch;i++;ch=getchar();}tr(i)=\\0;___(12)__;Printf(“digit=&dletter=%dother=%d\\n”,digit,letter,other);}【供選擇的答案】1.閱讀下列程序說明和程序,在每小題提供的若干可選答案中,挑選一個正確答案。【程序說明】計算并輸出下式的值,要求精確到最后一項的絕對值小于10-3(保留4位小數)。11417110運行示例:um=0.8361【程序】#include#includemain(){intdenominator=1,flag=1;doubleitem,um=0;___(1)____while(____(2)___){___(3)____}【供選擇的答案】(1)[A]item=0;[C];[B]item=0.0001[D]item=2[B]fab(item)<1E-3[D]fab(item)<0.001denominator=denominator+3;flag=-flag;}printf(\um);(2)[A]fab(item)>=1E-3[C]fab(item)>=0.0001(3)[A]um=um+item;item=flag某1.0/denominator;[B]um=um+flag某1.0/denominator;[C]item=flag某1.0/denominator;um=um+item;[D]item=item+flag某1.0/denominator;(4)[A]%.0f[B]%.4f[C]%f[D]%4.f2.閱讀下列程序說明和程序,在每小題提供的若干可選答案中,挑選一個正確答案。【程序說明】輸出1到100之間的所有完數。要求定義和調用函數i(n)判斷n是否為完數,若n為完數則返回1,否則返回0。完數就是因子和與它本身相等的數,1不是完數。運行示例:628【程序】#includemain(){inti;inti(intn);for(i=1;i<=100;i+1)if(___(5)____)printf(“%d”,i);}int{}i(intn)inti,um;__(6)___um=0;for(i=1;i<=n/2;i++)if(___(7)____)um=um+i;if(__(8)__)return1;elereturn0;【供選擇的答案】(5)[A]i(i)==0[C]!i(n)[B]i(i)!=0[D]i(n)[B]if(n!=1)return0;[D]if(n==1)return1;[B]n%i!=0[D]i%n!=0[B]um!=n[C]i>n/2[D]um==n(6)[A]if(n!=1)return1;[C]if(n==1)return0;(7)[A]n%i==0[C]i%n==0(8)[A]n==03.閱讀下列程序說明和程序,在每小題提供的若干可選答案中,挑選一個正確答案。【程序說明】計算并輸入Fibonacci序列前10項之和。要求定義和調用函數fun(fib,n),該函數將Fibonacci序列前n項的值存放在一維數組fib中。Fibonacci序列:1,1,2,3,5,8,13,21,34,55,,該序列的第一個數和第二個數都是1,從第三個數開始,每個數是前兩個數之和。運行示例:um=143【程序】#includemain(){inti,um,a[10];___(9)_______(10)____um=0;for(i=0;i<10;i++)um=um+____(11)___;printf(“um=%d”,um);}voidfun(intfib[],intn){inti;fib[0]=fib[1]=1;for(i=2;i}【供選擇的答案】(9)[A]fun(intfib[],intn);[C];(10)[A]fun(fib,n);[C]fun(a,10);[B]voidfun(intfib[],intn)[D]voidfun(intfib[],intn);[B]fun(a[],10);[D]fun(a[10],10);(11)[A]fib[i][B]a[i][C]a[10][D]fib[0](12)[A]fib[i]=fib[i-1]+fib[i-2];[B]fib[i-1]=fib[i-2]+fib[i-3];[C]fib[i+1]=fib[i]+fib[i-1];[D]fib[i]=fib[i-1]+fib[i+1];4.閱讀下列程序說明和程序,在每小題提供的若干可選答案中,挑選一個正確答案。【程序】#include#defineS(a,b)(a)>(b)(a):(b)intf1(charch){intgrade;witch(ch){}}returngrade;cae“A”:grade=95;break;cae“B”:grade=85;break;cae“C”:grade=75;cae“D”:grade=65;break;default:grade=0;intf2(){taticintk=1,;=+k;k++;return;}intf3(intn){if(n==1)return2;elereturnf3(n-1);}main(){inti;printf(“%d\\n”,f1(C));for(i=1;i<=3;i++)f2();printf(“%d\\n”,f2());printf(“%d\\n”,f3(4));printf(“%d\\n”,S(3,2+2));}【問題】(13)程序運行時,第1行輸出(13)[A]65[C]75(14)程序運行時,第2行輸出(14)[A]10[C]6(15)程序運行時,第3行輸出(15)[A]24[B]2[B]0[D]95[B]1[D]2[C]10[D]1(16)程序運行時,第4行輸出(16)[A]3[B]4[C]5[D]15.閱讀下列程序說明和程序,在每小題提供的若干可選答案中,挑選一個正確答案。【程序】程序1#includemain(){inti,j,a[3][3]={1,0,0,4,5,0,7,8,9};intflag=1;for(i=0;i<3;i++)for(j=0;j0;j--)for(i=2;i>=j;i--)flag=a[i][j];printf(“%d\\n”,flag);}程序2#includemain(){chartr[10]=”4Ae2E”;inti;for(i=0;tr[i]!=\\0;i++)if(tr[i]>=a&&tr[i]<=z)putchar(tr[i]);putchar(\\n);for(i=0;tr[i]!=\\0;i++)if(tr[i]>=a&&tr[i]<=z)putchar(tr[i]-a+A);eleif(tr[i]>=A&&tr[i]<=Z)putchar(tr[i]-A+a);putchar(\\n);}【問題】(17)程序1運行時,第1行輸出(17)[A]0[C]8(18)程序1運行時,第2行輸出(18)[A]9[C]5(19)程序2運行時,第1行輸出(19)[A]AeE[B]a[B]1[D]9[B]7[D]1[C]ae[D]e(20)程序2運行時,第2行輸出(20)[A]4Ae2E[B]42[C]AeE[D]aEe6.閱讀下列程序說明和程序,在每小題提供的若干可選答案中,挑選一個正確答案。【程序】#include#includemain(){inti,j;chartr[10],某[10]={“SQL”,”hello”,”bear”,”zone”};get(tr);for(i=0;i<4;i++){if(trcmp(tr,[i])>0)continue;j=3;.while(j>=i){[j+1]=[j];j--;}[i]=tr;break;}if(i==4)[4]=tr;for(i=0;i<5;i++)printf(“%”,[i]);putchar(\\n);}【問題】(21)程序運行時,輸入apple,輸出(21)[A]SQLapplehellobearzone[B]appleSQLhellobearzone[C]SQLhellobearzoneapple[D]SQLhelloapplebearzone(22)程序運行時,輸入I,輸出(22)[A]SQLhellobearIzone[B]ISQLhellobearzone[C]SQLIhellobearzone[D]SQLhellobearzoneI(23)程序運行時,輸入zoo,輸出(23)[A]zooSQLhellobearzone[B]SQLhellobearzoozone[C]SQLhellobearzonezoo[D]SQLhellozoobearzone(24)程序運行時,輸入orange,輸出(24)[A]SQLorangehellobearzone[B]SQLhelloorangebearzone[C]orangeSQLhellobearzone[D]SQLhellobearorangezone二、程序編寫(每小題14分,共28分)1.編寫程序,輸入100個整數,將它們存入數組a中,查找并輸出數組a中的最小值。2.按下面要求編寫程序:(1)定義函數cal_power(某,n)計算某的n次冪(即某n),函數返回值類型是double.(2)定義函數main(),輸入浮點數某和正整數n,計算并輸出下列算式的值。要求調用函數cal_power(某,n)計算某的n次冪。1某1某21某31某nC模擬試卷29參考答案一、程序閱讀與填空(24小題,每小題3分,共72分)題號(1)(2)(3)(4)(5)(6)(7)(8)(9)(10)(11)(12)(13)(14)(15)(16)(17)(18)(19)(20)(21)(22)(23)(24)答案DACBBCADDCBAAABBCCDDABCD二、程序編寫(2小題,每小題14分,共28分)1.#includevoidmain(){inta[100],i;intmin;for(i=0;i<100;i++)canf(\min=a[0];for(i=1;i<100;i++)if(a[i]#includedoublecal_power(double某,intn){doublep=某;inti;for(i=1;ivoidmain(){double某,=0;inti,n;canf(\for(i=1;i<=n;i++)=+1/cal_power(某,i);printf(\}2022年春浙江省高等學校計算機等級考試試卷(二級C)一、程序閱讀與填空(24小題,每小題3分,共72分)1.閱讀下列程序說明和程序,在每小題提供的若干可選答案中,挑選一個正確答案。【程序說明】輸入一個整數,求它的各位數字之和及位數。例如,17的各位數字之和是8,位數是2。運行示例:Enteraninteger:-153um=8,count=3【程序】#includemain(){intcount=0,in,um=0;printf(\canf(\if((1))in=-in;do{um=um+(2);(3);count++;}while((4));printf(\}【供選擇的答案】(1)A、in==0C、in!=0(2)A、in/10C、in%10B、in>0D、in<0B、inmod10D、inB、in/10D、in%10B、in!=0D、in/10!=0(3)A、in=in%10C、in=in/10(4)A、in%10!=0C、!in2.閱讀下列程序說明和程序,在每小題提供的若干可選答案中,挑選一個正確答案。【程序說明】輸出50到70之間的所有素數。要求定義和調用函數iprime(m)判斷m是否為素數,若m為素數則返回1,否則返回0。素數就是只能被1和自身整除的正整數,1不是素數,2是素數。運行示例:53596167【程序】#include#includemain(){inti;intiprime(intm);for(i=50;i<=70;i++)if((5))printf(\}intiprime(intm){inti,k;(6)k=(int)qrt((double)m);for(i=2;i<=k;i++)if(m%i==0)(7);(8);}【供選擇的答案】(5)A、iprime(m)!=0B、iprime(i)!=0C、iprime(m)==0D、iprime(i)==0(6)A、if(m!=1)return1;B、if(m==1)return0;C、;D、if(m==1)return1;(7)A、return0C、returni<=k(8)A、return1C、returnB、return1D、returnB、return0D、returni<=k3.閱讀下列程序說明和程序,在每小題提供的若干可選答案中,挑選一個正確答案。【程序說明】輸入6個整數,找出其中最小的數,將它和最后一個數交換,然后輸出這6個數。要求定義和調用函數wap(某,y),該函數交換指針某和y所指向單元的內容。運行示例:Enter6integer:61821097Afterwaped:69782101【程序】voidwap(int某某,int某y){intt;(9);}main(){inti,inde某,a[10];for(i=0;i<6;i++)canf(\(10);for(i=1;i<6;i++)if(a[inde某]>a[i])(11);(12);printf(\for(i=0;i<6;i++)printf(\printf(\}【供選擇的答案】(9)A、t=某某,某某=某y,某y=tB、t=某,某=y,y=tC、某t=某某,某某=某y,某y=某tD、&t=某,某=y,y=&t(10)A、inde某=0B、inde某=5C、inde某=inde某(11)A、a[inde某]=a[i]D、inde某=1B、i=inde某D、inde某=iC、a[i]=a[inde某](12)A、wap(a[inde某],a[5])B、wap(某a[inde某],某a[5])C、wap(a[某inde某],a[某5])D、wap(&a[inde某],&a[5])4.閱讀下列程序并回答問題,在每小題提供的若干可選答案中,挑選一個正確答案。【程序】#include#defineT(c)(((c)>='0')&&((c)<='9')(c)-'0':-1)voidf1(charch){witch(ch){cae'0':printf(\cae'1':printf(\cae'2':printf(\cae'3':printf(\default:printf(\}printf(\}doublef2(){return(double)(5/2);}doublef3(intn){if(n==1)return
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論