C语言学习笔记[23]:循环语句while①

news2024/9/27 21:21:06

C语言除了顺序结构和选择结构还有循环结构

  • while
  • for
  • do...while

while循环

//while 语法结构
while(表达式)
    循环语句;

表达式的结果为真,则执行循环语句,否则循环停止

例如:打印1~10

#include <stdio.h>

int main()
{
    int i = 1;
    while(i<=10)
    {
        printf("%d ",i);
        i++;
    }
    return 0;
}

while循环中的break

下面的代码输出什么呢?

#include <stdio.h>

int main()
{
    int i = 1;
    while(i<=10)
    {
        if (i == 5)
            break;
        printf("%d ",i);
        i++;
    }
    return 0;
}

输出 1 2 3 4 

在while循环中,break用于永久的终止循环

while循环中的continue

#include <stdio.h>

int main()
{
    int i = 1;
    while(i<=10)
    {
        if (i == 5)
            continue;
        printf("%d ",i);
        i++;
    }
    return 0;
}

输出 1 2 3 4 死循环

在while循环中,continue用于跳过continue后的代码,直接去判断部分,看是否进行下一次循环

getchar() putchar()

getchar从一个流或标准输入中读取一个字符,读取到字符后返回字符的ASCII码值,如果读取失败或出错,则返回EOF(-1) - end of file - 文件的结束标志

putchar输出一个字符

#include <stdio.h>

int main()
{
    int ch = 0;
    //ctrl + z - getchar 读取结束
    while((ch = getchar())!= EOF)
    {
        putchar(ch);
    }
    return 0;
}

getchar是从缓冲区读取字符的,当我们从键盘上输入A回车,缓冲区中就存在了A\n,此时执行第一次循环,从缓冲区中读取了A赋给ch,putchar输出A,此时缓冲区中还有\n,再执行第二次循环,读取\n并赋给ch,putchar输出,效果就是换行,此时缓冲区中无内容,等待键盘输入。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1914365.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

浅析文件如何生成二维码,以及文件二维码的广泛应用

随着智能手机的普及和移动互联网的飞速发展&#xff0c;二维码已经深入到人们生活的各个领域&#xff0c;为人们的生活带来了极大的便利。文件二维码具有信息容量大、编码范围广、容错能力强、译码可靠性高、可引入加密措施、成本低、易制作、持久耐用等优点。因此&#xff0c;…

L2 LangGraph_Components

参考自https://www.deeplearning.ai/short-courses/ai-agents-in-langgraph&#xff0c;以下为代码的实现。 这里用LangGraph把L1的ReAct_Agent实现&#xff0c;可以看出用LangGraph流程化了很多。 LangGraph Components import os from dotenv import load_dotenv, find_do…

uniapp微信小程序分享教程

文章目录 导文当前页面未设置分享&#xff1f;配置在代码中开启分享转发按钮 点击按钮转发怎么写微信小程序转发官网文档地址&#xff1a;uniapp转发官网文档地址&#xff1a; 导文 uniapp 微信小程序 当前页面未设置分享&#xff1f; uniapp 微信小程序分享到好友怎么写&#…

力扣-排序算法

排序算法&#xff0c;一般都可以使用std&#xff1a;&#xff1a;sort&#xff08;&#xff09;来快速排序。 这里介绍一些相关的算法&#xff0c;巩固记忆。 快速排序 跟二分查找有一丢丢像。 首先选择一个基准元素&#xff0c;一般就直接选择第一个。然后两个指针&#xff0c…

绝区玖--人工智能物料清单 (AI BOM)

前言 AI BOM 涵盖了从输入模型的数据到为模型提供支持的基础设施以及将 AI 从概念转化为生产的过程的一切。 但为什么我们需要人工智能物料清单&#xff1f;答案在于当今世界人工智能/Gen AI系统的复杂性和关键性&#xff1a; 透明度和可重复性&#xff1a;AI BOM 提供所有组件…

MES系统在装备制造行业核心应用场景介绍

MES软件在企业中有着广泛的应用场景&#xff0c;主要包括生产计划排程、生产过程监控、质量管理、设备管理、库存管理、数据分析等领域。 通过实时监控生产过程、收集数据、进行分析&#xff0c;MES软件可以帮助企业实现生产过程可视化、透明化&#xff0c;提高生产效率&#…

开源项目有哪些机遇与挑战

目录 1.概述 2.开源项目的发展趋势 2.1. 开源项目的发展现状 2.2. 开源社区的活跃度 2.3. 开源项目在技术创新中的作用 3.参与开源的经验分享 3.1. 选择开源项目 3.2. 理解项目结构和文档 3.3. 贡献代码 3.4. 与开源社区的合作 3.5. 学习和成长 4.开源项目的挑战 …

CSS【详解】文本相关样式(含 font 系列样式,文本颜色 color,三种颜色表示法,文本排版-含最佳实战范例,文本装饰,分散对齐,渐变色文本等)

