C语言学习:6、C语言程序的循环结构

news2024/11/17 13:24:50

生活中,有很多循环的东西,比如钟表就是在1到12循环,太阳东升西落也是循环,春夏秋冬也是循环,人生可能也是一个循环。

while

C语言中的循环可以这么描述:某个条件成立,就一直做某件事或某些事。

//纯语言描述
当考试不及格;
就去复习;
再来考试;
还是不及格;
就去复习;
再来考试;
...


//语言+符号描述
当(考试不及格)
{
    就去复习;
    接着考试;
}

//半C语言化
while(考试不及格)
{
    就去复习;
    接着考试;
}

生活中的,等同于C语言中的while

程序示例:求1加到100的和

程序示例1:

#include <stdio.h>

int main()
{
	int sum = 0;
	int i = 0;

	while (i <= 100) //只要i<=100这个条件成立,大括号里面的内容就要执行
	{
		sum = sum + i;
		i = i + 1;
	}

	printf("i = %d\n", i);
	printf("sum = %d\n", sum);
	
	return 0;
}

输出结果:

        i = 101
        sum = 5050

因为只要i<=100这个条件成立,大括号里面的内容就要执行,大括号里面的内容执行完之后,还要回来判断while里面的条件。

while知识点

        1、while循环体里面的内容可以不执行,比如while(0);

        2、while循环体里面的内容可以一直执行不停止,比如while(1);

        3、if语句可以看成最多执行1次的循环体

        4、if语句和while可嵌套,实现更复杂的功能

if与while嵌套

求1000以内能被3整除的正整数之和

分析:

        1、要遍历1到1000这1000个数;

        2、要选择能被3整除的数

程序示例2:

#include <stdio.h>

int main()
{
	int i = 1;
	int sum = 0;

	while (i <= 1000) //遍历1到1000所有的整数
	{
		if (i % 3 == 0) //判断是否能被3整除
		{
			sum = sum + i;//能整除的数就加起来
		}

		i++; //i要自增加一个
			
	}
	printf("i = %d\n", i);
	printf("sum = %d\n", sum);
	
	return 0;
}

while语句练习

求 2^{2}+4^{2}+6^{2}+...+n^{2},累加和≥10000为止,输出累加和,输出累加式中的项数i和最大的数

程序示例3:

#include <stdio.h>

int main()
{
	int i = 1;
	int n = 0; //记录循环次数
	int sum = 0; //记录和
	int an = 0; //记录停止的项

	while (sum <= 10000) 
	{
		an = (2 * i) * (2 * i);
		sum = sum + an;//(2*i)的平方
		i++; //i要自增加一个
		n++;
			
	}
	printf("n = %d\n", n);
	printf("an = %d\n", an);
	printf("i = %d\n", i);
	printf("sum = %d\n", sum);
	
	return 0;
}

编写程序,求出2-100之内所有的质数,并打印出所有的质数

质数:只能被1和自己整除

程序示例4:

#include <stdio.h>

int main()
{
	int i = 2;


	while (i <= 100) //遍历2到100内所有的数
	{
		int flag = 0; //标记
		int j = 2;//从2到自己,这之间还有没有能被自己整除的数
		while (j < i)
		{
			if (i % j == 0) //判断有没有能被自己整除的数
			{
				flag ++; //有就+1标记一下
			}

			j++; //遍历2到i
		}

		if (flag == 0) //这个标记还为0,说明没有能被整除的,那就是质数了
		{
			printf("i = %d\n", i); //打印出质数
		}
		i++; //i要自增加一个,为了遍历
			
	}

	return 0;
}

循环结构在编程中用的非常多,循环结构也有多种方式

do... while

do
{
    //do something;
} while(条件)

不管条件是不是真,都执行一遍do里面的语句;

再来判断条件是否为真,为真的话继续执行do里面的语句,为假就执行后面的语句;

从键盘中输入数据,并请输入数据的和,知道和大于100为止

程序示例5:

#include <stdio.h>

int main()
{
	int sum = 0;
	int input = 0;

	do 
	{
		printf("请输入数据:");
		scanf_s("%d",&input);
		sum = sum + input;

	} while (sum <100);

	printf("sum = %d\n",sum);

	return 0;
}

for循环

