3单个循环需要注意的问题
for循环
格式 for(A;B;C)
{
}
A是初始化计数器的语句,B是判断是否继续循环的语句,C是改变计数器的语句
int sum = 0;
for(int i =1;i>=5;i++)
{
sum = sum + i
}
那么i的最后一个值是5,也就是i一直从1变到5
for循环的执行顺序
int sum=0;
for(int i=1;i<=4;++i)(语句1,2,3)
{sum=sum+i;}(语句4)
printf(“sum=%d\n”,sum);(语句5)
啊 执行顺序,先执行一,再执行2,2成立执行4,4执行后执行3,3执行完执行2
2不成立就跳过循环体,执行5
语句3执行后标志着一次循环的结束,语句2标志着一次循环的开始。
例子1:打印1-10中的奇数
for(int i = 1;i<=10;i++)
{
if(i%2 !=0)
{
printf(i);
}
}
例子2:用循环实现1-9的奇数之和
int sum = 0;
for (int i = 1; i<=9;i++)
{
if (i%2 !=0)
{
sum = sum + i;
}
}
printf(sum);
例子3 求1到100之间所有能被3整除的数字的和
思路:先for循环取1-100的所有数字,取出来的数字都进行if判断,通过if判断的数字拿来用
int sum = 0;
for (i=1;i<=99;i++)
{
if (i%3 == 0)
{sum = sum + i;}
}
printf(sum);
例子4 从1-9999中选出所有能被3整除,不能被13整除,不能被5整除的数字
思路:for循环把每个数字都取一次,取完后立即进行if判断,输出通过判断的即可,大不了把通过判断的放到数组里
for (i=1;i<=9999;i++)
{
if(i%3==0&&i%13!=0&&i%5!=0)
printf(i)
}
例子5 计算1/2+1/3+1/4+...+1/999
思路 敏感知道1.0/2 才对,如果是1/2,结果是0
double sum = 0
for(i=2;i<=999;i++)
{
sum = sum + 1.0/i;
}
printf(sum=“%lf”,sum)
双引号里用格式化操作符代表变量,在逗号后面写上所代表的变量

浙公网安备 33010602011771号