一、while循环
1.基本结构
while(条件表达式)
{
代码;
}
与分支结构类似,如果代码块中的代码只有一行,可以省略“{}”
2.示例:输出6个6
#include<stdio.h>
void main()
{
int i = 0;
while(i < 6)
{
printf("6");
i++;
}
}
或
#include<stdio.h>
void main()
{
int i = 6;
while(i--) //
printf("6");
}
因为在C语言中,0表示“假”,所以当 “i–”的值为0时,跳出循环
二、do-while循环
do
{
代码1;
}while(条件表达式);
与while循环类似,不过do-while循环首先执行代码,再判断条件。
与分支结构类似,如果代码块中的代码只有一行,可以省略“{}”
三、for循环
1.基本结构
for(代码1; 条件表达式; 代码2)
{
代码3;
}
与分支结构类似,如果代码块中的代码只有一行,可以省略“{}”
2.例子:输出6个6
#include<stdio.h>
void main()
{
for(int i = 0; i < 6; i++)
printf("6");
}
或者
#include<stdio.h>
void main()
{
for(int i = 1; i <= 6; i++)
printf("6");
}
四、总结
如果要将某代码循环n(n是一个正整数)次,通常有以下几种写法:
1. for循环
for(int i = 0; i < n; i++)
{
代码;
// 这时i的取值依次为:0,1,2....n-1
}
for(int i = 1; i <= n; i++)
{
代码;
// 这时i的取值依次为:1,2,3....n
}
2. while循环
int i = n;
while(i--)
{
代码;
// 这时i的取值依次为:n-1,...,3,2,1
}
int i = 0;
while(i < n)
{
代码; // 这时i的取值依次为:0,1,2....n-1
i++; // 注意i++的位置
}
int i = 0;
while(i < n)
{
i++; // 注意i++的位置
代码; // 这时i的取值依次为:1,2,3....n
}
小练习
还记得我们编写的“将小写字母转换为大写”的程序吗?现在我们将它优化一下。
要求:
- 若输入的是小写字母,将其转换为大写字母输出
- 若输入的不是小写字母,直接输出该字符
- 直到输入“;”,程序结束
提示:需要用到分支结构和循环结构
参考答案
#include<stdio.h>
void main()
{
char a;
while((a = getchar()) != ';') // 循环,直到输入“;”,程序结束
{
if(a >= 'a' && a <= 'z') // 判断输入的字符是否为小写字母
a -= 32; // 如果是小写字母,将其转换为大写字母
putchar(a); // 输出
}
}
好了,文章到这里就结束了,我们下一节再见
每周五晚20:00更新