练习题:全系1000学生中,征集慈善募捐,当总数达到10万元就结束,统计此时捐款的人数,以及平均每人捐款的数目
#include <stdio.h>
int main()
{
int numOfPerson;
int totalMoney = 0;
int money;
for(numOfPerson=1;numOfPerson<=1000;numOfPerson++){
printf("请输入捐款数目:\n");
scanf("%d",&money);
totalMoney = totalMoney+money;
if(totalMoney >= 100000){
puts("很好,到达捐款数目");
break;
}
}
printf("总捐款人数是:%d\n",numOfPerson);
printf("每个人的平均捐款数:%f\n",(float)totalMoney/numOfPerson);
return 0;
}
如果把其中的for循环改成while循环,就是以下的效果
#include <stdio.h>
int main()
{
int numOfPerson;
int totalMoney = 0;
int money;
numOfPerson=1;
while(numOfPerson<=1000){
//for(numOfPerson=1;numOfPerson<=1000;numOfPerson++){
printf("请输入捐款数目:\n");
scanf("%d",&money);
totalMoney = totalMoney+money;
if(totalMoney >= 100000){
puts("很好,到达捐款数目");
break;
}
numOfPerson++;
}
printf("总捐款人数是:%d\n",numOfPerson);
printf("每个人的平均捐款数:%f\n",(float)totalMoney/numOfPerson);
return 0;
}
接下来是continue和break的区别:
continue是提前结束本次循环,break是提前结束循环
练习题:要求输出100~200之间不能被3整除的数
#include <stdio.h>
int main()
{
int data;
/*printf("ret = %d\n",10%3);
printf("ret = %d\n",11%3);
printf("ret = %d\n",12%3);*/
for(data=100;data<=200;data++){
if(data %3 !=0){
continue;
}
printf("%d ",data);
}
return 0;
}