首页 > 其他分享 >C语言for循环详细讲解

C语言for循环详细讲解

时间:2024-03-23 22:33:41浏览次数:20  
标签:include int C语言 while 循环 讲解 main 表达式

引言:

在上一篇博客中,我们介绍了关于C语言的一种循环,while循环,并介绍了其中的关键字及其例题,在本片帖子,我们将引入一种新的循环方式,名为for循环,那么它与while循环又有哪些相似之处和不同之处呢?让我们一起来探索一下。

一.for循环的基本架构

for循环时三种循环中使用最多的for循环的语法如下:

#include <stdio.h>
int main()
{
    for(表达式1;表达式2;表达式3)
    {
        如果循环体要包含更多的内容,则需要加上大括号;
    }
    return 0;
}

表达式1:用于表示循环变量的初始化;

表达式2:用于循环结束条件的判断;

表达式3:用于循环变量的调整。

二.for循环的实践

练习:请你在屏幕上打印出数字1——10

#incldue <stdio.h>
int main()
{
    int i=1;
    for(i=1;i<=10;i++)
    {
        printf("%d ",i);
    }
    return 0;
}

运行结果:

三.for循环与while循环的对比

#include <stdio.h>
int main()
{
    int i=0;
    for(i=1;i<=10;i++)
    {
        printf("%d ",i);
    }
    return 0;
}


#include <stdio.h>
int main()
{
    int i=1;
    while(i<=10)
    {
        printf("%d ",i);
        i++;
    }
    return 0;
}

for循环与while循环都有初始化,判断,调整这三个部分,但是for循环的三个部分非常集中,便于代码的维护,而代码较多时while循环便比较分散,所以一般情况下更推荐使用for循环。

四.for循环的练习

练习:请你计算一下1——100之间3的倍数的数的和

#include <stdio.h>
int main()
{
    int sum=0;
    for(int i=3;i<=100;i++)
    {
        if(i%3==0)
        {
            sum+=3;
        }
    }
    printf("%d ",sum);
    return 0;
}


#include <stdio.h>
int main()
{
    int sum=0;
    for(int i=3;i<=100;i+3)
    {
        sum+=i;
    }
    printf("%d ",sum);
    return 0;
}

观察以上两串代码,我们不难发现我们可以通过改变循环的变量来简化算法,有利于计算。

五.for循环中的break和continue语句

在上一篇博客中,我们介绍了break终止关键字和continue跳过关键字在while循环中的使用,当然,它们在for循环里也能发挥它们的作用,看下例:

#include <stdio.h>
int main()
{
    int i=0;
    for(i=1;i<=10;i++)
    {
        if(i==5)
        {
            break;
        }
    printf("%d ",i);
    }
    return 0;
}

#include <stdio.h>
int main()
{
    int i=0;
    for(i=1;i<=10;i++)
    {
        if(i==5)
        {
            continue;
        }
    printf("%d ",i);
    }
    return 0;
}

六.使用for循环打印出九九乘法表

#include <stdio.h>
int main()
{
    for(int i=1;i<=9;i++)
    {
    	for(int j=1;j<=i;j++)
    	{
    		printf("%d*%d=%d ",i,j,i*j);
		}
		printf("\n");
	}
	return 0;
}

我们可以对比上一篇博客中的while循环打印九九乘法表,不难发现,for循环更好写也更加简介。

总结:

本篇博客介绍了for循环的基本语法以及用法,大致上与while循环类似,在平时做题时可优先考虑for循环再考虑while循环效率更佳!朋友们,下期再见,拜拜!

标签:include,int,C语言,while,循环,讲解,main,表达式
From: https://blog.csdn.net/2301_79539778/article/details/136940298