文本风格 font-style font-style:italic 值描述normal默认值。浏览器显示一个标准的字体样式。italic加载对应字体的斜体字体文件&#xff0c;若找不到斜体字体文件&#xff0c;则进行物理上的倾斜。 标签默认font-style:italicoblique浏览器会显示一个倾斜的字体样式。 文本粗…

华为HCIP Datacom H12-821 卷33

1.判断题 缺省情况下&#xff0c;华为AR路由器的VRRP运行在抢占模式下 A、对 B、错 正确答案&#xff1a; A 解析&#xff1a; 无 2.判断题 一个Route-Policy下可以有多个节点&#xff0c;不同的节点号用节点号标识&#xff0c;不同节点之间的关系是"或"的关…

什么是 C 语言中的宏定义?

&#x1f345;关注博主&#x1f397;️ 带你畅游技术世界&#xff0c;不错过每一次成长机会&#xff01; &#x1f4d9;C 语言百万年薪修炼课程 通俗易懂&#xff0c;深入浅出&#xff0c;匠心打磨&#xff0c;死磕细节&#xff0c;6年迭代&#xff0c;看过的人都说好。 文章目…

告别缓慢下载,Cloudflare带你体验极速Docker镜像加速

背景 国内的Docker镜像服务似乎突然进入了寒冬&#xff0c;不仅Docker镜像服务受到了影响&#xff0c;连NPM镜像也可能面临下架的风险。这对依赖这些服务的开发者们来说&#xff0c;无疑是一个不小的困扰。 近日&#xff0c;SJTUG&#xff08;上海交通大学Linux用户组&#x…

Apache Hadoop之历史服务器日志聚集配置

上篇介绍了Apache Hadoop的分布式集群环境搭建&#xff0c;并测试了MapReduce分布式计算案例。但集群历史做了哪些任务&#xff0c;任务执行日志等信息还需要配置历史服务器和日志聚集才能更好的查看。 配置历史服务器 在Yarn中运行的任务产生的日志数据不能查看&#xff0c;…

30. 01背包问题 二维,01背包问题 一维,416.分割等和子集

背包问题分类&#xff1a; 1、确定dp数组以及下标的含义对于背包问题&#xff0c;有一种写法&#xff0c; 是使用二维数组&#xff0c;即dp[i][j] 表示从下标为[0-i]的物品里任意取&#xff0c;放进容量为j的背包&#xff0c;价值总和最大是多少。2、确定递推公式&#xff0c;…

硅谷甄选二(登录)

一、登录路由静态组件 src\views\login\index.vue <template><div class"login_container"><!-- Layout 布局 --><el-row><el-col :span"12" :xs"0"></el-col><el-col :span"12" :xs"2…

Qt基础控件总结—多页面切换(QStackWidget类、QTabBar类和QTabWidget类)

QStackedWidget 类 QStackedWidget 类是在 QStackedLayout 之上构造的一个便利的部件,其使用方法与步骤和 QStackedLayout 是一样的。QStackedWidget 类的成员函数与 QStackedLayout 类也基本上是一致的,使用该类就和使用 QStackedLayout 一样。 使用该类可以参考QStackedL…

施罗德数列SQL实现

在组合数学中,施罗德数用来描述从(0,0)到(n,n)的格路中,只能使用(1,0)、(0,1)、(1,1)三种移动方式,始终位于对角线下方且不越过对角线的路径数 DECLARE n INT 10 DECLARE i INT DECLARE rst INT DECLARE old INT1CREATE TABLE #rst (i INT ,rst int )INSERT INTO #rst values(…

Python 中创建当前日期和时间的文件名技巧详解

概要 在日常开发中,经常需要创建带有当前日期和时间的文件名,以便进行日志记录、数据备份或版本控制等操作。Python 提供了丰富的库和函数,可以方便地获取当前日期和时间,并将其格式化为字符串,用于生成文件名。本文将详细介绍如何使用 Python 创建带有当前日期和时间的文…

springboot大学生竞赛管理系统-计算机毕业设计源码37276

摘 要 随着教育信息化的不断发展&#xff0c;大学生竞赛已成为高校教育的重要组成部分。传统的竞赛组织和管理方式存在着诸多问题&#xff0c;如信息不透明、效率低下、管理不便等。为了解决这些问题&#xff0c;提高竞赛组织和管理效率&#xff0c;本文设计并实现了一个基于Sp…

STM32(二):STM32工作原理

0、参考1、寄存器和存储器基本概念&#xff08;1&#xff09;基本概念&#xff08;2&#xff09;主要区别&#xff08;3&#xff09;联系&#xff08;4&#xff09;实际应用中的案例&#xff08;5&#xff09;总结&#xff08;6&#xff09;一些名词解释 2、STM32指南者板子-存…

免费GPU——Google Colab使用

免费GPU——Google Colab使用 1、创建新的Notebook 网址&#xff1a;https://colab.research.google.com/ 点击“新建笔记本”进行创建 2、设置免费GPU 点击“更改运行时类型”&#xff0c;打开界面如下所示&#xff1a; 选择“T4 GPU”&#xff0c;然后“保存”即可使用…