文档视界 最新最全的文档下载
当前位置:文档视界 › C语言程序填空1

C语言程序填空1

一、程序填空 共72题 (共计1440分)
第1题 (20.0分)
功能:下面的程序是求1!+3!+5!+……+n!的和。
-------------------------------------------------------*/
#include
main()
{
long int f,s;
int i,j,n;
/***********SPACE***********/
【?】;
scanf("%d",&n);
/***********SPACE***********/
for(i=1;i<=n; 【?】)
{
f=1;
/***********SPACE***********/
for(j=1; 【?】;j++)
/***********SPACE***********/
【?】;
s=s+f;
}
printf("n=%d,s=%ld\n",n,s);
}

答案:⑴s=0 ⑵i+=2或i=i+2或i++,i++ ⑶j<=i 或i>=j⑷f= f * j


第2题 (20.0分)
---------------------------------------------------------
功能:以每行5个数来输出300以内能被7或17整除的偶数,并求出
其和。
-------------------------------------------------------*/
#include
#include
main()
{
int i,n,sum;
sum=0;
/***********SPACE***********/
【?】;
/***********SPACE***********/
for(i=1; 【?】 ;i++)
/***********SPACE***********/
if(【?】)
if(i%2==0)
{
sum=sum+i;
n++;
printf("%6d",i);
/***********SPACE***********/
if(【?】)
printf("\n");
}
printf("\ntotal=%d",sum);
}

答案:⑴n=0 ⑵i<=300 i<300 300>=i,300>i ⑶ i%7 == 0 || i%17 == 0或!(i%7)||!(i%17)
或!(i%17)||!(i%7)或!(i%7&&i%17) ⑷ n%5 == 0或!(n%5)或n/5*5==n
第3题
功能:分别求出一批非零整数中的偶数、奇数的平均值,用零作
为终止标记。
-------------------------------------------------------*/
#include
main()
{
int x,i=0,j=0;
float s1=0,s2=0,av1,av2;
scanf("%d",&x);
/***********SPACE***********/
while(【?】)
{
if(x%2==0)
{
s1=s1+x;
i++;
}
/***********SPACE***********/
【?】
{
s2=s2+x;
j++;
}
/***********SPACE***********/
【?】;
}
if(i!=0)
av1=s1/i;
else
av1=0;
if(j!=0)
/***********SPACE***********/
【?】 ;
else
av2=0;
printf("oushujunzhi:%7.2f,jishujunzhi:%7.2f\n",av1,av2);
}

答案:
⑴x != 0或x ⑵else 或else if(x%2==1)或else if(x%2!=0)或if(x%2) ⑶scanf("%d",&x) ⑷av2=s2/j

第4题
功能:求两个非负整数的最大公约数和最小公倍数。
-------------------------------------------------------*/
#include
main()
{
int m,n,r,p,gcd,lcm;
scanf("%d%d",&m,&n);
if(mp=m*n;
r=m%n;
/***********SPACE***********/
while(【?】 )
{
/***********SPACE***********/
m=n;n=r; 【?】;
}
/***********SPACE***********/
gcd=【?】;
lcm=p/gcd;
/***********SPACE***********/
printf("gcd=%d,lcm=%d\n", 【?】);
}

答案:
⑴r!=0或r ⑵r=m%n 或r=m-m/n*n ⑶n ⑷gcd,lcm

或n,lcm

第5题
功能:计算并输出500以内最大的10个能被13或17整除的自然数之和。
#include
#include
/***********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));
}

答案:⑴int k ⑵mc<10 或 10>mc 或mc<=9 或9 >= mc
⑶k%17==0或!(k%17)或k/17*17 == k ⑷return m或return(m)

第6题
功能:以下程序的功能如(图1)。
#include
#include
/***********SPACE***********/
double f(【?】)
{
/***********SPACE***********/
【?】;
/***********SPACE***********/
if (【?】)
y=2.0*x*x+3.0*x+4.0;
else
y=-2.0*x*x+3.0*x-4.0;
/***********SPACE***********/
【?】;
}

main ( )
{
printf("%f\n", f(f(-1.0)+f(5.0)));
}

答案:⑴float x或double x ⑵double y ⑶x<=2 或2>=x ⑷return y或return (y)

第7题
题目:求100以内个位数为6且能够被3整除的所有数
#include
void main()
{
int i,j;
/***********SPACE***********/
for(i=0;【?】;i++)
{
j=i*10+6;
/***********SPACE***********/
if(【?】)
continue;
printf("%d\t",j);
}
}

答案:⑴i<10或i<=9 ⑵j%3 !=0或(j/3) * 3 != j

第8题
题目:计算100-1000之间有多少个数,其各位数字之和是5
#include
void main()
{
int i,s,k,count=0;
for(i=100;i<1000;i++)
{
s=0;
k=i;
/***********SPACE***********/
while(【?】)
{
s=s+k%10;
/***********SPACE***********/
k=【?】;
}
if(s!=5)
/***********SPACE***********/
【?】;
else
{
count++;
printf("%d %d\n",count,i);
}
}
printf("个数为:%d\n",count);
}
答案:
⑴k>0或k或k>=1 ⑵k/10 ⑶continue

第9题 功能:输入整数a和b,交换a和b后输出。
#include

void main()
{
int a,b,temp;
printf("输入整数a,b:");
scanf("%d%d",&a,&b);
temp=a;
/***********SPACE***********/
【?】;
/***********SPACE***********/
【?】;
printf("a=%d b=%d\n",a,b);
}

答案:⑴a=b ⑵b=temp
第10题
题目:下列程序的功能是输入一个正整数,判断是否能被3或7整除,若不能被3或7整除,
就输出"YES",否则就输出"NO"。请填空。
#include
void main( )
{ int k;
/***********SPACE***********/
sca

nf ("%d",【?】);
/***********SPACE***********/
if (【?】)
printf("YES\n");
else
printf ("NO\n");
}
答案:⑴&k ⑵!((k%3==0)||(k%7==0))
第11题
功能:从键盘输入一个大写字母赋给c1,要求改用小写字母输出。
-------------------------------------------------------*/
#include
void main()
{
char c1,c2;
/***********SPACE***********/
c1= 【?】;
/***********SPACE***********/
c2= 【?】;
printf("%c,%c",c1,c2);
}
答案:
⑴getchar() ⑵c1+32

相关文档