版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
2009年春浙江省高等學(xué)校
計算機(jī)等級考試試卷(二級C)
說明:⑴考生應(yīng)將所有試題的答案填寫在答卷上。其中試題一到試題六
請在答卷上的各小題選項(xiàng)的對應(yīng)位置上填“,二
⑵請將你的準(zhǔn)考證號的后五位填寫在答卷右下角的指定位置內(nèi);
⑶考試時間為90分鐘。
試題1(每小題3分,共12分)
輸入一個正整數(shù)n,計算下列式的前n項(xiàng)之和。
運(yùn)行示例:
Entern:2
Sum=0.67
#include<stdio.H>
main()
{intdenomiator,flag9i9n;
doubleitem,sum;
printf(HEntern:n);
scanf(H%d,\&n);
denomiator=l;
(1);
sum=0;
for(i=l;(2);i++)
(
⑶;
sum=sum+item;
(4);
denomiator=denomiator+2;
)
printf(nSuiTi=%.2f\nn,sum);
)
(1)A.flag=OB.flag=-l;
C.flag=nD.flag=l
(2)A.i>=nB.i<n
C.i>nD.i<=n
(3)A.item=flag/denomiatorB.item=l/denomiator
C.item=flag*l?0/denomiatorD.item=1.0/denomiator
(4)A.flag==-lB.flag=0
C.flag二-flagD.flag二flag
試題2(每小題3分,共12分)
驗(yàn)證哥德巴赫猜想:任何一個大于6的偶數(shù)均可表示為兩個素數(shù)之和。
例如6=3+3,8=3+5……,18=7+11。將6-20之間的偶數(shù)表示成兩個素數(shù)之和,
打印時一行打印5組。要求定義和調(diào)用函數(shù)prime(m)判斷m是否為素數(shù),
當(dāng)m為素數(shù)時返回1,否則返回0。素數(shù)就是只能被1和自身整除的正整數(shù),
1不是素數(shù),2是素數(shù)。
運(yùn)行示例:
6=3+38=3+510=3+712=5+714=3+11
16=3+1318=5+1320=3+17
【程序】
#include<stdio.H>
#include<math.h>
intprime(intm)
|
inti,n;
if(m==l)return0;
n=sqrt(m);
for(i=2;i<=n;i++)
if(m%i==0)retum0;
⑸
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(H%d=%d+%dnumber,i,number-i);
count++;
if((7))printf(u\nn):
(8)
)
}
(5)A.;B.return1;
C.return0;D.elsereturn1;
(6)A.prime(i)!=Ollprime(number-i)!=O
B,prime(i)!=O&&prime(number-i)!=O
C?prime(i)==Ollprime(number-i)==O
D?prime(i)==Ollprinie(nuinber-i)==O
(7)A.count%5==0B.count%5!=0
C.(count+l)%5==0D.(count+l)%5!=0
(8)A.break;B.elsebreak;
C.continue;D.;
試題3輸入一行字符,統(tǒng)計并輸出其中數(shù)字字符、英文字符和其它字符的
個數(shù)。要求定義并調(diào)用函數(shù)counts,digitjetter,other)分類統(tǒng)計字符串s中數(shù)
字字符、英文字符和其它字符的個數(shù),函數(shù)形參s是字符指針,形參
digit,letter,other的類型是整型指針,函數(shù)類型是void.。
運(yùn)行示例:
Entercharaters:f(x,y)=5x+2y-6
Digit=3Letter=5Other=6
#include<stdio.h>
voidcount(char*s,int*digit,int"letter,int*other)
{(9)
while((10))
{if(*s>=,0,&&*s<=,9,)
(*digit)++;
elseif(*s>=,a,&&*s<=,z'll*s>=,A,&&*s<=,Zr)
(*letter)++;
else
(*other)++;
s++;
)
)
main()
{inti=0,digit,lettei;other;
charch,str[80];
printf(uEntercharaters:'*);
ch=getchar();
vvhile((U))
{str[i]=ch;
i++;
ch=getchar();
)
str[i]=,\O,;
(⑵;
printf(MDigit=%dLetter=%dOther=%d\n*',digit,letter,other);
)
(9)A.intdigit=0,letter=0,other=0;
B.int*digit=0,*letter=0,*other=0;
C.digit=letter=other=0;
D.*digit=*letter=*other=0;
(10)A.*s++!=*\0,B.*s++!='\n,
C.*s!='\0'D.*s!='\n'
(11)A.ch!='\0'B.ch!='\n'
C.ch=='\0'D.ch=='\n'
(12)A.count(str,&digit,&letter,&other)
B,count(&sti;&digit9&letter9&other)
C?count(*sti;digit,letter,other)
D.count(*sti;*digit,*lettei;*other)
試題4
#include<stdio.h>
main()
{intflag=0,i;
inta[7]={8,9,7,9,8,9,7);
for(i=0;i<7;i++)
if(a[i]==7)
{flag=i;
break;
)
printf(H%d\nH,flag);
flag=?l;
for(i=6;i>=0;i-)
if(a[i]==8)
{break;
flag-i;
)
printf(H%d\n*\flag);
flag=O;
for(i=0;i<7;i++)
if(a[i]==9){
printf(H%d,\i);
)
printf(H\nn);
flag=O;
for(i=0;i<7;i++)
if(a[i]==7)flag=i;
printf(H%d\nn,nag);
(13)程序運(yùn)行時,第1行輸出_(13)O
A.2B.0;
C.3D.6
(14)程序運(yùn)行時,第2行輸出_(14)O
A.4B.-1
C.0D.5
(15)程序運(yùn)行時,第3行輸出_(15)O
A.246B.4
C.135D.6
(16)程序運(yùn)行時,第4行輸出_(16)0
A.246B.2
C.135D.6
試題5
#include<stdio.h>
intfl(intn)
{if(n==l)retum1;
elsereturnfl(n-l)+n;
)
intf2(intn)
{switch(n)
{case1:
case2:retum1;
default:returnf2(n-l)+f2(n-2);
)
)
voidf3(intn)
printf(H%dH,n%10);
if(n/10!=0)f3(n/10);
)
voidf4(intn)
{if(n/10!=0)f4(n/10);
printf(H%dn,n%10);
)
main()
{
printf(M%d\n'\fl(4));
printf(n%d\nn,f2(4));
f3(123);
printf(H\nH);
f4(123);
printf(n\nH);
(17)程序運(yùn)行時,第1行輸出(17)O
A.10B.24
C.6D.1
(18)程序運(yùn)行時,第2行輸出_(18)0
A.1B.3
C.2D.4
(19)程序運(yùn)行時,第3行輸出(19)O
A.123B.3
C.321D.1
(20)程序運(yùn)行時,第4行輸出_(20)0
A.1B.123
C.3D.321
試題6
ttinclude<stdio.h>
structnum
(
inta;
intb;
);
voidf(structnums[],intn)
intindex,j,k;
structnumtemp;
for(k=0;k<n-l;k++)
(
index=k;
for(j=k+l;j<n;j++)
if(s[j].b<s[index].b)index=j;
temp=s[index];
s[index]=s[k];
s[k]=temp;
}
)
main()
(
intcount,i,k,m,n,no;
structnums[100],*p;
scanf("%d%d%d",&n,&m,&k);
for(i=0;i<n;i++)
(
s[i].a=i+l;
s[i].b=0;
)
P=s;
count=no=0;
while(no<n)
(
if(p->b==O)count++;
if(count==m)
(
no++;
p->b=no;
count=0;
)
P++;
if(p=s+n)
P=s;
)
f(s,n);
printfC%d:%d\n*,s[k-l].b,s[k-l].a);
)
(21)程序運(yùn)行時,輸入543,輸出(21)
A.3:5B.2:3
C.1:2D.4:1
(22)程序運(yùn)行時,輸入534,輸出(22)
A.3:5B,1:2
C.4:3D.4:2
(23)程序運(yùn)行時,輸入752,輸出(23)
A.1:5B.6:1
C.2:3D.2:4
(24)程序運(yùn)行時,輸入424#,輸出-(24)
A.3:3B.4:2
C.2:4D.4:1
試題7(28分)
(1)定義函數(shù)fact(n)計算n的階乘:n!=l*2*.......*n,函數(shù)形參n的類型是
int,函數(shù)類型是doubleo
⑵定義函數(shù)cal(x,e)計算下列算式的值,直到最后一項(xiàng)的絕對值小于e,
函數(shù)形參x和e的類型都是double,函數(shù)類型是doubleo要求調(diào)用自定義
函數(shù)fact(n)計算n的階乘,調(diào)用庫函數(shù)pow(x,n)計算x的n次塞。
X2X3X4
S=X+——+——+——
2!3!4!
⑶定義函數(shù)main(),輸入兩個浮點(diǎn)數(shù)x和e,計算并輸出下列算式的值,
直到最后一項(xiàng)的值小于精度e,要求調(diào)用函數(shù)cal(x,e)計算下列算式的值。
234
XXX
s=x+---------1--------+——
2!3!4!
參考程序:
#include<stdio.h>
#include<math.h>
(l)doublefact(intn)
{inti;
doublet=l;
for(i=l;i<=n;i++)
t=t*i;
returnt;
(2)doublecal(doublex,doublee)
doublesum=0;
inti=l;
while(pow(x,i)/fact(i)>=e)
sum=sum+pow(x,i)/fact(i);
i++;
)
returnsum;
)
(3)main()
{doublex9e,sum;
scanf(M%lf%lfn,&x,&e);
sum=cal(x,e);
{printf(Msum=%f\nK,sum);
)
)
選著題:Adccbbaadcbaabedabebaded
2008年秋浙江省高等學(xué)校
計算機(jī)等級考試試卷(二級C)
試題1(第小題3分,共12分)
【程序說明】
輸入一批學(xué)生的成績,遇到負(fù)數(shù)表示輸入結(jié)束,要
求統(tǒng)計并各等級成績的學(xué)生個數(shù)。成績等級分為三級,
分別為A(90?100)、P(60?80)和F(0?59)。
運(yùn)行示例:
Enterscores:887168705981910607783-10
A:1;P:8;F:2;
[程序]
#include<stdio.h>
main()
{intmark,a,p,f;
a=p=f=0;
printf("Enterscores:");
scanf("%d",&mark);
while(G))
(
if(mark>=90)
a++;
______(2)______p++;
(3)f++:
⑷
)
printf("A:%d;P:%d;F:%d;\n",a,p,f);
【供選擇的答案】
(1)A、mark>=0mark>0
C、mark<=0D、mark<0答案:A
(2)A、elseif(mark>=60)B、if(mark>=60)
C>else(mark>=60)D、if(mark<90)答案:A
(3)A、else(mark<60)B、else
C、elseif(mark>0)D、elseif(mark<=60)答案:B
或填elseif(mark>=0)
(4)A、scanf("%d",mark);B、scanf("%d",&mark);
C、;D、mark=getchar();答
案:B
試題2(第小題3分,共12分)
【程序說明】
求1?999之間所有滿足各位數(shù)字的立方之和等于它
本身的數(shù)。例如153的秋位數(shù)字的立方和是13+53+33=153
運(yùn)行示例:
1153370371407
[程序、]
#include<stdio.h>
main()
{intdigit,j,sum,x;
for(j=l;j<1000;j++){
(5)
(6)
do{
⑺
sum=sum+digit*digit*digit;
x=x/10;
}while((8));
if(j==sum)printf("%d",sum);
)
【供選擇的答案】
(5)A、sum=O;B、sum=l;
C、sum=j;D、;答案:A
(6)A、x=l;B、x=j;
c、;D、x=sum;答案:B
(7)A、digit=x/10;B、digit=x;
C、digit=x%10;D、;答案:C
(8)A、x==0B、j!0
C、j==0D、x!=0答案:D
試題3(第小題3分,共12分)
【程序說明】
輸入10個整數(shù),將它們從大到小排序后輸出。
運(yùn)行示例:
Enter10integers:1098-9369100-102
Aftersorted:100981096320-1-9
[程序]
#include<stdio.h>
(9)
voidsort((10))
{inti,index,k,t;
for(k=0;k<n-l;k++){
index=k;
for(i=k+l;i<n;i++)
if(a[i]>a[index])index=i;
(11)
)
voidswap(int*x,int*y)
{intt;
t=*x;*x=*y;*y=t;
)
main()
{inti,a[10];
printf("Enter10integers:");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
(⑵:
printf("Aftersorted:");
for(i=0;i<10;i++)
printf("%d",a[ij);
printf("\n");
)
【供選擇的答案】
(9)A、voidswap(int*x,int*y)B、;
C、voidswap(int*x,int*y);D、voidswap(int*x,
*y);答案:C
(10)A>int&a,intnB、int*a,int*n
C、int*a,inynD、inta,int*n
答案:C
(11)A>swap(*a[index],*a[k])B、swap(a[index],a[k])
C、swap(index,k)D、
swap(&a[index],&a[k])答案:D
(12)A、sort(a)B、sort{a[10]}
C、sort(a[],10)D、sort(a,10)
答案:D
試題4(第小題3分,共12分)
閱讀下列程序并回答問題,在每小題提供的若干可選
答案中挑選一個正確答案。
[程序]
程序1
#include<stdio.h>
main()
{intj,k,sl,s2;
sl=s2=0;
for(j=0;j<=5;j++){
sl++;
for(k=1;k<=j;k++)
s2++;
)
printf("%d%d",sl,s2);
)
程序2
#include<stdio.h>
main()
{intj,k,sl,s2;
sl=O;
for(j=l;j<=5;j++){
sl++;
for(k=l,s2=0;k<=j;k++)
s2++;
printf("%d%d",sl,s2);
)
程序3
#include<stdio.h>
main()
{intj,k,sl,s2;
sl=O;
for(j=l;j<=5;j++){
sl++;
for(k=1;k<=j;k++,s2=0)
s2++;
)
printf("%d%d",sl,s2);
)
程序4
#include<stdio.h>
main()
{intj,k,sl,s2;
sl=s2=0;
for(j=l;j<=5;j++,sl=0){
sl++;
for(k=1;k<=j;k++)
s2++;
)
printf("%d%d",sl,s2);
)
(13)程序1運(yùn)行時。輸出.(13)。答案:D
A、015B、50
C、55D>515
(14)程序2運(yùn)行時。輸出(14)。答案:C
A、015B、50
C、55D>515
(15)程序3運(yùn)行時。輸出.(15)。答案:B
A>015B、50
C、55D>515
(16)程序4運(yùn)行時。輸出(16)。答案:A
A、015B、50
C、55D、515
試題5(第小題3分,共12分)
閱讀下列程序并回答問題,在每小題提供的若干可選答
案中挑選一個正確答案。
【程序】
程序1
#include<stdio.h>
main()
{inti,m=15,y=-l;
for(i=2;i<=m/2;i++)
if(m%i==O)y=O;
elsey=l;
printf("%d",y);
)
程序2
#include<stdio.h>
main()
{inti,m=15,y=-l;
for(i=2;i<=m/2;i++)
if(m%i==O){y=O;break;}
printf("%d",y);
)
程序3
#include<stdio.h>
main()
{inti,m=15,y=-l;
for(i=2;i<=m/2;i++)
if(m%i==O)break;
if(i>rr)/2)y=1;
elsey=0;
printf("%d",y);
)
程序4
#include<stdio.h>
main()
{inti,m=15,y=-l;
for(i=2;i<=m/2;i++)
if(m%i==O){break;y=0;}
printf("%d",y);
(17)程序1運(yùn)行時。輸出.(17)。答案:A
A、1B、0
C、15D、-1
(18)程序1運(yùn)行時。輸出.(18)。答案:B
A、1B、0
C、15D、-1
(19)程序1運(yùn)行時。輸出,(19)。答案:B
A、1B、0
C、15D、-1
(20)程序1運(yùn)行時。輸出.(20)。答案:D
A、1B、0
C、15D、-1
試題6(第小題3分,共12分)
閱讀下列程序并回答問題,在每小題提供的若干可選答
案中挑選一個正確答案。
【程序】
#include<stdio.h>
main()
{intk;
charch,a[10],*s[10]={"one","two","three","four");
k=0;
while((ch=getchar())!='\n'&&k<9)
if(ch>'5'&&ch<'8')a[k++]=ch;
a[k]=W;
for(k=0;a[kj!='0';k++)
printf("%s",s['9--a[k]-l]);
)
(22)程序運(yùn)行時,輸入5678,輸出(22)
答案:D
A、twothreeB、two
C、onefourthreeD、fourthreetwoone
(23)程序運(yùn)行時,輸入8561#,輸出(23)
答案:C
A、twothreeB、two
C、onefourthreeD、fourthreetwoone
(24)程序運(yùn)行時,輸入7902#,輸出(24)°
答案:B
A、twothreeB、two
C、onefourthreeD、fourthreetwoone
(25)程序運(yùn)行時,輸入7633#,輸出(25)。
答案:B
A、twothreeB、two
C、onefourthreeD、fourthreetwoone
試題7(28分)
(1)定義函數(shù)fact(n)計算n的階乘:n!=l*2*.......*n,函數(shù)的
返回值類型是doubleo
(2)定義函數(shù)cal(e)計算下列算式的值,直到最后一項(xiàng)
的絕對值小于e,函數(shù)的返回值類型是doubleo
(3)定義函數(shù)main。。輸入正整數(shù)n,當(dāng)精度e分別取值
10-1、10-2、10-3……、10-n時,分別計算并輸出下列式
的值,直到最后一項(xiàng)的絕對值小于精度e,以比較不同精
度下算出的結(jié)果。要求調(diào)用函數(shù)cal(e)計算下列算式的。
參考程序:
#include<stdio.h>
#include<math.h>
(1)doublefact(intn)
{inti;
doublet=l;
for(i=l;i<=n;i++)
t=t*i;
returnt;
)
(2)doublecal(doublee)
(
doublesum=0,t=l;
inti=l;
while(l/t>=e)
{t=fact(i);
sum=sum+1.0/t;
i++;
returnsum;
(3)main()
{intn,i;
while(scanf("%d",&n),n<=0);
for(i=l;i<=n;i++)
{printf("i=%d
l+l/2!+l/3!+.......=%f\n",i,cal(pow(10,-i)));
)
2008年春浙江省高校
計算機(jī)等級考試試卷(二級C)
試題1(每小題3分,共12分)
【程序說明】輸入一個整數(shù)n(n>=2),輸入菲波那契序
列的前n項(xiàng),每行輸出6個數(shù),菲波那序列:1,1,2,
3,5,8,13,……,數(shù)列的前兩個數(shù)都是1,從第三項(xiàng)
開始,每個數(shù)是前兩個數(shù)之和。
運(yùn)行示例:
Entern:10
112358
13213455
#include<stdio.h>
main()
{intcount,i,n,xl,x2,x;
printf("Entern:");
scanf("%d",&n);
x1=x2=1;
printf("%6d%6d",xl,x2);
⑴;
for(i=l;i<=n-2;i++)
((2);
printf("%6d",x);
count++;
if((3))printf("\n");
xl=x2;
(4)
)
)
【供選擇的答案】
(1)A、count=2B、count=0
C>count=1D、count=-l答案:A
⑵A、x=xl-x2B、x=xl+x2
C、x=xlD、x=2答案:B
⑶A、count/6==0B、count%6!=0
C、count%6==0D、count/6!=0答案:C
(4)A、x=xl+x2B、x2=xl
C、x=x2D、x2=x答案:D
試題2(每小題3分,共12分)
【程序說明】
輸入2個正數(shù)m和n(l<=m<n<=500),統(tǒng)計交輸出
m和n之間素數(shù)的個數(shù)以及這些素數(shù)的和,要求定義和
調(diào)用函數(shù)prime(m)判斷m是否為素數(shù),當(dāng)m為素數(shù)返回
1,否則返回0。素數(shù)就是只能被1和自身整除的正整,1
不是素,2是素數(shù)。
運(yùn)行示例:
Enterm,n:110
count=4,sum=17
【程序】
#include<stdio.h>
#include<math.h>
intprime(intm)
{inti,n;
if(m==l)returnC5);
n=sqrt(m);
for(i=2;i<=n;i++)
if(m%i==0)retum(6J
returnC7);
)
main()
{intcount=0,i,m,n,sum=0;
printf("Enterm,n:");
scanf("%d%d",&m,&n);
for(i=m;i<=n;i++)
if((8)){
sum+=i;
count++;
)
printf("count=%d,sum=%d\n",count,sum);
【供選擇的答案】
(5)A、1B、m
C、m==1D、0答案:D
(6)A>mB、1
C、0D、n答案:C
⑺A、mB、1
C、0D、i==n答案:B
⑻A、prime(i)!=0B、prime⑴==0
C、1=prime(i)D、!prime(i)答案:A
試題3(每小題3分,共12分)
【程序說明】
輸入一個2*3的二維數(shù)組,找出最大值以及它的行下
標(biāo)和列下標(biāo),并輸出該結(jié)果。
運(yùn)行示例:
Enterarray(2*3):3210-96-1
max=a[0J[2]=10
3210
-96-1
#include<stdio.h>
main()
{intcol,row,i,j;
inta[2][3];
printf("Enterarray(2*3):");
for(i=0;i<2;i++)
for(j=0;j<3;j++)
scanf("%d".(9)
(10)_______;
for(i=0;i<2;i++)
for(j=0;j<3;j++)
if(a[i][j]>a[row][col])
{(11)
)
printf("max=a[%d][%d]=%d\n",row,col,a[row][col]);
for(i=0;i<2;i++)
{for(j=0;j<3;j++)
printf("%4d",a[i][j]);
(12)
【供選擇的答案】
(9)A、&a[i]U]B、&a[j][i]
C、a[i][j]D、a[j][i]答案:A
(10)A>row=col=2;B、row=col=0;
C、a[row][col]=0;D、a[row][col]=-l;答
案:B
(11)A、row=j;col=i;B、a[row][col]=a[i][j];
C、row=i;col=j;D、a[row][col]=a[j][i];答
案:C
(12)A、printf("\n”)};B、}printf("\n”);
C、;D、printf("\n");}答案:D
試題4(每小題3分,共12分)
閱讀下列程序并回答問題,在每小題提供的若干可選答
案中挑選一個正確答案。
【程序】
#include<stdio.h>
main()
{intopl,op2,res;
charopertor;
scanf("%d",&opl);
opertor=getchar();
while(opertor!='=')
(
scanf("%d",&op2);
switch(opertor)
(
case'+':res=op1+op2;break;
case'-':res=opl-op2;break;
case'*':res=opl*op2;break;
case'/':res=op1/op2;break;
default:res=O;
)
opl=res;
opertor=getchar();
)
printf("%d\n",res);
)
(13)程序運(yùn)行時,輸入2*3-2=,輸出(13)。
A、6B、2
C、0D、4答案:D
(14)、程序運(yùn)行時,輸入15+2/3=,輸出
(14)________________o
A、16B、15
C、6D、5答案:D
(15)、程序運(yùn)行時,輸入1+2*10-10/2=,輸出
(15)________________o
A、10B、16
C、15D、25答案:A
4、程序運(yùn)行時,輸入1+3*527=,鼬(16)
A、3B、1
C、-2D、-3答案:A
試題5(每小題3分,共12分)
閱讀下列程序并回答問題,在每小題提供的若干可選答
案中挑選一個正確答案。
【程序】
#include<stdio.h>
#defineMAXLEN80
main()
{intk=0,number=0;
charstrLMAXLENJ;
while((str[k]=getchar())!='#')
k++;
strlk]=\0';
for(k=0;strlk]!='\0';k++)
if(str[k]>='0'&&str[k]<='9'llstr[k]=='A,llstr[k]=='B')
if(str[k]>='0'&&str[k]<='9')
number=number*12+str[k]-'O';
elseif(str[k]=='A,llstr[k]=='B')
number=number*12+str[k]-'A'+10;
else;〃第15行
elsebreak;〃第16行
printf("%d\n",number);
(17)、程序運(yùn)行時,輸入10#,輸出(17)
A、16B、10
C、12D、1答案:A
(18)、程序運(yùn)行時,輸入laO#,輸出(序)
A、264B、10
C、1D、12答案:C
(19)、第16行改為后,程序運(yùn)行時,輸入A*0#,
輸出(19)。
A、0B、120
C、10D、12答案:B
(20)、第16行改為“elsebreak;”刪除第15行后,程序
運(yùn)行時,輸入IbO#,輸出(20)。
A、10B、12
C、276D、1答案:B
試題6(每小題3分,共12分)
閱讀下列程序并回答問題,在每小題提供的若干可選答
案中挑選一個正確答案。
【程序】
#include<stdio.h>
#include<string.h>
main()
{char*S[2]={"****","****"};
while(*s[l]!='O)
{printf("%s\n",s[O]+strlen(s[l])-l);
s[l]++;
)
)
(21)、程序運(yùn)行時,第]行輸出(19)。
A、****B、***
C、**D、*答案:D
(22)、程序運(yùn)行時,第2行輸出(19)。
A、****B、***
C、**D、*答案:C
(23)、程序運(yùn)行時,第3行輸出(19)。
A、****B、***
C、**D、*答案:B
(24)、程序運(yùn)行時,第4行輸出(19)。
A、****B***
C、**D、*答案:A
試題7(28分)
1、定義函數(shù)fact(n)計算n的階乘:n!=l*2*3*.......*n,函
數(shù)的返回值類型是double。
2、定義函數(shù)cal(m,n)計算累加和:s=m+(m+l)+(m+2).......
+n,函數(shù)的返回值類型是doubleo
3、定義函數(shù)main。,輸入整數(shù)n,計算并輸出下列算式的
值。該算式中,每一項(xiàng)的分子是累加和,要求調(diào)用函數(shù)
cal(m,n)計算累加和;每一項(xiàng)的分母是階乘,要求調(diào)用函
數(shù)fact(n)計算n!。y=1+(1+2)/2!+(1+2+3)/3!+……+
(1+2+3+.....n)/n!
#include<stdio.h>
doublefact(intn)〃第一題
{inti;
doublet=l;
for(i=l;i<=n;i++)
t*=i;
returnt;
)
doublecal(intm,intn)//第二題
{doubles=0;
inti;
for(i=m;i<=n;i++)
s+=i;
returns;
)
main()〃第三題
{intn,i;
doubles=0;
printf("請輸入一個正整數(shù):");
while(scanf("%d",&n),n<=0);
for(i=l;i<=n;i++)
s+=cal(l,i)/fact(i);
printf("%f",s);
2007年秋浙江省高校
計算機(jī)等級考試試卷(二級C)
試題1(每小題3分,共12分)
程序說明輸入2個整數(shù)lower和upper,輸出一張華氏-
攝氏轉(zhuǎn)換表,華氏溫度的取值范圍[lower,upper],每次增
加2F,計算公式:c=5*(f-32)/9;式中c表示攝氏,f表示
華氏。
運(yùn)行示例:
Enterlower:30
Enterupper:35
fahrCelsius
30-1.1
320.0
341.1
程序:
#include<stdio.h>
main()
{intfahr,lower,upper;
doubleCelsius;
printf("Enterlower:");
scanf("%d",&lower);
printf("Enterupper:");
scanf("%d",&upper);
printf("fahrcelsius\n");
for(fahr=lower;QJ;(2))
(
celsius=(3);
printf("%d(4)\n”,fahr,celsius):
)
)
【供選擇的答案】
(1)A、fahr<=upperB、fahr<upper
C、fahr>=upperD、fahr>upper答
案:A
(2)A、fahr++B、fahr=fahr-2
C、fahr+2D、fahr=fahr+2答案:D
⑶A、5*(fahr-32)/9B、(5.0/9.0)*(fahr-32)
C、5/9*(fahr-32)D、5*fahr-32/9答
案:B
(4)A、%6dB、%6.2f
C、%6.1fD、%6.0f答案:C
試題2(每小題3分,共12分)
程序說明
輸入2個正數(shù)a和n,求a+aa+aaa+.......+a(n個
a)這和,要求定義并調(diào)用函數(shù)fn(a,n),這它的功能是
返回aa…a(n個a)。例如fn(3,2)的返回是33。
運(yùn)行示例:
Entera:2
Entern:3
sum=246
#include<stdio.h>
main()
{inti,n;
longa,sn;
longfn(longa,intn);
printf("Entera:");
scanf("%ld",&a);
printf("Entern:");
scanf("%d",&n);
(5)
for(i=l;i<=n;i++)
(6)
printf("sum=%ld\n",sn);
)
longfn(longa,intn)
{inti;
longtn=0;
for(i=l;i<=n;i++)
(
tn=tn+a;
⑺
(8)
)
【供選擇的答案】
(5)A、sn=0;B、;
C、sn=l;D、sn=a;答案:A
(6)A、sn=sn+fn(a,i);B、sn=sn+fn(a,n);
C>sn=sn+fn(i,a);D、sn=sn+fn(i,n);答
案:A
(7)A、tn=tn*10B、a=a*10;
C、sn=tn*10;D、sn=sn+a*10答案:B
(8)A、return;B、returnsn;
C、returna;D、returntn;答
條:D
試題3(每小題3分,共12分)
程序說明
輸入一行以回車結(jié)束的字符串(少于80個字符),刪
除其中的英文字母和數(shù)字字符以外的其它字符,再判斷
字符串是否對稱(不區(qū)分大小寫)。
運(yùn)行示例1:
Enterastring:MadamI'mAdam
Yes
運(yùn)行示例2:
Enterastringrelephant
No
程序
#include<stdio.h>
(9)
main()
{intflag,i,k,length;
charstr[8O];
printf("Enterastring:");
gets(str);
i=k=0;
while(str[i])
(
if(isupper(str[i]))str[ij=tolower(str[i]);
if(isdigit(str[i])llisalpha(str[i]))
1(10)
k++;
i++;
)
(11)
length=k;
flag=l;
for(k=0;k<=length/2;k++)
if(str[k]!=str[length-k-l])
(
(12)
break;
)
if(flag)printf("yes\n");
elseprintf("no\n");
)
【供選擇的答案】
(9)A、ctype.hB、string.h
答案:A
C、stdio.hD、math.h
(10)A、i++;B、str[kj=str[i];
C、str[i]=str[k];D、;
答案:B
(11)A、str[i]=,\0,;B、str[i-l]=,\0,;
C、str[kJ=,\0,;D、;
答案:C
(12)A、flag=l;B、flag=0;
C、;D、continue;
答案:B
試題4(每小題3分,共12分)
閱讀下列程序并回答問題,在每小題提供的若干可選答
案中挑選一個正確答案。
[程序]
#include<stdio.h>
main()
{inti,m;
scanf("%d",&m);
for(i=2;i<=m/2;i++)
if(m%i==O)
(
printf("%d#",i);
break;〃第8行
)
printf("%d",i);
)
(13)、程序運(yùn)行時,輸入5,輸出
A、3B、3#3
C、3#4D、3#5答案:A
(14)、程序運(yùn)行時,輸入9,輸出
A、3B、3#3
C、3#4D、3#5答案:B
(15)、將程序第8行改為“continue;”程序運(yùn)行時,輸
入9,輸出。
A、3B、3#3
C、3#4D、3#5答
條:D
(16)、將程序第8行改為程序運(yùn)行時,輸入9,輸
出O
A、3B、3#3
C、3#4D、3#5答案:D
試題5(每小題3分,共12分)
閱讀下列程序并回答問題,在每小題提供的若干可選答
案中挑選一個正確答案。
[程序]
#include<stdio.h>
main()
(
inti,j,temp;
inta[3][3]={1,23,4,5,6,7,8,9);
voidf(int*x,int*y);
for(i=0;i<3;i++)
for(j=0;j<3;j++)
if(i<j)
f(&a[i][j],&a|j][i]);//M8行
for(i=0;i<3;i++)
for(j=0;j<3y++)
printf("%2d",a[i][j]);
)
voidf(int*x,int*y)
{intt;
t=*x;*x=*y;*y=t;
)
(17)程序的輸出是。
A、32164987B、789456123
C、123456789D、147258369
答案:D
(18)、第8行改為后,程序的輸
出O
A、32164987B、789456123
C、123456789D、147258369
答案:C
(19)、第8行改為“if(i<2)f(&a[皿,后,程
序的輸出。
A、32164987B、789456123
C、123456789D、147258369
答案:B
(20)、第8行改為皿2-j]);"后,程
序的輸出。
A、32164987B、789456123
C、123456789D、147258369
答案:A
試題6(每小題3分,共12分)
閱讀下列程序并回答問題,在每小題提供的若干可選答
案中挑選一個正確答案。
[程序]
#include<stdio.h>
main()
(
inti,xl,x2;
inta[5]={l,2,3,4,5};
voidfl(intx,inty),f2(int*x,int*y);
xl=x2=0;
for(i=0;i<5;i++)
if(a[i]>a[xlj)xl=i;
if(a[i]<a[x2])x2=i;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年外研銜接版選擇性必修2物理下冊階段測試試卷
- 二零二五年度餐飲企業(yè)品牌孵化與培育合同3篇
- 2025年蘇人新版九年級地理下冊月考試卷
- 2025年人教A新版選擇性必修2歷史上冊階段測試試卷
- 2025年統(tǒng)編版2024九年級歷史下冊月考試卷
- 2025年粵教版九年級歷史上冊階段測試試卷含答案
- 2025年蘇教新版九年級生物上冊階段測試試卷
- 二零二五年度程控交換機(jī)遠(yuǎn)程監(jiān)控與維護(hù)專項(xiàng)合同3篇
- 2025木工施工合同書
- 2025年度個人工程承包合同模板(綠色建筑項(xiàng)目)2篇
- 經(jīng)顱磁刺激增強(qiáng)定神狀態(tài)的研究
- 會陰切開傷口裂開的護(hù)理查房
- 《鋼鐵是怎樣煉成的》選擇題100題(含答案)
- 實(shí)驗(yàn)報告·測定雞蛋殼中碳酸鈣的質(zhì)量分?jǐn)?shù)
- 部編版小學(xué)語文五年級下冊集體備課教材分析主講
- 電氣設(shè)備建筑安裝施工圖集
- 《工程結(jié)構(gòu)抗震設(shè)計》課件 第10章-地下建筑抗震設(shè)計
- 公司法務(wù)部工作細(xì)則(草案)
- 第18課《文言文二則 鐵杵成針》(學(xué)習(xí)任務(wù)單)- 四年級語文下冊部編版
- 《功能材料概論》期末考試試卷及參考答案2023年12月
- 機(jī)器設(shè)備抵押合同
評論
0/150
提交評論