C语言平台答案Word文档格式.docx
- 文档编号:19501713
- 上传时间:2023-01-07
- 格式:DOCX
- 页数:51
- 大小:37.04KB
C语言平台答案Word文档格式.docx
《C语言平台答案Word文档格式.docx》由会员分享,可在线阅读,更多相关《C语言平台答案Word文档格式.docx(51页珍藏版)》请在冰豆网上搜索。
3:
分段函数1(12分)
计算分段函数,测试数据分别是-2、3、7。
输入一个数
输出x=多少,y=多少,输出的x和y值均保留两位小数
-3
x=-3.00,y=2.00
floatx,y;
%f"
x);
if(x<
0)y=fabs(x+1);
elseif(x>
5)y=sin(x)+5;
elsey=2*x+1;
x=%.2f,y=%.2f"
x,y);
4:
斐波那契(Fibonacci)数列前20项。
longinta[20]={1,1};
inti;
for(i=2;
20;
a[i]=a[i-1]+a[i-2];
for(i=0;
printf("
%8d"
a[i]);
5:
求1-3+5……-99+101的值。
inti,n,s;
i=1;
s=1;
for(n=1;
n<
=100;
n=n+2)
s=s+pow(-1,i++)*n;
i++;
s=%d"
6:
求1*2+2*3+…+20*21的值。
n=0;
=20;
{
t=i*(i+1);
n=n+t;
}
n);
7:
各位数字之和(10分)
求任一正整数的各位数字之和。
输入一个正整数。
输出整数的各个位数字之和的结果。
inti,k=1,n,s,nc=1,ni,sum=0;
intj,t=1;
n/t>
=10;
k+=1;
t*=10;
s=n;
=k;
s=n/nc;
ni=s%10;
sum+=ni;
nc*=10;
sum);
8:
辗转相除法求最大公约数。
intn,r,m;
%d,%d"
m,&
r=m%n;
while(r!
=0)
m=n;
n=r;
r=m%n;
gcd=%d\n"
9:
猜算式?
2*7?
=3848中的数字(10分)
算式:
?
=3848中缺少一个十位数和一个个位数。
编程求出使该算式成立时的这两个数,并输出正确的算式。
在一行中输出A2*B7=C的值。
#include<
stdio.h>
inti,j,A,B;
=9;
A=i*10;
for(j=1;
j<
j++)
{
B=j;
if(3848==(A+2)*(B+70))
printf("
%d2*7%d=3848"
i,j);
}
10:
输出各位数字之和能被15整除的所有数(10分)
输出100到1000之间的各位数字之和能被15整除的所有数,输出时每5个一行,每个数输出占4列列宽。
在每行中输出5的满足要求的数值,每个数输出占4列列宽。
intn,i=0,a,b,c,m;
for(n=100;
=999;
n++)
a=n/100;
b=n/10%10;
c=n%10;
m=a+b+c;
if(m%15==0)
%4d"
if(i%5==0)
\n"
);
11:
求1!
+3!
+5!
+……+n!
(10分)
的和,要求用循环嵌套设计,n<
12。
输入在一行中给出一个不超过12的正整数n。
在一行中按照格式“n=n值,s=阶乘和”的顺序输出,其中阶乘和是正整数。
inti,t,n,k=1,s=0;
if(n<
12)
{for(i=1;
i+=2)
for(t=1;
t<
=i;
t++)
k=t*k;
s=k+s;
k=1;
n=%d,s=%d"
n,s);
12:
打印等腰三角形图形
$
$$$
$$$$$
$$$$$$$
$$$$$$$$$
第一行图形符号前面有4个空格。
以等腰三角形的格式输出5行由"
$"
符号构成的三角图形,每个"
符号占固定1位,第一行"
符号前有4个空格。
inti,j;
=5;
=5-i;
"
=2*i-1;
printf("
13:
打印倒直角三角形图形(10分)
请编程序打印如下图形。
$$$$
$$$
$$
$
第一行图形符号前面有1个空格。
以倒直角三角形的格式输出5行由"
符号占固定1位,第一行第一个"
符号前有1个空格。
=6-i;
14:
打印平行四边形图形(10分)
$$$$$
第一行图形符号前面有1个空格
以平行四边形的格式输出5行由"
符号构成的图形,每个"
15:
打印出如下图案(菱形)
*
***
*****
*******
第一行图形符号前面有5个空格
以菱形的格式输出7行由乘号构成的图形,每个乘号占固定1位,第一行乘号前有5个空格。
5;
for(j=1;
*"
4;
=i+2;
=7-2*i;
}
16:
打印直角九九乘法表(10分)
输出直角九九乘法口诀,输出效果如样例。
以左下直角的格式输出九九乘法表,每个式子按“a*b=c”形式输出,其中a和b各占1位列宽,c占3位列宽并左对齐。
1*1=1
2*1=22*2=4
3*1=33*2=63*3=9
4*1=44*2=84*3=124*4=16
5*1=55*2=105*3=155*4=205*5=25
6*1=66*2=126*3=186*4=246*5=306*6=36
7*1=77*2=147*3=217*4=287*5=357*6=427*7=49
8*1=88*2=168*3=248*4=328*5=408*6=488*7=568*8=64
9*1=99*2=189*3=279*4=369*5=459*6=549*7=639*8=729*9=81
#include"
i+1;
%d*%d=%-3d"
i,j,i*j);
}
17:
求1!
+2!
+……+n!
intn,s,i,m;
m=0;
if(n>
=1&
&
s=s*i;
m=m+s;
m=%d"
m);
18:
统计80到90分人数(10分)
输入若干学生成绩,以负数结束输入。
计算所有学生的平均成绩并统计成绩在80到90分(不含90)之间的人数。
在一行输入几个百分制实型成绩,数据之间以一个空格间隔。
输入负数结束输入。
在一行中按照“ave=平均分,n=人数”的顺序输出结果,其中平均分要求保留两位小数,人数是正整数。
inta,i,s=0,n=0;
floatave;
a);
a>
0;
s=s+a;
if(a>
=80&
a<
90)
n++;
scanf("
ave=s*1.0/i;
ave=%0.2f,n=%d"
ave,n);
19:
3个数字构数(10分)
用0-9之间不同的3个数构成一个3位数,统计出共有多少种方法。
按照“count=结果”格式输出,结果为整数,不加宽度控制。
intcount,i,n=0,a,b,c;
for(i=100;
a=i%10;
b=i/10%10;
c=i/100;
if(a!
=b&
b!
=c&
a!
=c)
count=%d"
20:
π/4≈1-1/3+1/5……求π(10分)
用公式π/4≈1-1/3+1/5……求π的近似值,要求直到最后一项的绝对值小于0.000001为止。
输出格式:
按照“pi=结果”的顺序输出,其中结果输出的格式宽度为10列,并保留4位小
intp=1;
floatsum=0,s=1,k=1;
while(fabs(s)>
=1e-6)
sum=sum+s;
p=-p;
k=k+2;
s=p*1.0/k;
sum=sum*4;
pi=%.4f"
21:
统计两整数间被3整除数的个数(10分)
输入两个整数,n1,n2(要求n1<
n2),统计两整数范围内被3整除的数的个数。
在一行输入2个整数。
两个整数之间用一个空格间隔
按照“a=n1,b=n2,n=个数”的顺序输出。
其中n1、n2和个数的输出格式均为原样输出,不加宽度控制。
inti,n1,n2,n=0;
%d%d"
n1,&
n2);
if(n1<
n2)
for(i=n1;
=n2;
if(i%3==0)
n++;
a=%d,b=%d,n=%d"
n1,n2,n);
22:
各位数字平方和(10分)
程序功能是输入一个长整数,求各位数字的平方和s。
如果输入的是负数,求其相反数的各位数字的平方和。
例如:
输入-123,输出14。
直接输入一个长整数。
按照“sum=s”的格式输出,其中各位数字的平方和s原样输出,不加宽度控制。
intmain(void)
intn,s,k,t;
0)
s=0;
k=n;
while(k!
t=k%10;
s=s+t*t;
k=k/10;
n=fabs(n);
s=0;
t=k%10;
sum=%d"
return0;
23:
交换a和b的值(10分)
交换变量a,b的值,如输入a的值为1,b的值为5,则输出a的值为5,b的值为1。
输入两个整数,之间用一个空格间隔。
在一行中按照“a=x,b=y”的格式输出,其中x和y均是原样输出,不加宽度控制。
inta,b,t;
b);
t=a;
a=b;
b=t;
a=%d,b=%d"
a,b);
24:
华氏温度转化为摄氏温度(10分)
将华氏温度转化为摄氏温度(下式中c表示摄氏温度,f表示华氏温度)。
c=5/9(f-32)
直接输入一个实数,没有其它任何附加字符。
在一行中按照“c=结果”的顺序输出,结果为保留2位小数的实数,没有其它任何附加格式控制。
floatf,c;
f);
c=%.2f"
c=5*(f-32)/9);
25:
求n!
intn,t,i;
t=1;
t=t*i;
26:
10个数的最大值
intmax,i,n;
if(n>
=max)
max=n;
max=%d"
max);
27:
[1,40]能被3整除的数
intn;
=40;
if(n%3==0)
28:
[1,100]能被3整除的数的和
intn,t;
t=t+n;
29:
[1,100]能被3整除的数的个数
t++;
30:
求1到6的阶乘的和.
inti,n=1;
floats=0;
=6;
n=n*i;
s=s+n;
jiecheng=%.6f"
31输入10个无序的整数,用选择法对10个整数按升序排序。
注意:
要求排序只排3轮。
inta[10];
inti,b,min,j,k;
10;
a[i]);
3;
k=i;
for(j=i+1;
if(a[j]<
a[k])k=j;
if(k!
=i)
b=a[i];
a[i]=a[k];
a[k]=b;
%5d"
32对n个整数组成的一维数组按逆序重新存储并输出(n<
10)。
inta[80],b[80];
inti,n;
n;
for(i=0;
b[i]=a[n-i-1];
b[i]);
33:
对n个整数组成的一维数组用顺序法按从小到大排序后输出(4<
10),要求排序只排3轮。
inti,n,t,j,k;
4&
10)
k=i;
for(j=1+i;
if(a[j]<
if(k!
{
t=a[i];
a[i]=a[k];
a[k]=t;
}
for(i=0;
34:
在一维数组中有10个整数,求出其中能被5整除的所有数的和。
inta[10],s=0,i;
if(a[i]%5==0)
s=s+a[i];
35:
在一个已按升序排列的数组中插入一个数,插入后,数组元素仍按升序排列,已知升序数组{1,2,4,6,8,9,12,15,149,156}。
inta[11]={1,2,4,6,8,9,12,15,149,156};
inti,num,j;
num);
if(num>
a[9])
a[10]=num;
else
if(num<
a[i]){
for(j=9;
j>
j--)
a[j+1]=a[j];
a[i]=num;
break;
for(i=0;
11;
36:
有一数组内放5个整数,要求找出第一次出现的最小数和它的下标,然后把它和数组中最前面的元素即第一个数对换位置。
inta[5];
inti,min,t,p;
min=a[0];
if(a[i]<
min)
min=a[i];
p=i;
t=a[0];
a[0]=a[p];
a[p]=t;
min=%d,weizhi=%d"
min,p);
37:
产生并输出如下形式的方阵。
1222221
3122214
331
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 平台 答案
![提示](https://static.bdocx.com/images/bang_tan.gif)