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)

双引号里用格式化操作符代表变量,在逗号后面写上所代表的变量

posted @ 2020-02-25 00:34  写博客是第一驱动力  阅读(195)  评论(0)    收藏  举报