相关文章

  • 分支和循环(上)if 和switch语句
    一:C语言支持的结构1.顺序结构C语言中的顺序结构是最基本的控制结构,它按照代码的书写顺序,从上到下,从左到右依次执行。在顺序结构中,程序按照代码的书写顺序执行,没有任何的跳转或分支。顺序结构的主要特点是:1.**顺序执行**:程序按照代码的书写顺序,从上到下,从左到右依次执行。......
  • C语言:洛谷题目分享(4)小书童--凯撒密码和笨小猴
    目录1.前言2.俩道题目1.小书童--凯撒密码1.题目背景2.题目描述3.输入格式4.输出格式5.题解2.笨小猴1.题目描述2.输入格式3.输出格式4.题解3.小结1.前言哈喽大家好啊,今天我继续为大家分享洛谷题单的俩道题目,请大家多多支持喔~2.俩道题目1.小书童--凯撒密码......
  • c语言:日期识别1
    日期识别1任务描述X同学最近非常烦,因为他正面对一大堆日期数据愁眉不展,原因是那些日期书写的极其不规范,不仔细辨别根本认不清是哪一天。以下每个日期中的三个数,年月日的位置是不确定的,假设其中最大的数表示年份,1-12范围的数表示月份,1-31范围的数表示日期,如果月日的范围都......
  • 2024年C语言最新经典面试题汇总(1-10)
    C语言文章更新目录C语言学习资源汇总,史上最全面总结,没有之一C/C++学习资源(百度云盘链接)计算机二级资料(过级专用)C语言学习路线(从入门到实战)编写C语言程序的7个步骤和编程机制C语言基础-第一个C程序C语言基础-简单程序分析VS2019编写简单的C程序示例简单示例,VS2019调......
  • 中国电子学会(CEIT)2021年03月真题C语言软件编程等级考试三级(含详细解析答案)
    中国电子学会(CEIT)考评中心历届真题(含解析答案)C语言软件编程等级考试三级2021年03月编程题五道 总分:100分一、找和为K的两个元素(20分)在一个长度为n(n<1000)的整数序列中,判断是否存在某两个元素之和为k。时间限制:1000ms内存限制:65536kb输入第一行输入......
  • 水仙花数(C语言)
    文章目录水仙花数的起源思路运行代码水仙花数的起源水仙花数的名称来源于希腊神话中的美少年纳西索斯(Narcissus),其名字“Narcissus”与水仙花数的英文名称“Narcissisticnumber”的词根一致。水仙花数是指一个n位数(n≥3),它的每个位上的数字的n次幂之和等于它本身。......
  • java多线程(超详细讲解)下篇
    本章继续讲多线程目录一、线程同步1、为什么需要线程同步二、如何实现线程同步1、同步代码块2、同步方法3、线程同步特征三、线程安全的类型1、ArrayList是常用的集合类型,它是否线程安全的呢?2、对比Hashtable和HashMap1、是否线程安全2、效率比较3、对比StringBuffe......
  • EI级!高创新原创未发表!VMD-TCN-BiGRU-MATT变分模态分解卷积神经网络双向门控循环单元融
    EI级!高创新原创未发表!VMD-TCN-BiGRU-MATT变分模态分解卷积神经网络双向门控循环单元融合多头注意力机制多变量时间序列预测(Matlab)目录EI级!高创新原创未发表!VMD-TCN-BiGRU-MATT变分模态分解卷积神经网络双向门控循环单元融合多头注意力机制多变量时间序列预测(Matlab)预测......
  • C语言进阶——动态内存管理
    目录一、C语言底层内存知识补充二、动态内存函数1.1free1.2malloc1.3calloc1.4realloc三、使用常见错误3.1对非动态开辟内存使用free释放3.2空指针未判断造成的错误3.3使用free释放一块动态开辟内存的一部分3.4对同一块动态内存多次释放3.5动态开辟内存没有释放而......
  • C语言——函数练习程序
    1.从终端接收一个数,封装一个函数判断该数是否为素数#include<stdio.h>intpri(intnum){inti=0;for(i=2;i<num;i++){if(num%i==0){return0;break;}}if(i==num-1)......