循环结构训练

题目 1013: [编程入门]Sn的公式求和
题目描述
求Sn=a+aa+aaa+…+aa…aaa(有n个a)之值,其中a是一个数字,为2。 例如,n=5时=2+22+222+2222+22222,n由键盘输入。
#include <stdio.h>
int main()
{
int j, n, s = 0, a = 0;
scanf("%d", &n);
for (j = 1; j <= n; j++)
{
a = a * 10 + 2; //计算增加数是多少
s = s + a; //加上之前的数
} //重复循环
printf("%d", s);
return 0;
}
题目 1015: [编程入门]求和训练
题目描述
求以下三数的和,保留2位小数 1~a之和 1~b的平方和 1~c的倒数和
#include"stdio.h"
int main()
{
double a,b,c,sum1=0,sum2=0,sum3=0,i,sum=0;
scanf("%lf",&a);
scanf("%lf",&b);
scanf("%lf",&c);
for(i=1;i<=a;i++) {
sum1+=i;
}
for(i=1;i<=b;i++)
{
sum2+=i*i;
}
for(i=1;i<=c;i++)
{
sum3+=1.0/i; 一定要写1.0!!!
}
sum=sum1+sum2+sum3;
printf("%.2lf",sum);
return 0;
}
题目 1018: [编程入门]有规律的数列求和
题目描述
有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13… 求出这个数列的前N项之和,保留两位小数。
题目描述可以看出 从第二个开始 分子是上一个分子+分母; 分母是前一项的分子;
#include<stdio.h>
int main(){
double Sn=0,an=0,n,i,t,a=2.0,b=1.0;
scanf("%lf",&n);
Sn+=a/b;
for(i=1;i<n;i++){
t=a;
a=a+b;
b=t;
an=a/b;
Sn+=an;
}
printf("%0.2lf",Sn);
return 0;
}
题目 1019: [编程入门]自由下落的距离计算
题目描述
一球从M米高度自由下落,每次落地后返回原高度的一半,再落下。 它在第N次落地时反弹多高?共经过多少米? 保留两位小数
#include<stdio.h>
int main(){
double a,b,c,M,N;
scanf("%lf%lf",&M,&N);
a=b=c=0;
for(int i=1;i<=N;i++){
if(i==N){ //反弹1次;
b=b+a;
a=M/2;
}else{ //两次及以上
a=M/2;//反弹
b=a+b+M;//路径 需要加上初路径M
M=a;
}
}
printf("%.2lf %.2lf",a,b);
return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值