鹏哥C语言33---循环语句 for

#define _CRT_SECURE_NO_WARNINGS

//-----------------------------------------------------------------------------------------------------------3.2 for循环

#include <stdio.h>

//-----------------------------------------------------------------------------------------------3.2.1 语法

// for(表达式1;表达式2;表达式3)

// 循环语句

/*

表达式1 初始部分

表达式2 条件判读部分

表达式3 调整部分

*/

//-----------------------------while 循环

//int main()

//{

// int i = 1;//初始化

// while (i <= 10)//判断

// {

// printf("%d", i);

// i++;//调整

// }

//

// return 0;

//}

//------------------------------for 循环 (最方便,最普遍)

//int main()

//{

// int i = 0; //定义变量初始化

// for (i = 1; i <= 10; i++) //三个表达式

// {

// printf("%d\n", i);

// printf("hehe\n");

// }

// return 0;

//

//}

//-----------------------------------------------------------------------------------------------3.2.2 break 和 continue 在for 中的应用

//----------------------------------------------------------------------break

//int main()

//{

// int i = 0;

// for (i = 1; i <= 10; i++)

// if (i == 5)

// {

// break;//直接终止循环,和while循环里的break 意思一样

// //break只能结束一层循环

// printf("%d\n", i);//输出1 2 3 4

// }

// return 0;

//}

//----------------------------------------------------------------------continue

//int main()

//{

// int i = 0;

// for (i = 1; i <= 10; i++)

// {

// if (i == 5)

// continue; //跳过 本次循环后边的代码,直接去调整代码

// // while 循环里的 continue 会跳过 continue 后边的代码(包括调整代码),直接去判断语句,最后死循环

// printf("%d\n", i);//输出1 2 3 4 6 7 8 9 10

// }

// return 0;

//}

//-----------------------------------------------------------------------------------------------3.2.3 for 语句的循环控制变量

//建议

//1.不可在for循环体内修改循环变量,防止for循环失去控制

//2.建议for语句的循环变量的取值采用"前闭后开区间"写法

//-------------------------------------------------------------

//int main()

//{

// int i = 0;

// for (i = 1; i <= 10; i++)

// if (i == 5)

// {

// printf("%d\n", i);//输出1 2 3 4

// }

// i = 12;// 在for循环体内修改循环变量,不可取×××××××××××××××××××

// return 0;

//}

//-------------------------------------------------------------

//int main()

//{

// int arr[10] = {1,2,3,4,5,6,7,8,9,10};

// int i = 0;

// for (i = 0; i < 10; i++)//建议,前闭后开

// //for (i = 0; i < =9; i++) //不推荐

// //for (i = 100; i <= 200; i++) //有时候也用,怎么合适怎么来

// {

// printf("%d ", arr[i]);

// }

// return 0;

//}

//---------------------------------------------------------------------------------------------3.2.4 一些 for 循环的变种

//-------------------------------------------------------------------代码1: 判断缺失

// for 循环的判断部分省略意味着判断会恒成立

//int main()

//{

// for (; ;) for 循环的判断部分(事件二)省略意味着判断会恒成立

// {

// printf("hehe\n"); //无限输出hehe,死循环

// }

// return 0;

//

//}

//-------------------------------------------------------------------代码2: 初始化缺失

// for 循环的初始化部分省略可能会出问题

//int main()

//{

// int i = 0;

// int j = 0;

// //for (i = 1; i < 3; i++)

// //{

// // for (j = 1; j < 3; j++)

// // {

// // printf("hehe\n"); //输出 9 个hehe

// // }

// //}

//

// for (; i < 3; i++) // i=1(事件一)不写

// {

// for (; j < 3; j++) // j=1(事件一)不写

// {

// printf("hehe\n"); //只能输出 3 个hehe

// //因为 j 没有初始化,所以第二次大循环进来是 j 还是上次的 3 ,判断为假,跳出 j 循环

// }

// }

// return 0;

//

//}

//-------------------------------------------------------------------代码3: 初始化

//在循环初始化的时候定义变量,C语言里只有C99语法这样写,C++里才这么写

//int main()

//{

// for (int i = 1; i <= 10; i++) //在循环初始化的时候定义变量 ,有时候不支持

// {

// printf("hehe\n");

// }

// return 0;

//

//}

//-------------------------------------------------------------------代码4: 使用多余一个变量控制循环

//int main()

//{

// int x = 0;

// int y = 0;

// for (x = 0, y = 0; x < 2 && y < 5; ++x, ++y)//(x<2 并且 y<5 )才进入循环

// {

// printf("hehe\n");

// }

// return 0;

//}

//--------------------------------------------------------------------------------------------------3.2.5 练习

//循环多少次?

int main()

{

int i = 0;

int k = 0;

for (i = 0, k = 0; k = 0; i++, k++)

k++;

return 0;

}

相关推荐
感哥3 小时前
C++ 面向对象
c++
CoovallyAIHub4 小时前
中科大DSAI Lab团队多篇论文入选ICCV 2025,推动三维视觉与泛化感知技术突破
深度学习·算法·计算机视觉
沐怡旸5 小时前
【底层机制】std::shared_ptr解决的痛点?是什么?如何实现?如何正确用?
c++·面试
NAGNIP5 小时前
Serverless 架构下的大模型框架落地实践
算法·架构
moonlifesudo5 小时前
半开区间和开区间的两个二分模版
算法
moonlifesudo6 小时前
300:最长递增子序列
算法
CoovallyAIHub11 小时前
港大&字节重磅发布DanceGRPO:突破视觉生成RLHF瓶颈,多项任务性能提升超180%!
深度学习·算法·计算机视觉
感哥11 小时前
C++ STL 常用算法
c++
CoovallyAIHub11 小时前
英伟达ViPE重磅发布!解决3D感知难题,SLAM+深度学习完美融合(附带数据集下载地址)
深度学习·算法·计算机视觉
saltymilk21 小时前
C++ 模板参数推导问题小记(模板类的模板构造函数)
c++·模板元编程