for(0.初始化循环变量;1.循环条件;3.改变循环条件)
{
    2.循环体;
}

执行步骤就是:

0、初始化循环变量

1、判断循环条件

2、执行循环体

3、改变循环条件

理论上for循环式最规范的循环结构,本质上与while是一样的。

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

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

相关文章

微信小程序开发---基本组件的使用

目录 一、scroll-view &#xff08;1&#xff09;作用 &#xff08;2&#xff09;用法 二、swiper和swiper-item &#xff08;1&#xff09;作用 &#xff08;2&#xff09;用法 三、text &#xff08;1&#xff09;作用 &#xff08;2&#xff09;使用 四、rich-tex…

煤矿虚拟仿真 | 采煤工人VR虚拟现实培训系统

随着科技的发展&#xff0c;虚拟现实(VR)技术已经逐渐渗透到各个行业&#xff0c;其中包括煤矿行业。VR技术可以为煤矿工人提供一个安全、真实的环境&#xff0c;让他们在虚拟环境中进行实际操作和培训&#xff0c;从而提高他们的技能水平和安全意识。 由广州华锐互动开发的采煤…

如何解决基因行业海量数据传输难题?镭速传输给出答案

基因大数据是指通过基因测序、分析和应用所产生的海量数据&#xff0c;它揭示了生命的奥秘和规律&#xff0c;对于科学研究、医疗健康、生物产业等领域具有重要的价值和意义。 随着高通量测序技术的进步&#xff0c;基因大数据的产量呈现爆炸式增长&#xff0c;预计到 2025 年…

算法笔记--最大连续1的个数Ⅲ

leetcode题目链接:1004. 最大连续1的个数 III 题目描述 给定一个二进制数组 nums 和一个整数 k&#xff0c;如果可以翻转最多 k 个 0 &#xff0c;则返回 数组中连续 1 的最大个数 。 思路 这里可以转换思路&#xff0c;让题意更加明确:即&#xff0c;求一个最大连续区间…

pip安装报HTTPSConnectionPool错误解决方案

报错&#xff1a; 解决方案&#xff1a;添加-i https://pypi.tuna.tsinghua.edu.cn/simple/&#xff0c;这里是https&#xff0c;而不是http&#xff0c;网上很多为pip install gradio -i http://pypi.tuna.tsinghua.edu.cn/simple/导致未能成功。 正确为&#xff1a; pip in…

多元共进|2023 Google 开发者大会主旨演讲亮点回顾

2023 Google 开发者大会 今日正式拉开帷幕 一起回顾主旨演讲精华内容 收获技术新知&#xff0c;实现多元共进&#xff01; 主旨演讲亮点合集速览 &#xff08;KN recap视频&#xff09; 扫码前往官网 查看主旨演讲完整回放 Google 大中华区总裁陈俊廷首先上台分享&#x…

rrweb入门

rrweb 背景 rrweb 是 record and replay the web&#xff0c;是当下很流行的一个录制屏幕的开源库。与我们传统认知的录屏方式&#xff08;如 WebRTC&#xff09;不同的是&#xff0c;rrweb 录制的不是真正的视频流&#xff0c;而是一个记录页面 DOM 变化的 JSON 数组&#x…

文件上传漏洞-upload靶场13-16关 (图片木马-文件包含与文件上次漏洞)

文件上传漏洞-upload靶场13-16关 &#xff08;图片木马-文件包含与文件上次漏洞&#xff09; 简介 upload靶场到了第十三关&#xff0c;难度就直线上升了&#xff0c;在最后这7关中&#xff0c;包含了图片木马、竞争条件等上传技巧&#xff0c;这些漏洞的本质&#xff0c;都是…

算法:数组常见套路1---双指针、取模、打擂台法

一、数组的合并–双指针[快慢指针] 1、题目&#xff1a; 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2&#xff0c;另有两个整数 m 和 n &#xff0c;分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中&#xff0c;使合并后的数组同样按 非递减顺…

MybatisPlus(3)

前言&#x1f36d; ❤️❤️❤️SSM专栏更新中&#xff0c;各位大佬觉得写得不错&#xff0c;支持一下&#xff0c;感谢了&#xff01;❤️❤️❤️ Spring Spring MVC MyBatis_冷兮雪的博客-CSDN博客 一、查询投影&#x1f36d; 查询投影是指在查询操作中&#xff0c;只选择…

