编程实现求1+2+3+…+n之和,并输出当其和第一次大于或等于100时的值及n值。
题目解析
编程求1~n的和,可以用while和for循环进行实现 输出第一次大于或等于100的值和n的值,可以用两个变量,加一个标志位来实现,当第一次总和大于等于100的时候,分别记录总和和n的值,并将标志位设置为禁止即可。
程序代码
while循环
#include "stdio.h"
int main()
{
int n=0;
int i=1;
int sum=0;
int flag=0;
int x=0,nx=0;
scanf("%d",&n);
while(i<=n)
{
sum+=i;
if(sum>=100 && flag==0) x=sum,nx=i,flag=1;
i++;
}
printf("总和:%d\n\r",sum);
printf("第一次和大于等于100时的和为%d,此时n为%d\n\r",x,nx);
}
for循环
#include "stdio.h"
int main()
{
int n=0;
int i=1;
int sum=0;
int flag=0;
int x=0,nx=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
sum+=i;
if(sum>=100 && flag==0) x=sum,nx=i,flag=1;
}
printf("总和:%d\n\r",sum);
printf("第一次和大于等于100时的和为%d,此时n为%d\n\r",x,nx);
}
程序运行结果
|