找回密码
 register

QQ登录

只需一步,快速开始

[*编程自学*] 第十一课:for循环

[复制链接]

[*编程自学*] 第十一课:for循环

[复制链接]
Waylee

主题

0

回帖

7459

积分

仙帝

积分
7459
Waylee 2024-8-2 21:31 | 显示全部楼层 |阅读模式

马上注册,查看网站隐藏内容!!

您需要 登录 才可以下载或查看,没有账号?register

×
for循环
for(;;){}
while语句 先判断表达式后执行
do-while语句 先执行语句后判断表达式
goto语句 实现程序转跳(尽量少使用)
break语句和continue语句的区别
break语句用于跳出本层循环
continue用于结束本次循环
for(初始语句;循环条件;步进条件)
{
    //循环语句;
}
//初始语句:只在循环开始时执行一次
//循环条件:每次循环都要执行 如果循环条件为真 进入循环体,如果为假 退出循环
//步进条件:每次循环结束的时候 要执行的语句

案例:
求1~100的和
#include<stdio.h>
void test01()
{
        int sum = 0;
        int i = 0;
        for(i = 1;i <= 100;i++)
        {
                sum = sum +i;
        }
        printf("sum = %d\n",sum);//5050
}
int main(int argc,char *argv[])
{
        test01();
        return 0;
}

案例:
#include<stdio.h>
void test02()
{
        int sum = 0;
        //1+2+3+4+.....+100
        int i = 0;
        //如果变量 提前初始化了, for循环的初始化语句 可以省略
        for(;;)//建议别这么做
        {
                //如果for省略掉 循环条件 必须在循环语句中实现 退出循环的条件
                if(i > 100)
                {
                        break;//跳出循环
                }
                sum = sum +i;
                i++;//如果for循环省略步进条件 必须在循环语句中实现步进动作
        }
        printf("sum = %d\n",sum);//5050
}
int main(int argc,char *argv[])
{
        test02();
        return 0;
}

案例:
void test03()
{
        for(;;)
        {
                for(;;)
                {
                        break;//只能跳出离他最近的一层循环
                }
        }
}

continue案例:
#include<stdio.h>
void test04()
{
        int i=0;
        int sum = 0;
        for(i=1;i<=100;i++)
        {
                if(i==50)
                        continue;//结束本次循环 立即从当前位置直接进入下一次循环

                sum += i;
        }
        printf("sum = %d\n",sum);//5000 仅仅是少加了一个50
}
int main(int argc,char *argv[])
{
        test04();
        return 0;
}

作业1:求出0~100的所有偶数的和
#include<stdio.h>
void test05()
{
        int i = 0;
        int sum = 0;
        for(;i<=100;i=i+2)
        {
                sum = sum + i;
        }
        printf("sum = %d\n",sum); //2550
}
int main(int argc,char *argv[])
{
        test05();
        return 0;
}

作业2:求出1~100中能被7整除的数

#include<stdio.h>
void test06()
{
        int i = 1;
        for(;i<=100;i++)
        {
                if(i%7 == 0)
                {
                        printf("%d\n",i);
                }
        }
}
int main(int argc,char *argv[])
{
        test06();
        return 0;
}

嵌套循环,问:会输出一次?
void test07()
{
        int i = 0;
        int j = 0;
        for(i=0;i<10;i++)
        {
                for(j=0;j<10;j++)
                {
                        printf("i = %d, j = %d\n",i,j);//会输出100次
                }
        }
}
int main(int argc,char *argv[])
{
        test07();
        return 0;
}


雪舞知识库 | 浙ICP备15015590号-1 | 萌ICP备20232229号|浙公网安备33048102000118号 |网站地图|天天打卡

GMT+8, 2024-11-22 01:53 , Processed in 0.053884 second(s), 7 queries , Redis On.

Powered by XueWu Licensed

Copyright © Tencent Cloud.

快速回复 返回顶部 返回列表