作者是大一新生,写博客用来分享自己的学习成果,不喜勿喷,有错误请多多指教
今天学习的是选择结构和循环结构
目录
一、选择结构
1.if语句
#include <stdio.h>
int main()
{
if () //比较表达式 > < >= <= != ==
{
}
else if ()
{
}
else
{
}
return 0;
}
以上是if语句的基本结构,其中else if可以有多条,但是else只有一个。if括号中判断的是比较表达式,常见的有> < >= <= != ==等,C语言中有这样一句话:非零即是TRUE。所有非零的值都是真值,if判断的是当前表达式里的是真值还是假值,如果表达式返回的值是真值,那么执行if里的语句,如果是假值,那么执行else里的语句。因此出现if和else的时候只可能执行其中的一条,不可能都执行,也不可能都不执行,如果是的话那应该是写错了0.0
2.switch语句
#include <stdio.h>
int main()
{
switch () //整型变量或整型变量表达式
{
case :
break;
}
return 0;
}
以上是switch语句的基本结构,和if语句类似,switch括号里判断的是整型变量或整型变量表达返回值是整型,结合一个例子来看:
#include <stdio.h>
int main()
{
int a = 1; //石头
int b = 2; //剪刀
int c = 3; //布
switch (a) //整型变量或整型变量表达式
{
case 1:
printf("石头\n");
break;
case 2:
printf("剪刀\n");
break;
case 3:
printf("布\n");
break;
}
return 0;
}
这是一个模拟石头剪刀布的小程序,当括号里的值为a时,返回值是1,执行case 1,最后输出“石头”。
二、循环结构
1.for循环
#include <stdio.h>
int main()
{
for ( ; ; )
{
//循环执行的内容
}
return 0;
}
for循环通常用于知道循环次数的情况,括号内由两个分号进行分割,分为三部分,分别为:循环变量的初值、循环条件、循环变量的变化频率,大括号内为循环执行的内容,举个小例子:
#include <stdio.h>
int main()
{
for (int i = 1; i <= 15; i++)
{
printf("今天是自律的第%d天\n", i);
}
return 0;
}
2.while循环
#include <stdio.h>
int main()
{
while ()
{
}
return 0;
}
while循环通常用于不知道循环次数的情况,小括号内是循环条件,大括号内是循环内容
do-while循环
#include <stdio.h>
int main()
{
do
{
} while ();
return 0;
}
do-while循环至少循环一次,大括号内为循环内容,小括号内为循环条件,举个小例子来对比二者的区别:
#include <stdio.h>
int main()
{
int a = 0;
do
{
a--;
printf("%d\n", a);
} while (a > 0);
while (a > 0)
{
a--;
printf("%d\n", a);
}
return 0;
}
通过运行结果可以看出,do-while循环执行了循环内容,而while循环没有执行,因为do-while循环是先进行一次循环条件再进行循环判定,也就是至少执行一次循环。而while循环是先进行循环判断,再执行循环内容,所以没有输出结果。