C语言题库.docx
《C语言题库.docx》由会员分享,可在线阅读,更多相关《C语言题库.docx(59页珍藏版)》请在冰点文库上搜索。
![C语言题库.docx](https://file1.bingdoc.com/fileroot1/2023-5/5/94284449-4a42-44b6-99e3-4825c7f9aa5c/94284449-4a42-44b6-99e3-4825c7f9aa5c1.gif)
C语言题库
山东交通学院C语言期末考试第一套
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
<<<题干内容>>>
完成程序填空,实现的功能是输出如下形式的方阵:
13141516
9101112
5678
1234
-------------------------------------------------------*/
#include
intmain()
{
inti,j,x;
/***********SPACE***********/
for(j=4;【?
】;j--)j>0或j>=1
{
for(i=1;i<=4;i++)
{
/***********SPACE***********/
x=【?
】;(j-1)*4+i
printf("%4d",x);
}
/***********SPACE***********/
printf(【?
】);“\n”
}
return0;
}
//完成程序填空,实现输入4个整数,要求按由小到大的顺序输出。
#include
main()
{intt,a,b,c,d;
printf("请输入四个数:
");
scanf("%d,%d,%d,%d",&a,&b,&c,&d);
printf("a=%d,b=%d,c=%d,d=%d\n",a,b,c,d);
if(a>b)
{t=a;a=b;b=t;}
if(a>c)
/***********SPACE***********/
{t=a;【?
】;c=t;}a=c
if(a>d)
{t=a;a=d;d=t;}
if(b>c)
/***********SPACE***********/
{t=b;b=c;【?
】;}c=t
if(b>d)
if(c>d)
/***********SPACE***********/
{【?
】;c=d;d=t;}t=c
printf("排序结果如下:
\n");
printf("%d%d%d%d\n",a,b,c,d);
}
/*完成程序填空,输出所有的水仙花数。
水仙花数是一个三位数,
其个、十、百位数字三次方之和为这个数。
例如
371=3*3*3+7*7*7+1*1*1
*/
#include
intmain()
{intnum,bai,shi,ge;
/***********SPACE***********/
for(num=100;【?
】;num++)num<=999
{bai=num/100;
/***********SPACE***********/
shi=【?
】num/10%10
ge=num%10;
/***********SPACE***********/
if(【?
】)//num==bai*bai*bai+shi*shi*shi+ge*ge*geprintf("%5d\n",num);
}
return0;
}
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
将a++或++a或a--或--a填入程序填空中,实现如图所示的输出。
(填入其他无效)-------------------------------------------------------*/
#include
main()
{
inti,a;
i=1;
a=i++;
/***********SPACE***********/
printf("a=%d,i=%d\n",【?
】,i++);a++
printf("a=%d,i=%d\n",a,i);
printf("a=%d,i=%d\n",++a,++i);
printf("a=%d,i=%d\n",a,i);
/***********SPACE***********/
printf("a=%d,i=%d\n",【?
】,i--);a--
/***********SPACE***********/
printf("a=%d,i=%d\n",【?
】,--i);--a
printf("a=%d,i=%d\n",a,i);
}
【程序设计】
--------------------------------------------------
功能:
编写函数求3!
+6!
+9!
+12!
+15+18!
+21!
。
------------------------------------------------*/
#include"stdio.h"
floatsum(intn)
{
/**********Program**********/
inti,j;
floatt,s=0;
for(i=3;i<=n;i=i+3)
{
t=1;
for(j=1;j<=i;j++)
t=t*j;
s=s+t;
}
return(s);
/**********End**********/
}
/*------------------------------------------------
【程序设计】
--------------------------------------------------
功能:
判断一个整数w的各位数字平方之和能否被5整除,
可以被5整除则返回1,否则返回0。
使用DOWHILE
------------------------------------------------*/
#include"stdio.h"
#include"conio.h"
intfun(intw)
{
/**********Program**********/
intk,s=0;
do
{s=s+(w%10)*(w%10);w=w/10;}
while(w!
=0);
if(s%5==0)k=1;
elsek=0;
return(k);
/**********End**********/
}
/*------------------------------------------------
【程序设计】
--------------------------------------------------
功能:
编写函数fun求sum=d+dd+ddd+……+dd...d(n个d),
其中d为1-9的数字。
例如:
3+33+333+3333+33333(此时d=3,n=5),d和n在主函
数中输入。
------------------------------------------------*/
main()
{
intd,n;
longsum,fun();
printf("d=");
scanf("%d",&d);
printf("n=");
scanf("%d",&n);
sum=fun(d,n);
printf("sum=%ld\n",sum);
yzj();
}
longintfun(intd,intn)
{
/**********Program**********/
longints=0,t=0;
inti;
for(i=1;i{t=t+d;
s=s+t;
d=d*10;}
returns;
/**********End**********/
山东交通学院C语言期末考试第二套
/*
完成程序填空,实现以下功能:
一个小球从100米高度自由下落,每次落地后反跳回原来高度的一半,再下落,求它在第十次下落时,共经过多少米,第十次反弹多高?
*/
#include
intmain()
{
floatsum=0;
inti=2;
/***********SPACE***********/
floatheight【?
】;=100
sum=sum+height;
/***********SPACE***********/
while(【?
】)i<=10
{
/***********SPACE***********/
height=【?
】;height/2
sum+=2*height;
i++;
}
printf("总长度:
%f第10次跳%f米\n",sum,height);
return0;
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
<<<题干内容>>>
完成程序填空,使得程序执行如图所示:
-------------------------------------------------------*/
#include
main()
{
inti,a,b;
floatx,y,z;
i=1;
/***********SPACE***********/
x=【?
】i;
/***********SPACE***********/
printf("x=%【?
】i=%d\n",x,i);
y=30.1234567;
z=x+y;
printf("z=%f\n",z);
printf("z=%4.2f\n",z);
/***********SPACE***********/
printf("z=%【?
】\n",z);
printf("z=%15.8f\n",z);
printf("z=%e\n",x+y);
}
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
<<<题干内容>>>BOY
完成填空,实现运行程序如图所示。
-------------------------------------------------------*/
#include
main()
{
chara,b,c;
/***********SPACE***********/
【?
】;a=?
B?
b='O';
c='Y';
putchar(a);
/***********SPACE***********/
【?
】(b);putchar(b)
putchar(c);
/***********SPACE***********/
【?
】putchar(?
\n?
);
}
//完成程序填空,实现输出所有的水仙花数,所谓水仙花数是一个3位数,
//其各位数字的立方和等于该数本身。
例如153=13+53+33,故153是一个水仙花数。
intmain()
{
inta,b,c,n,i,k=0,m[10]={0};
/***********SPACE***********/
for(n=100;【?
】;n++)n<1000
{a=n/100;
b=n/10-a*10;
c=n%10;
/***********SPACE***********/
if(【?
】)a*a*a+b*b*b+c*c*c==n{m[k]=n;
/***********SPACE***********/
【?
】k++;
}
}
printf("所有的水仙花数为:
:
\n");
for(i=0;iprintf("%d",m[i]);
printf("\n");
return0;
}
/*------------------------------------------------
【程序设计】
--------------------------------------------------
功能:
对任意输入的x,用下式计算并输出y的值。
5x<10
y=0x=10
-5x>10
------------------------------------------------*/
#include
intfun(intn)
{
/**********Program**********/
intm;
if(n>=10)
if(n>10)
m=-5;
elsem=0;
elsem=5;
returnm;
/**********End**********/
}
/*------------------------------------------------
【程序设计】
--------------------------------------------------
功能:
判断一个整数w的各位数字平方之和能否被5整除,可以被5整除则返回1,否则返回0。
使用DOWHILE------------------------------------------------*/
#include"conio.h"
intfun(intw)
{
/**********Program**********/
intk,s=0;
do
{s=s+(w%10)*(w%10);w=w/10;}
while(w!
=0);
if(s%5==0)k=1;
elsek=0;
return(k);
/**********End**********/
}
/*------------------------------------------------
【程序设计】
--------------------------------------------------
功能:
计算并输出给定整数n的所有因子之和(不包括1与
自身)。
注意:
n的值不大于1000。
例如:
n的值为855时,应输出704。
------------------------------------------------*/
#include"stdio.h"
intfun(intn)
{
/**********Program**********/
ints=0,i;
for(i=2;iif(n%i==0)
s=s+i;
returns;
/**********End**********/
}
/*------------------------------------------------
【程序设计】
--------------------------------------------------
功能:
调用函数fun判断一个三位数是否"水仙花数"。
在main函数中从键盘输入一个三位数,并输
出判断结果。
请编写fun函数。
说明:
所谓"水仙花数"是指一3位数,其各位数字立方和
等于该数本身。
例如:
153是一个水仙花数,因为153=1+125+27。
------------------------------------------------*/
#include"stdio.h"
intfun(intn)
{
/**********Program**********/
inta,b,c;
b=n/10%10;
c=n/100;
if(a*a*a+b*b*b+c*c*c==n)
return1;
elsereturn0;
/**********End**********/
}
山东交通学院C语言期末考试第三套
//完成程序填空,实现输入4个整数,要求按由小到大的顺序输出。
#include
main()
{intt,a,b,c,d;
printf("请输入四个数:
");
scanf("%d,%d,%d,%d",&a,&b,&c,&d);
printf("a=%d,b=%d,c=%d,d=%d\n",a,b,c,d);
if(a>b)
{t=a;a=b;b=t;}
if(a>c)
/***********SPACE***********/
{t=a;【?
】;c=t;}a=c
if(a>d)
{t=a;a=d;d=t;}
if(b>c)
/***********SPACE***********/
{t=b;b=c;【?
】;}c=t
if(b>d)
{t=b;b=d;d=t;}
if(c>d)
/***********SPACE***********/
{【?
】;c=d;d=t;}t=c
printf("排序结果如下:
\n");
printf("%d%d%d%d\n",a,b,c,d);
}
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
<<<题干内容>>>65535
请在程序中填空,定义无符号短整型变量a,编译执行后输出如图所示结果
-------------------------------------------------------*/
#include
/***********SPACE***********/
【?
】
{
/***********SPACE***********/
【?
】a;
a=-1;
/***********SPACE***********/
return0;
}
//完成程序填空,实现已知三个数a,b,c,找出最大值放于max中。
#include
intmain()
{
inta,b,c,max;
printf("pleaseinputa,b,c:
\n");
scanf("a=%d,b=%d,c=%d",&a,&b,&c);
/***********SPACE***********/
if(a>=b)【?
】;max=a
elsemax=b;
/***********SPACE***********/
if(【?
】)max=c;c>max
/***********SPACE***********/
printf("max=%d\n"【?
】);,max
return0;
}
/*------------------------------------------------
【程序设计】
--------------------------------------------------
功能:
根据整型形参m,计算如下公式的值:
y=1/5+1/6+1/7+1/8+1/9+1/10...+1/(m+5)
例如:
若m=9,则应输出:
1.168229
------------------------------------------------*/
#include"stdio.h"
doublefun(intm)
{
/**********Program**********/
doubley=0;
inti;
for(i=0;i<=m;i++)
{y+=1.0/(i+5);}
return(y);
/**********End**********/
}
/*------------------------------------------------
【程序设计】
--------------------------------------------------
功能:
用do-while语句求1~100的累计和。
------------------------------------------------*/
#include
longintfun(intn)
{
/**********Program**********/
inti=1,sum=0;
{sum=sum+i;i++;}
while(i<=n);
returnsum;
/**********End**********/
}
/*------------------------------------------------
【程序设计】
--------------------------------------------------
功能:
从键盘为一维整型数组输入10个整数,调用fun
函数找出其中最小的数,并在main函数中输出。
请编写fun函数。
-------------------------------------------------*/
#include"stdio.h"
intfun(intx[],intn)
{
/**********Program**********/
intmin,i;
min=x[0];
for(i=1;i<10;i++)
{
if(x[i]min=x[i];
}
returnmin;
/**********End**********/
}
/*------------------------------------------------
【程序设计】
--------------------------------------------------
功能:
求一个n位自然数的各位数字的积。
(n是小于10的
自然数)
使用while
------------------------------------------------*/
#include"stdio.h"
#include"conio.h"
longfun(longn)
{
/**********Program**********/
longd,s=1;
while(n>0)
{
d=n%10;
s*=d;
n/=10;
}
returns;
/**********End**********/
山东交通学院C语言期末考试第四套
/*
完成程序填空,实现输入两个数字,若两数相等,则直接输出两个数字,若不相等,则这两个数中的较大者等于这个较大者减去较小者,再作比较,若不相等则重复上述操作,直到两