for循环语法:
for( 表达式1;表达式2;表达式3)
{
循环体
}
循环从表达式1开始 - 表达式2(判别表达式)- 真 - 执行循环体 - 表达式3 - 判断表达式2
真 : 继续 — 循环体—表达式3 — 表达式2
假 :跳出循环(正常情况下,for循环的出口是表达式2)
练习:使用for循环,求1-100的和?
for循环的变换形式
循环因子:a、在for循环之前定义,在for循环,结束后依然能使用。
b、定义for循环之内,for循环结束后,不能使用
for(int i =1; i <= 100; i )//将定义i 放在for循环内表达式1
{
sum = sum i;
}
//循环结束,打印出累加结果
printf("sum = %d, i= %d\n", sum, i);
int i= 1; // 定义循环因子
int sum =0;
for ( ; i<=100; i ) //不写表达式1
{
sum = sum 1;
}
省略表达式2
int i= 1; // 定义循环因子
int sum =0;
for ( ; i<=100; ) //不写表达式1,不写表达式3
{
sum = sum 1;
i ;
}
省略表达式3
int i= 1; // 定义循环因子
int sum =0;
for ( ; ; ) //不写表达式2,相当于for(;1 ;)表达式2为真(1),这出现一个死循环
{
printf("i =%d\n", i);
i ;
} // 死循环
解决死循环的方法是:方法1:for( ; ;)方法2:while
练习:猜数字游戏,产生一个随机数,用户键盘输入一个数据,程序提示用户输入的数据><=随机数,用户根据提提示不断变换输入,最终猜中产生的随机数?1、添加一个随机数,作用,保证随机数真正的随机srand ( time (NULL)); //固定写法//time(NULL):获取系统当前时间,unsigned long long 类型//srand() :函数来生成随机数,使用系统时间为算法的系统2、添加头文件//srand()—(stdlib.h)//time() —(time.h)3、生成随机数int n = rand() 0; //随机数范围:0-99;
嵌套for循环
int i =0; //外层循环的循环因子
int j = 0; //内层循环的循环因子
for( i =0; i <10; i )
{
for( j =2; j <10; j )
{
//循环体
}
}
//外层循环执行一次,内层循环执行一周
练习:打印电子表
练习:打印输出9 * 9乘法表
,