天津理工150c语言题库Word文档格式.docx
- 文档编号:19755404
- 上传时间:2023-01-09
- 格式:DOCX
- 页数:29
- 大小:22.49KB
天津理工150c语言题库Word文档格式.docx
《天津理工150c语言题库Word文档格式.docx》由会员分享,可在线阅读,更多相关《天津理工150c语言题库Word文档格式.docx(29页珍藏版)》请在冰豆网上搜索。
b=n/10-a*10;
c=n%10;
if(n==fac(a)+fac(b)+fac(c))
%d\n"
n);
intfac(inti)
intj,s=1;
for(j=1;
j<
=a;
j++)
s=s*j;
returns;
//输出145
3.题目:
有一分数序列:
2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。
答案:
32.66(要求答案一定要有小数)
void
int
i;
float
m=1,n=1,t,s=0;
for(i=1;
i<
=20;
i++)
t=m+n;
s=s+t/n;
m=n;
n=t;
printf("
%9.6f\n"
s);
}
4键盘输入一个整数n,求n!
并输出
voidmain()
inti,j=1,n;
scanf("
n);
for(i=1;
=n;
j=j*i;
j);
5.输入一串正整数,倒序输出
inta[10],i;
=9;
for(i=9;
i>
=0;
i--)
a[i]);
6.求100~100000之间所有数字之和为5的整数的个数(120)
i,n=0;
for(i=100;
100000;
if(i/10000+(i/1000)%10+(i/100)%10+(i/10)%10+i%10==5)
n++;
7.输入字符串打印除小写,元音(aeiou)字母之外的。
用数组
inti,j;
chars[20];
20;
i++)
%c"
s[i]);
for(j=0;
if(s[j]!
='
a'
&
s[j]!
e'
i'
o'
u'
s[j]);
8.从键盘输入10个整数,计算其中偶数的和以及偶数平均数,(用小数表示)
a[10],i=0,n=0,s=0;
please
input
10
numbers.\n"
for(;
10;
if(a[i]%2==0)
{
s=s+a[i];
%d,%d,%f"
n,s,(float)s/n);
9.从键盘输入10个整数,计算其中奇数之和以及奇数的平均数,(用小数表示)
voidmain(){inta[10],i=0,n=0,s=0;
pleaseinput10intnumbers.\n"
for(;
i++){scanf("
if(a[i]%2!
=0){n++;
s=s+a[i];
}}printf("
10.循环语句求Sn=a+aa+aaa+…+aaa…a(n个a)的值其中a是一个数字n由键盘输入(如a=2,n=5,得数为24690)
longa,b,c;
inti,t;
scanf("
%d,%d"
a,&
t);
b=a;
c=a;
=t;
b=b*10+a;
c=c+b;
c);
11.求1!
+2!
+3!
+…+n!
(当n=10时得4037913)
inti,j=1,n,sum=0;
j=j*i;
sum=sum+j;
sum);
12.输入满足条件的最大数n,条件为:
1*1+2*2+….+n*n<
=1000唯一答案:
n=13)
inti,t=0;
t<
=1000;
t=t+i*i;
i-2);
13.0~1000同时被7和13整除的数
intn;
for(n=1;
if(n%7==0&
n%13==0)
14.1/1+1/2+1/3+…+1/20
inti=1;
floatsum=0,j=1;
sum=sum+j/i;
%f\n"
15.sum=1-1/3+1/5-1/7+…+1/n(1/n<
0.0001)
math.h>
inti,j=1;
floatk=1,sum=0;
fabs((float)(j)/i)>
1e-4;
sum=sum+(float)(j)/i;
if(i>
0)
{
i=i+2;
i=-i;
}
else
i=i-2;
16.求e≈1+/1!
+1/2!
+…+1/n!
一直加到1/n!
<
10ˉ6(10的负6次方),求e的近似值
inti,j=1,n=1;
floatsum=1;
((float)(i)/n)>
1e-6;
n=n*j;
sum=sum+(float)(i)/n;
17.用л∕4约等于1-1/3+1/5-1/7+…直到某一项的绝对值小于10的-6次方为止
floatj=1,pi=0,n=1.0;
while(fabs(j)>
1e-6)
pi=pi+j;
n=n+2;
j=i/n;
pi=pi*4;
%10.6f\n"
pi);
18.输出1~10的阶乘,分行打出
i,j=1;
=10;
j=j*i;
19.输入正数,判断是否是素数
inti,m;
m);
for(i=2;
=m;
if(m%i==0)break;
/*这句话很关键*/
if(i<
m)
%d不是一个素数"
m);
else
%d是一个素数"
20.1+(1+2)+(1+2+3)+…+(1+2+…+n)输入n=20,得1540
inti,n,temp=0,sum=0;
temp=temp+i;
sum=sum+temp;
21.输入年月,输出该月有多少天。
(答案:
如输入1992-2得到29,输入2009-2得到28)
inta,c;
c);
if(((a%4==0)&
(a%100!
=0))||(a%400==0))
if(c==2)
29\n"
28\n"
switch(c)
case1:
case3:
case5:
case7:
case8:
case10:
case12:
31);
break;
case4:
case6:
case9:
case11:
30);
22.编一个计算器,可以计算“+”“-”“*”“/”
#include<
floata,b;
charf;
%f"
a);
f=getchar();
b);
switch(f)
case'
+'
:
a+b=%f"
a+b);
-'
a-b=%f"
a-b);
*'
a*b=%f"
a*b);
/'
a/b=%f"
a/b);
default:
inputerror!
\n"
23.求555555的约数中最大的3位数:
777
longj=555555;
inti;
for(i=999;
=100;
if(j%i==0)
i);
24.韩信点兵:
士兵5人一行,末行一人;
6人一行,末行5人;
7人一行,末行4人,11人一行,末行10人。
求士兵人数?
其中人数应该〉11(答案:
2111)
for(i=11;
=3000;
if(i%5==1&
i%6==5&
i%7==4&
i%11==10)
25爱因斯坦阶梯问题:
台阶,每步跨2阶最后剩1阶,跨3阶剩2阶,跨5阶剩4阶,跨10阶剩5阶,跨7阶一个不剩正好走完,问一共有多少阶?
(答案:
119)
=200;
if(i%2==1&
i%3==2&
i%5==4&
i%7==0)
26.输入m,n求其最小公倍数(答案:
如输入12和8,输出4和24;
输入4和16,输出4和8)
intm,n,max,min,i;
请输入两个数(逗号隔开):
"
m,&
if(m>
n)
i=m;
m=n;
n=i;
for(i=m;
0;
if(m%i==0&
n%i==0)
max=i;
min=m*n/max;
这两个数的最小公倍数是%d\n"
min);
27输入m,n求其最大公约数(答案:
如输入24和16,输出8)
intm,n,max,i;
这两个数的最大公约数是%d\n"
max);
ps:
1.输入两个正整数,m和n,求其最大公约数和最小公倍数。
这两个数的最大公约数是%d,最小公倍数是%d\n"
max,min);
28输入一行字符,分别统计出其中字母、空格、数字和其他字符的个数。
charc;
intletters=0,space=0,digit=0,other=0;
请输入一行字符:
while((c=getchar())!
\n'
if(c>
c<
z'
||c>
A'
Z'
letters++;
elseif(c=='
'
space++;
elseif(c>
9'
digit++;
else
other++;
字母数:
%d\n空格数:
%d\n数字数:
%d\n其他字符数:
letters,space,digit,other);
29.输入十个数,将其排序
inti,j,k,a[10];
Pleaseinput10numbers:
9;
9-j;
if(a[i]>
a[i+1])
k=a[i];
a[i]=a[i+1];
a[i+1]=k;
30.输出100~200之间的素数
intjudge(inta)
intj=1,i;
=a-1;
if(a%i==0)
j=0;
return(j);
intb,c;
Theprimenumbersin100~200are:
for(b=0;
b<
b++)
for(c=0;
c++)
if(judge(100+10*b+c))
%d"
100+10*b+c);
}_
31题:
由36块砖,男人一次可以搬4块,女人一次可以搬3块,2个小孩一次可以搬一块,问男人女人小孩各需多少人可以一次性将砖搬完?
(3男,3女,30小孩)
voidmain()
inta,b,c,d;
for(a=0;
a<
a++)
=12;
=72;
if(4*a+3*b+0.5*c==36&
a+b+c==36)
Itneed%dmen\nItneed%dwomen\nItneed%dchildren\n"
a,b,c);
32题:
输入一个字符串,将其正序反序输出?
chara[10];
inti,j,k;
Pleaseinputastring:
The->
is:
a[j]);
The<
-is:
for(k=9;
k>
k--)
a[k]);
33题:
输入一行字符,统计以空格间隔的的单词个数?
charstring[81];
inti,num=0,word=0;
gets(string);
(c=string[i])!
\0'
if(c=='
)word=0;
elseif(word==0)
{
word=1;
num++;
Thereare%dwordsintheline.\n"
num);
34题:
输出一个十进制数,将其转化为一个2进制数输出?
inta,i=0,j,s[8];
Pleaseinputanumber:
while(a>
s[i]=a%2;
a=a/2;
i++;
Theresultis:
for(j=i-1;
j>
j--)
35题:
水仙花数,输入一个三位数,该三位数各位数字立方和等于该数本身?
inta,b,c;
for(b=0;
for(c=0;
if(100*a+10*b+c==a*a*a+b*b*b+c*c*c)
printf("
%3d\n"
100*a+10*b+c);
36题:
求从3开始到小于100的所有双素数?
intprime(intx);
inta,c,p;
for(p=3;
p<
p++)
{
a=prime(p);
c=prime(p+2);
if(a&
c)
%d/%d\n"
p,p+2);
intprime(intx)
inti,k;
k=(int)sqrt(x);
=k;
if(x%i==0)
return0;
return1;
37题:
求两位绝对素数?
intisPrime(intn)
k=(int)sqrt(n);
if(n%i==0)
return0;
returnn;
voidabsPrimeTens()
intx,y,i,j;
for(i=10;
100;
x=isPrime(i);
if(x)//表示x不为零,即是素数
j=10*(x%10)+x/10;
y=isPrime(j);
if(y>
=10&
y<
100)
%d
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 天津 理工 150 语言 题库
![提示](https://static.bdocx.com/images/bang_tan.gif)