文章目录
前言
主要为C语言控制语句
 个人学习笔记,如有错误,请指正。

一、选择控制语句
1.1 if语句

if(条件表达式)
{
	//若干条语句;
	//语句1;
	//语句2;
}
 
if(条件表达式)
{
	//若干条语句;
}else
{
	//若干条语句;
}
 
if(条件表达式1)
{
	//若干语句;
}else if(条件表达式2)
{
	//若干语句;
}else if(条件表达式3)
{
	//若干语句;
}else
{
	//若干语句;
}
 
#include <stdio.h>
int main(int argc, char *argv[])
{
    int n = 40;
    //形式1:只有if
    //首先 判断if后面括号里面的表达式是否为真,
    //如果为真,则执行大括号里面的语句
    //如果为假,则不执行
//    if(n >= 50)
//    {
//        printf("%d >= 50\n", n);
//    }
    //形式2:有if和else
    //先判断if后面的表达式,如果为真,则执行if后大括号里面的语句
    //如果为假,则执行else后面大括号里面的语句
    //注意:如果if和else后面只有一条语句,则可以不加大括号
    //但是如果有多条语句,必须加大括号,否则else找不到与之最近的if,编译会报错
//    if(n >= 50)
//    {
//        printf("%d >= 50\n", n);
//    }
//    else
//    {
//        printf("%d < 50\n", n);
//    }
    //形式3:if...else if...else
    if(n > 50)
    {
        printf("%d > 50\n", n);
    }
    else if(n == 50)
    {
        printf("%d = 50\n", n);
    }
    else
    {
        printf("%d < 50\n", n);
    }
    return 0;
}
 
执行结果:

1.2switch语句

switch(表达式)//表达式只能是字符型或整型的(short int int long int)
{
case 常量表达式1:
	语句1;
	break;
case 常量表达式2:
	语句2;
	break;
...
default:
	语句3;
	break;
}
 
运行顺序:将常量表达式的值语句switch后面的表达式的值对比,如果表达式的值刚好等于case后面的某一个值,就会立即去执行case后的语句,如果都不是,则会执行default后面的语句
注意:
 (1)switch后面的语句表达式不能是浮点型,只能是整形
 (2)如果case后面的常量表达式的值都不同,则会执行default后面的语句
 (3)每一个case执行结束后需要跟上一个break;作用是跳出swich语句,如果没有break;则程序会执行下一个case语句直到遇到break;
 (4)case后面语句很多时,不需要加上大括号 { }
#include <stdio.h>
int main(int argc, char *argv[])
{
    int num = 2;
    switch(num)
    {
    case 1:
        printf("111111111111\n");
        //如果不加break,当要执行当前case语句时,执行完毕后悔接着下一个
        //case后的语句执行,直到遇到break为止,否则会一直执行
        break;
    case 2:
        printf("222222222222\n");
        break;
    case 3:
        printf("333333333333\n");
        break;
    default:
        printf("hahahahahaha\n");
        break;
    }
    return 0;
}
 
执行结果:
 
二、循环控制语句
2.1 for

for(表达式1;表达式2;表达式3)
{
	//复合语句,循环体
	语句块;
}
 
执行顺序:
 先执行表达式1,然后执行表达式2,如果表达式2成立,则执行语句块当语句块执行完毕之后,接着执行表达式3,然后再执行表达式2,如果表达式2成立,则继续执行语句块,以此类推,直到表达式2不成立,循环结束
#include <stdio.h>
int main(int argc, char *argv[])
{
    int i = 1;
    int sum = 0;
    for(i = 1; i <= 100; i++)
    {
       sum += i;
    }
    printf("1 + 2 + 3 + ... + 100 = %d\n", sum);
    return 0;
}
 
执行结果:
 
2.2 while
2.2.1 while
while(条件表达式)
{
	//循环体,复合语句
	语句块;
}
 
执行顺序:
 首先判断while后面的条件表达式,如果表达式成立(为真),执行语句块,执行完语句块,接着再次执行条件表达式,如果表达式为真,则继续执行语句块,
 直到条件表达式为假,循环结束
#include <stdio.h>
int main(int argc, char *argv[])
{
    int i = 1;
    int sum = 0;
    while(i <= 100)
    {
        sum += i;
        i++;
    }
    printf("1 + 2 + 3 + ... + 100 = %d\n", sum);
    return 0;
}
 

2.2.2 do…while

do{
	//循环体
	语句块;
}while(条件表达式);
 
执行顺序:
 先执行do后面的语句块,然后判断while后面的条件表达式是否成立,
 如果成立,则继续执行do后面的语句块,执行完毕后接着执行while后面的条件表达式,当条件表达式不成立时,循环结束。
注意:
 不管条件是否成立,do后面的语句块都会执行一次,所以尽量少用do…while在while后面必须加一个分号
2.3 goto
goto主要用于在一个函数里面实现代码的跳转
#include <stdio.h>
int main(int argc, char *argv[])
{
    //使用goto实现跳转
    printf("11111111111111\n");
    goto NEXT;
    printf("22222222222222\n");
    printf("33333333333333\n");
NEXT:
    printf("44444444444444\n");
    printf("hello world\n");
    printf("************************\n");
    //使用goto实现1到100的累加和
    int i = 1;
    int sum = 0;
JOOP:
    sum += i;
    i++;
    if(i <= 100)
    {
        goto JOOP;
    }
    printf("1 + 2 + 3 + ... + 100 = %d\n", sum);
    return 0;
}
 
执行结果:
 
总结
本篇主要展示了C语言控制语句的内容,如有错误,请指正。
 码字不易,还望各位点赞收藏,感谢您的阅读。










