1. if和while对比
C语言提供3种循环语句(while循环、for循环、do while循环),while循环为其中的一种。while语句的语法结构和if语句非常相似。
if( 表达式)
语句;
while(表达式)
语句;//若循环体包含多种语句,可以加大括号{ }
if语句:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int n = 10;
if (n > 0)
printf("hehe\n");
return 0;
}
运行结果:
while语句:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int n = 10;
while (n > 0)
printf("hehe\n");
return 0;
}
运行结果:此时打印hehe死循环
原因:while的表达式只要满足,则打印,然后返回while,表达式仍然成立,再次打印,返回while,直到while表达式不成立才退出。
2.while语句的执行过程:先判断表达式,表达式若为假(或值为0),循环结束,表达式值为真(或不是0),执行循环语句,语句执行完后再继续判断,是否进行下一次判断。
3.exe 1:利用while循环,在屏幕上打印1~10的值。
参考代码:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int i = 1;
while ( i <= 10)
{
printf("%d ", i);
i++;
}
return 0;
}
运行结果:
注意:i++若放在printf前,则打印的是 2 3 4 5 6 7 8 9 10
4.exe 2:利用while循环,输入一个正的整数,逆序打印这个整数的每一位。
例如:输入:1 2 3 4 输出:4 3 2 1
参考代码:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
int n = 0;
scanf("%d", &n);
while (n)
{
printf("%d ", n % 10);
n = n / 10;
}
return 0;
}
运行结果: