第61题 (10.0分) 难度:易 第6章
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:有以下程序段,且变量已正确定义和赋值
for(s=1.0,k=1;k<=n;k++)
s=s+1.0/(k*(k+1));
printf("s=%f\n\n",s);
请填空,使下面用//....//标识的程序段的功能与
之完全相同。
-------------------------------------------------------*/
#include <stdio.h>
main()
{
double s;
int k,n=10;
/***********SPACE***********/
【?】;
k=1;
/***********SPACE***********/
while(【?】)
{
s=s+1.0/(k*(k+1));
/***********SPACE***********/
【?】;
}
printf("s=%f\n\n",s);
}
答案:
=======(答案1)=======
s=1.0
=========或=========
s=1
=======(答案2)=======
k<=n
=======(答案3)=======
k++
=========或=========
k=k+1
第62题 (10.0分) 难度:易 第2章
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:通过函数的递归调用计算阶乘。
-------------------------------------------------------*/
#include <stdio.h>
long power(int n)
{
long f;
if(n>1)
/***********SPACE***********/
f=【?】;
else
f=1;
return(f);
}
main()
{
int n;
long y;
printf("input a inteager number:\n");
/***********SPACE***********/
scanf("%d",【?】);
y=power(n);
/***********SPACE***********/
printf("%d!=%ld\n",n,【?】);
}
答案:
=======(答案1)=======
power(n-1)*n
=========或=========
n*power(n-1)
=======(答案2)=======
&n
=======(答案3)=======
power(n)
=========或=========
y
第63题 (10.0分) 难度:易 第20章
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:调用函数fun计算m=1-2+3-4+……+9-10,并输出结果。
-------------------------------------------------------*/
#include <stdio.h>
int fun( int n)
{
int m=0,f=1,i;
/***********SPACE***********/
for(i=1;【?】;i++)
{
m+=i*f;
/***********SPACE***********/
【?】;
}
/***********SPACE***********/
return 【?】;
}
main()
{
printf("m=%d\n", fun(10));
}
答案:
=======(答案1)=======
i<=n
=======(答案2)=======
f= -f
=======(答案3)=======
m
第64题 (10.0分) 难度:易 第1章
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:请输入一个大于100的正整数a,将a的百位、十位和个位依
次放在b的个位、十位和百位上。
例如:输入"321",输出"结果是:123"。
-------------------------------------------------------*/
#include <conio.h>
#include <stdio.h>
main ()
{
/***********SPACE***********/
【?】 a,b;
printf ("请输入一个大于100的正整数:");
/***********SPACE***********/
【?】("%d", &a);
b=(a%10)*100 + ((a/10)%10)*10 + (a/100)%10;
/***********SPACE***********/
printf ("结果是: %d\n",【?】 );
}
答案:
=======(答案1)=======
int
=======(答案2)=======
scanf
=======(答案3)=======
b
第65题 (10.0分) 难度:易 第1章
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:从键盘输入一组整数,使用条件表达式找出最大的整数。
当输入的整数为 0 时结束。
例如,输入 1 2 3 5 4 0 时,输出"max=5"。
-------------------------------------------------------*/
#include <stdio.h>
#include <conio.h>
main()
{
/***********SPACE***********/
【?】 num=-1;
int max = 0;
printf("请输入一组整数: \n");
/***********SPACE***********/
【?】(num!=0)
{
scanf("%d", &num);
/***********SPACE***********/
max = num>max ? num 【?】 max;
}
printf("max=%d\n", max);
}
答案:
=======(答案1)=======
int
=======(答案2)=======
while
=======(答案3)=======
:
第66题 (10.0分) 难度:中 第2章
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:用递归法将一个整数n转换成字符串,例如输入483,应输出
对应的字符串"483"。n的位数不确定,可以是任意位数的整
数。
-------------------------------------------------------*/
#include <stdio.h>
void convert(int n)
{
int i;
/***********SPACE***********/
if((【?】)!=0)
convert(i);
/***********SPACE***********/
putchar(n%10+【?】);
}
main()
{
int number;
printf("\ninput an integer:");
scanf("%d",&number);
printf("Output:");
if(number<0)
{
putchar('-');
/***********SPACE***********/
【?】;
}
convert(number);
}
答案:
=======(答案1)=======
i=n/10
=======(答案2)=======
'0'
=======(答案3)=======
number=-number
第67题 (10.0分) 难度:易 第92章
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:从键盘输入一个大写字母赋给c1,要求改用小写字母输出。
-------------------------------------------------------*/
#include <stdio.h>
void main()
{
char c1,c2;
/***********SPACE***********/
c1= 【?】;
/***********SPACE***********/
c2= 【?】;
printf("%c,%c",c1,c2);
}
答案:
=======(答案1)=======
getchar()
=======(答案2)=======
c1+32
第68题 (10.0分) 难度:中 第8章
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:下面程序的功能是用递归法求n!。
-------------------------------------------------------*/
#include <stdio.h>
void main()
{
/***********SPACE***********/
【?】;
int n;
long y;
printf("input an integer number:");
scanf("%d",&n);
/***********SPACE***********/
y=【?】;
printf("%d!=%ld\n",n,y);
}
long fac(int n)
{
long f;
if(n<0)
printf("n<0,data error!");
else if(n==0,n==1)
f=1;
else
/***********SPACE***********/
f=【?】;
return(f);
}
答案:
=======(答案1)=======
long fac(int n)
=======(答案2)=======
fac(n)
=======(答案3)=======
fac(n-1)*n
=========或=========
n *fac(n-1)
第69题 (10.0分) 难度:中 第1章
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:函数fun的功能是:计算如“图片1”的前n项之和。
若x=2.5,n=15时,函数值为1.917914。
-------------------------------------------------------*/
#include <stdio.h>
#include <math.h>
double fun(double x, int n)
{
double f, t;
int i;
/***********SPACE***********/
f = 【?】;
t = -1;
for (i=1; i<n; i++)
{
/***********SPACE***********/
t *= (【?】)*x/i;
/***********SPACE***********/
f += 【?】;
}
return f;
}
main()
{
double x, y;
x=2.5;
y = fun(x, 15);
printf("\nThe result is :\n");
printf("x=%-12.6f y=%-12.6f\n", x, y);
}
答案:
=======(答案1)=======
1.0
=======(答案2)=======
-1
=======(答案3)=======
t
第70题 (10.0分) 难度:易 第6章
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:计算并输出500以内最大的10个能被13或17整除的自然数之和。
-------------------------------------------------------*/
#include <conio.h>
#include <stdio.h>
/***********SPACE***********/
int fun(【?】 )
{
int m=0, mc=0;
/***********SPACE***********/
while (k >= 2 && 【?】)
{
/***********SPACE***********/
if (k%13 == 0 || 【?】)
{
m=m+k;
mc++;
}
k--;
}
/***********SPACE***********/
【?】;
}
main ( )
{
printf("%d\n", fun (500));
}
答案:
=======(答案1)=======
int k
=======(答案2)=======
mc<10
=========或=========
10>mc
=========或=========
mc<= 9
=========或=========
9>=mc
=======(答案3)=======
k%17==0
=========或=========
!(k%17)
=========或=========
k/17*17==k
=======(答案4)=======
return m
=========或=========
return (m)