填空为:sum<=10000
sum=sum-s //填空理由,参考前一同学的编程题
结果:945 程序设计
计算Y=X/1!-X^3/3!+X^5/5!-??前20项的值(已知x=2)按四舍五入的方式精确小数点后两位。 main()
{ int x=2,i,a; float y=0,b=1; a=x;
for(i=1;i<=20;i++) { y+=a/b;
a=-a*x*x; //a分子
b=b*(2*i)*(2*i-1); //b分母 }
printf(\}
26、在TC中,若K是int型变量,具有下面的程序片段:int=-2;if(k<=0) printf(“####”); else printf(“&&&&”);输出结果是(A)
A .#### B.&&&& C.####&&&& D.有语法错误,无输出结果 27、在TC中,表达式 10 != 9的值是(A) A. 1 B.非零值 C. 0 D. true
28、在C语言中,当do-while语句中的条件为(A)是,结束循环。 A .0 B.非0 C.true D.1
29、在C语言中定义数组int a[12]={1,2,3,4,5,6,7,8,9,10,11,12}则a[3]的值为(B) A.6 B.4 C.5 D.3 30、C语言程序是有(A)组成的
A.主程序和子程序 B.过程 C.子程序 D.函数 程序填空题
已知fibonacci数列:1,1,2,3,5,8, ??,它可由下面公式表述; F(1)=1 if n=1 #include”stido.h” main()
{ double f1, f2; int i;
__________;------------------f1=1 f2=1;
for(i=1;i<=10;i++) { f1=f1+f2;
________;}--------------------f2=f1+f2
printf(“.0lf, f1”); } 结果:10948 程序设计题
回文数是指正读和反读都一样的正整数,例如3773,求出[1000,9999]以内所有回文数的个数. #include”stdio.h”
main()
{ int i,a,b,c,d,count=0;
for(i=1000;i<=9999;i++) { a=i/1000; b=i/100; c=i/10; d=i;
if(i==d*1000+c*100+b*10+a) count++; }
printf(\} 结果:90
26、在TC中若有定义语句char s【10】;s=“abcd”;printf(“%s”,s)则结果是abcd 27、在TC中,定义int*swap()指的是() A.指一个返回指向整形值指针的函数swap
28、在C语言中,一下那个函数用于将字符输出到标准输出设备() D .putchar()
29、在C语言中,不属于转义字符的是() A ?074?
30、在TC中,若x=0,y=1,则语句while(x==y){x++;break;}循环执行次数是(0) 程序改错
下列是程序表达式s=1+1/3+(1*2)/(3*5)+(1*2*3)/(3*5*7)+???. 当n=40时,程序结果 #include“conio.h” #include“stdio.h” #include“math.h” Double fun(int n) { double s,t; int i;
s=1.0,t=1.0;
for(i=1;i<=n;i++) { t=t*i/(2*i+1); s+=t;} return s ;} main()
{ printf(”\\n.10lf”,fun(40));} 答案,1.5707963268 程序设计
设有十进数字a,b,c,d,和e,他们满足下列式子: abcd*e=bcde(a不用等于0)求满足以上条件的四位数abcd的个数 #include“conio.h” #include“stdio.h” void main()
{ int a,b,c,d,e,n=0;
int t;
for(t=1000;t<10000;t++) { b=(t00)/100; c=(t0)/10; d=t;
for(e=1;e<10;e++)
if(t*e==(b*1000+c*100+d*10+e)) { n++;
printf(“%d,%d\\n”,t,e); }}
printf(“%d”,n);} 答案 3
26、在TC中,设x,y,z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值( A )
A.32 B.16 C.4 D.52 27、在TC中,以下程序的输出结果是( D ) main ()
{ int a=12 ,b=12 printf(“%d%d\\n”,--a ,++b);}
A.10 10 B.12 12 C.11 10 D.11 13 28、在C语言中,以下程序的输出结果是( A ) main ()
{ int x=21;
do{ printf(“%d”,--x);}while (!x);}
A.20 B.123 C.21 D.321 29、在C语言中,下面程序输出结果( B ) main() { int i ;
int a[3][3]={1,2,3,4,5,6,7,8,9}; for ( i=0;i<3;i++)
printf(“%d”,a[2-i][i]);}
A.1 5 9 B.7 5 3 C.5 9 1 D.3 5 7 30、在C语言中,下面有关for循环的正确描述是( D )
D.for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来。 程序选择题:
26、C语言程序中下列哪个函数用于字符串的比较 ( B )
A.strcat B.strcmp C.strcpy D.strlen //了解四个函数的作用功能 27、在TC中,设K为整型变量,则下列while循环共执行(D )次。 K=2;
while(K!=0) printf(“%d”,K);K--; printf(“\\n”);
A.2 B.0 C.1 D.无限多 28、在TC中,假定有以下变量定义 int K=7, x=12,
则能使其值为3的表达式是( D )
A. x%=(K-K%5) B. x%=(K%=5) C. x%=K-K%5 D. (x%=K)-(K%=5) 29、在C语言中,要求运算数必须是整型的运算符是( A ) A.% B./ C.< D.|
30、在TC中,若x和y都是int型变量,x=100,y=200,下列语句的输出结果是( D ) printf(“%d\\n”,(x,y));
A.输出格式符不够,输出不确定的值 B.100 C.100 200 D.200
程序改错题:
下列程序是求1000以内的最大的30个素数之和,请修改程序中的错误,并写出正确答案。 程序:
#include
{ int sum=0,n=0,j,yes; /*下行有错*/
while((high>=2)||(n<10)) &&n<=30 : //将||改为& ,将10改为30 { yes=1;
for(j=2;j<=sqrt(high);j++) if (high%j= =0)
/*下行有错*/
{yes=0;break;} 将break去掉,没有原则错误 if(yes) {sum+=high;n++;} hlgh --;} return sum;} main( ) { //clrscr( )
printf (“%d\\n”,fun(1000)); } 结果为:29565 程序填空题:
下面程序是求表达式的值:
S=1+1/3+(1*2)/(3*5)+(1*2*3)/(3*5*7)+……(1*2*3*4*……*n)/(3*5*7*9*…..(2*n+1)) 请将程序补充完整,并给出当n=25. #include
for(i=1;i<=n;i++) { t=t*i/(2*i+1) s=s+t; } return s;}
main( )
{ printf(“.10lf”;fun(25))} 结果是:1.5707963218
程序改错
求10000以内的所有完全数的个数: #include
{ int count,n,m,s,k; count=0;
for (n=3;n<=10000;n++) {/*下行有错*/ s=1; k=n/2+1;
for (m=1;m s+=1; //因子和:加因子s+=m,不是因子个数和 if (s= =n) //判别是完数。 { count+=1;}} printf(\改为:s=0 s=s+m 程序设计题: 求在[10,100]之间的所有完数之和。各正因子之和(不包括自身)等于其本身的正整数称为完数,例如:6=1+2+3,6是完数。 参考上题: if (s= =n) { sum+=s;} //sum变量为完数和 26、在TC中,已知:unsigned int x=65535;则执行以下语句后的x的值为( A ) A.65535 B.1 C.无定值 D.-1 27、在TC中,以下的for循环(A) for(x=0,y=0;(y=123)&&(x<4);x++); A.是无限循环 B.循环次数不定 C.执行4次 D.执行3次. 28、在C语言中,以下叙述正确的是(C) A.函数可以嵌套调用也可以嵌套定义 B. .函数不可以嵌套调用但可以嵌套定义 C. .函数可以嵌套调用但不可以嵌套定义 D. .函数不可以嵌套调用也不可以嵌套定义 29、在C语言中,以下程序输出结果是( B ) main() { int a=0,b=-1,c=2;