题目:
用while循环做一个简单的计算s=1+1/2+1/3+...+1/n。运行结果如图所示:
技术要点:
本实例要求使用while循环,其一般形式如下:
while(表达式)
语句;
whiile语句的执行流程图:
⾸先上来就是执⾏判断表达式,表达式的值为0,循环直接结束;表达式的值不为0,则执⾏循环语 句,语句执⾏完后再继续判断,是否进⾏下⼀次判断。
说明:①while语句中的表达式一般是关系表达或逻辑表达式,只要表达式的值为真(非0)即可继续循环。
②循环体如果包含一个以上的语句,应该使用话括弧括起来,以复合语句形式出现。如果不加话括弧则while语句的范围知道while后面的第一个分号处。
③在循环体中应有使循环趋向于结束的语句以避免死循环。
代码如下:
#include<stdio.h>
int main()
{
int i = 1;
int j, n;
float s = 0;
printf("input n:\n");
scanf("%d", &n);
while (i <= n)
{
s = s + 1.0 / i;
i++;
}
printf("n=%d s=%f",n, s);
}
举一反三:
①求1-100中所有整数相加的和。
②求平均分:任意输入某学生的无门学科成绩,求出总成绩及平均分。