管理类联考——数学——汇总篇——知识点突破——数据分析——计数原理——排列组合——单排与环排

&#x1f451; 公式&#xff1a;—般地&#xff0c;n个不同元素作圆形排列&#xff0c;坐成圆形没有首尾之分&#xff0c;所以固定一人&#xff0c;共有 ( n − 1 ) ! (n-1)! (n−1)!种排法。如果从n个不同元素中取出m个元素作圆形排列共有 1 m C n m \frac{1}{m}C_n^m m1​Cn…

Windows Server 系统各版本及授权说明(附下载地址

本文为Windows Server系统各版本差异对比及授权说明。 会对相关目前仍主流使用的相关Windows Server系统版本和相关授权进行对比和功能说明。 WindowsServer2012 R2 Windows Server 2012 R2授权方式是按照物理CPU数量进行授权&#xff0c;比如物理服务器CPU插槽数量2&#xff…

企业数字化神经网络

随着数字化时代的到来&#xff0c;数据已经成为企业战略性资源和重要的生产要素。企业数字化转型的核心是充分开发和利用数据资源&#xff0c;以数据为驱动&#xff0c;对业务流程进行重构与创新&#xff0c;从而提升企业的核心竞争力。业务系统是企业数据资源的源头&#xff0…

Gitlab常用命令总结汇总

Gitlab常用命令 本地 初始化 全局变量 全局配置 git config --global user.name "your name" #设置全局用户名#git config --global uer.email "your email" #设置全局邮箱#版本库配置 git config --global color.ui true #让Gitlab显示不同的颜色…

吹爆这款制作电子图册的工具,真是太绝了

近年来&#xff0c;随着互联网技术的不断发展&#xff0c;电子图册成为了一种越来越受欢迎的展示方式。然而&#xff0c;对于很多人来说&#xff0c;制作电子图册并不是一件容易的事情。幸运的是&#xff0c;现在有一款神器出现了&#xff0c;让制作电子图册变得轻而易举。 这款…

易点易动库存管理系统与ERP系统打通,帮助企业实现低值易耗品管理

现今,企业管理日趋复杂,无论是核心经营还是辅助环节,都需要依靠信息化手段来提升效率。而低值易耗品作为企业日常运营中的必需品,其管理也面临诸多挑战。传统做法效率低下,容易出错。如何通过信息化手段实现低值易耗品的高效管理,成为许多企业必顾及的一个课题。 易点易动作为…

Mac电脑怎么使用NTFS磁盘管理器 NTFS磁盘详细使用教程

Mac是可以识别NTFS硬盘的&#xff0c;但是macOS系统虽然能够正确识别NTFS硬盘&#xff0c;但只支持读取&#xff0c;不支持写入。换句话说&#xff0c;Mac不支持对NTFS硬盘进行编辑、创建、删除等写入操作&#xff0c;比如将Mac里的文件拖入NTFS硬盘&#xff0c;在NTFS硬盘里新…

【C++】详解AVL树并模拟实现

前言&#xff1a; 之前我们为了让数据存储效率提高&#xff0c;引进了二叉搜索树。 但是我们发现&#xff0c;二叉搜索树的时间复杂度还是O(N),因为二叉搜索树并不是非常的平衡。 并不是所有树都是满二叉树&#xff0c;可能出现单边书这样极端的情况&#xff0c;所以我们引进…

Compose的一些小Tips - 生命周期

系列文章 Compose的一些小Tips - 生命周期&#xff08;本文&#xff09; 前言 本系列介绍Compose的一些常识&#xff0c;了解这些tips并不会让人摇身一变成为大佬&#xff0c;但可以帮助到一些学习Compose的安卓开发者避免一些误区&#xff0c;也是对入门详解中遗漏的一个补充…

智能水表远程控制系统:引领节水新时代

随着科技的不断发展&#xff0c;物联网技术逐渐融入到我们的日常生活中。其中&#xff0c;智能水表远程控制系统成为一项重要创新&#xff0c;对于提高水资源利用率、实现绿色节水具有重要意义。下面小编就来为大家介绍下智能水表远程控制系统吧! 一、智能水表远程控制系统定义…