本片我们通过一个例子来解析。
程序:
在全系1000名学生中举行慈善募捐,
当总数达到100000元时就结束,
统计此时捐款的人数以及平均每人捐款的数目。
这个里面还是要运用到循环,
每次循环的过程中,统计现在捐款人数及此人捐款的数目。
在循环内部对人数和总捐款数进行限定。
我们不能确定循环的次数,但能够确定循环的最大值1000
这就出现两种情况:
捐款人数达到1000人时,捐款总数没有达到100000;
捐款人数未超过1000人时,捐款总数达到100000。
在这个过程中,100000是不会变的,这里就要定义宏了。
下面我们来看代码:
#include <stdio.h>
#define SUM 100000
int main()
{
float amount, aver, total;
int i;
for (i = 1, total = 0; i <= 1000; i++)
{
printf("please enter amount:");
scanf("%f", &amount);
total = total + amount;
if (total >= SUM)break;
}
aver = total / i;
printf("num=%d\naver=%10.2f\n", i, aver);
return 0;
}
我们来看这个程序,
显示定义了宏,这个后面定义后可以直接引用,
随后用float定义了个人捐款数,平均数和总数。
用int定义了捐款人数i
每次捐款代表着一个人,
i的数值就是总捐款人数
在循环体内有判定条件的,
总和超过100000就会通过break跳出循环,不用管i是否符合条件。
直接把循环给终止了。
break语句的作用就是使流程跳到循环体外,接着执行循环体下面的语句。
本篇内容到此结束。