IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> FOR循环 c++ -> 正文阅读

[C++知识库]FOR循环 c++

for循环引入:

现实生活中,有许多重复执行的事件,大家还记得小学学习算盘时,有一题需要计算:

1+2+…+100 = 5050

计算过程:我们从1一直累加到100,对于每个数我们都做相同的操作,即累加到 算盘 上。


其实计算机特别擅长做重复的事,对于算盘计算问题,我们用c++来实现就特别简单:

int ans = 0;
for (int i = 1;i <= 100;i ++){
	ans += i;
}

他们的执行过程完全一样,但是计算机代替我们做了重复的事情,这就是循环

学习for循环:
????????for循环是一种计数控制循环,即我们知道循环执行的确切次数,重复特定次数的循环就称为计数控制循环。
????????例如,算盘例子中,我们知道求和需要重复累加100次,这实际上意味着,循环数为?12。

计数控制循环必须具有 3 个要素:

1、必须将循环变量初始化为起始值。
2、必须通过将其与最终值进行比较来测试循环变量。当循环变量达到其最终值时,循环终止。
3、必须在每次迭代期间更新循环变量。这通常通过变量递增或递减来完成。

for 循环专门用于初始化、测试和更新循环变量。

?for循环有格式!!!

以下是?for 循环的格式:

for (初始化;测试;更新)
{
??? 语句;
??? 语句;
??? //根据需要在此放置更多语句
}

? ? ??如果循环体中只有一个语句,则可以省略大括号。

? ? ? for?循环的第一行是循环头。在关键词?for?之后,括号内有?3?个表达式,用分号分隔(注意第?3?个表达式之后没有分号):

? ? ? 第一个表达式是初始化表达式,它通常用于将循环变量初始化为其起始值。这是循环执行的第一个动作,只做一次。

? ? ? 第二个表达式是测试循环变量。它控制循环的执行。只要这个条件为?true,for?循环的主体将重复,它在每次迭代之前判断测试表达式。

? ? ? ?第三个表达式是更新表达式。它在每次迭代结束时执行。通常,这是一个递增循环计数器变量的语句。

简单的例子:

以下是一个简单的?for 循环示例,将打印“Hello”字符串 5 次:

for (count = 1; count <= 5; count++)
??? cout << "Hello" << endl;

? ? ?在该循环中,初始化表达式为?count = 1,测试表达式为“count <= 5”,更新表达式为 count++。循环的主体只有一个语句,即 cout 语句。下图说明了循环执行过程中发生的事件顺序。

? ? ??请注意,只要测试表达式为真,就重复步骤?3?4。图 2 以流程图形式显示了 for 循环的一般逻辑。

? ? ??请注意如何使用计数器变量?count?来控制循环迭代的次数。它的值从?1?开始,每次循环迭代之后递增?1。只要表达式?"count <= 5"?保持为?true,循环将重复迭代。但是,在?5?次迭代之后,count?将变成?6,这导致测试表达式变为?false,所以循环终止。

? ? ? 还要注意的是,在这个例子中,count?变量仅在循环头中使用,以控制循环迭代的次数。它不用于任何其他目的。当然,也可以在循环体内使用计数器变量。例如,来看下面的代码:

for (number = 1; number <= 5; number++)
??? cout << number << " ";

? ? ? 此循环中的计数器变量为?number。除了控制迭代次数之外,它也被用在循环体中

简单的例题:

? ? ? ?

first:? ? ? ?

????????班上有学生若干名,给出每名学生的年龄(整数),求班上所有学生的平均年龄,保留到小数点后两位。

输入格式:

第一行有一个整数n(1≤ n ≤ 100),表示学生的人数。其后n行每行有1个整数,表示每个学生的年龄,取值为15到25。

输出格式:

输出一行,该行包含一个浮点数,为要求的平均年龄,保留到小数点后两位。

限制:

空间限制:128MByte

时间限制:1秒

样例:

输入:
2
18
17
输出:
17.50

? ? ? ? ?分析:

? ? ? ? ? ? ? ? 就是单纯的输入然后计算输出即可。

? ? ? ? 代码:

????????????????

#include <bits/stdc++.h>
  using namespace std;
int main(){
	int n,sum=0;
	int age[100];
	float b;
	cin >> n;
	for(int i=0;i<n;i++){
		scanf("%d",&age[i]);
		sum+=age[i];
	}
	b=(float)sum/n;
	printf("%.2lf",b);
    return 0;
}

second:

????????计算非负整数m到n(包括m和n)之间的所有奇数的和,其中,m 不大于 n,且n 不大于300。例如 m=3, n=12, 其和则为:3+5+7+9+11=35。

输入格式:

两个数 m 和 n,两个数以一个空格分开,其中 0 ≤ m ≤ n ≤ 300 。

输出格式:

输出一行,包含一个整数,表示m到n(包括m和n)之间的所有奇数的和。

限制:

空间限制:128MByte
时间限制:1秒

样例:

输入:
7 15
输出:
55

?分析:

????????从m到n的单数相加,有two种方法:

? ? ? ? (1):遍历m到n,判断是不是单数,是那就加

? ? ? ? ? (2):遍历m到n的单数,如果m是单数,直接i+=2,反之 把m+1后遍历。

代码:

? ? ? ? 方法1:

#include <bits/stdc++.h>
using namespace std;
int main()
{
	int m ,n ,sum = 0;
	cin >> m >> n;
	for(int i = m;i <= n;i++)
	{
		if(i% 2 != 0)
		{
			sum += i;
		}
	}
	cout<<sum;
	return 0;	
}

? ? ? ? 方法2:

????????

#include <bits/stdc++.h>
using namespace std;
int main()
{
	int m ,n ,sum = 0;
	cin >> m >> n;
  if(m % 2 == 0)
  {
     m += 1;
  }
	for(int i = m;i <= n;i+=2)
	{
			sum += i;
	}
	cout<<sum;
	return 0;	
}

Finally:

编写程序,输入n的值,求 1/1 - 1/2 + 1/3 - 1/4 + 1/5 - 1/6 + 1/7 - 1/8 + … + (-1)n-1·1/n 的值。

输入格式:

输入一个正整数n。1 <= n <= 1000。

输出格式:

输出一个实数,为表达式的值,保留到小数点后四位。

限制:

空间限制:128MByte
时间限制:1秒

样例:

输入:
2
输出:
0.5000

?分析:

? ? ? ? 按照数学思想计算即可。

代码:

#include<iostream>
int main()
{
	int n,a=1,b=2;
	double c=0;
	scanf("%d",&n);
	for(int i=1;i<n;i++)
    {
		c+=1.0/a-1.0/b;
		a=b+1,b=a+1;
	}
	printf("%.4lf",c);
	return 0;
}

总结:

for循环十分重要,也有很多可以优化的地方,要持续的学才行。

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2022-01-01 13:42:06  更:2022-01-01 13:44:03 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 10:25:21-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码