C语言分支与循环

前言:

帮大家总结一波C语言中的基本语句与基本框架,帮大家对于整个框架更为清晰。码字不易,求多支持,听说喜欢点赞的大佬们未来都年薪百万呢~

1.C语言的基本语句

1.1表达式语句

表达式语句一般由分号结尾,表达式语句中最常用表达式语句是由表达式后跟分号(;)组成的。其中变量名本身就是一个表达式。

x = y + z;   // 这是一个赋值表达式语句

1.2函数调用语句

函数调用语句一般由函数名和实参组成,用于调用函数。函数调用本身就是一个表达式,但当我们只想要函数的执行效果而不关心其返回值时,我们将其用作语句。

printf("we are handsome!\n");  // 这是一个函数调用语句

1.3控制语句

控制语句用于改变程序的控制流程。它们包括条件语句(如ifif-elseswitch)和循环语句(如forwhiledo-while)。

1.3.1分支语句

(1)if  else

指编程语言中用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一。

使用方法:

 if(表达式)
语句1

 if(表达式)
语句1
else
语句2

 if(表达式)
语句1
else if(表达式)
语句2
else
语句3
(else if数量无限制)

for example:


	int a = 0;
	
	if (a==0)//表达式
	{
		printf("handsome\n");//语句1
	}
	else if(a>0)//表达式
	{
		printf("pretty\n");//语句2
	}
	else
	{
		printf("rich\n");//语句3
	}
	

(2)switch 
 
switch (variable) {  
    case value1:  
        // 如果variable的值等于value1,执行这里的代码  
        break;  
    case value2:  
        // 如果variable的值等于value2,执行这里的代码  
        break;  
    default:  
        // 如果variable的值与任何case都不匹配,执行这里的代码  
}

switch是一种分支语句,常用于多分支的情况

使用方法:

(1)switch
switch(整形表达式)
{
语句项;
}

(2)case
语句项的内容:
case 整形常量表达式:
语句:

(3)break
switch中的break,能帮助我们实现真正的分支。switch语句执行时会从上到下根据括号中表达式的值作比较,当某个case语句中的表达式与此值相同时,就执行这个case语句或语句序列,直到遇到break为止。 break语句是必须有的,它用来结束switch语句的执行。

(4)default
当所有case语句后面的表达式都不等于switch语句项中case后面整型常量表达式的值,就执行default后面的默认语句序列。不过,default部分是可选的。如果没有这一部分,并遇到所有case语句都不匹配,那么,就不作任何处理而进入后续程序段的执行。
 

1.3.2 循环语句 

(1)for 

在已知循环次数的情况下使用。它首先初始化一个变量,然后检查一个条件,如果条件为真,就执行一段代码,然后更新变量。这个过程会一直重复,直到条件为假。

for (initialization; condition; update) {  
    // 如果condition为真,执行这里的代码  
}

使用方法:for(表达式1; 表达式2; 表达式3)
循环语句;
表达式1:
表达式1为初始化部分,用于初始化循环变量的。
表达式2:
表达式2为条件判断部分,用于判断循环时候终止。
表达式3:
表达式3为调整部分,用于循环条件的调整。

(2)while

在不知道循环次数,但知道循环终止条件的情况下使用。它首先检查一个条件,如果条件为真,就执行一段代码,然后再次检查条件。这个过程会一直重复,直到条件为假。

while (condition) {  
    // 如果condition为真,执行这里的代码  
}
(3) do while

while循环类似,但会至少执行一次代码块,然后再检查条件。如果条件为真,代码块会再次执行。

do {  
    // 执行这里的代码  
} while (condition);

1.3.3 转向语句

(1)continue

continue语句用于跳过当前循环迭代中的剩余语句,并立即开始下一次迭代。它通常用于在循环中跳过某些不满足条件的迭代。


int main() {  
    int i;  
    for (i = 0; i < 10; i++) {  
        if (i % 2 == 0) { // 如果i是偶数  
            continue; // 跳过当前迭代,不执行后面的printf  
        }  
        printf("%d ", i);  
    }  
    return 0;  
}

(2) break

break语句用于立即终止当前循环或switch语句的执行,并跳出到循环或switch语句之后的代码。

int main() {  
    int i;  
    for (i = 0; i < 10; i++) {  
        if (i == 5) { // 如果i等于5  
            break; // 跳出循环  
        }  
        printf("%d ", i);  
    }  
    return 0;  
}
(3) go to

goto语句用于无条件地跳转到程序中标记的位置。尽管goto在某些情况下可能有用,但过度使用它会导致代码难以理解。

int main() {  
    int i = 0;  
    if (i == 0) {  
        goto skip; // 跳转到标记为skip的位置  
    }  
    printf("This will not be printed.\n");  
skip:  
    printf("This will be printed.\n");  
    return 0;  
}

这里的输出是:This will be printed. 

(4) return 

return语句用于从当前函数中返回,并可选地返回一个值给调用者。当return语句执行时,函数会立即终止,并返回到调用该函数的地方。

int add(int a, int b) {  
    return a + b; // 返回a和b的和  
}  
  
int main() {  
    int sum = add(3, 4); // 调用add函数,并将返回值存储在sum中  
    printf("Sum: %d\n", sum); // 输出:Sum: 7  
    return 0;  
}

1.4 复合语句

复合语句(也称为块)是由一对花括号{}包围的一系列语句。复合语句可以包含任意数量的语句,包括其他复合语句。例如:

{  
    int a = 5;  
    printf("%d\n", a);  
    if (a > 0) {  
        printf("we are handsome!\n");  
    }  
}  // 这是一个复合语句

1.5 空语句

空语句是一个只包含分号的语句,它不执行任何操作。空语句通常用作占位符,在语法上需要语句但逻辑上不需要任何操作的地方使用。

;  // 这是一个空语句

总的来说,C语言的基本语句提供了程序执行所需的各种结构和控制机制,使我们能够写出复杂而有效的程序。

2.三大结构

控制语句用于控制程序的执行流程,而三大结构则是程序流程的基本框架。

2.1顺序结构

这是最基本的程序结构,它按照代码的书写顺序逐行执行。在顺序结构中,控制语句主要用于控制变量的赋值、函数调用等操作的执行顺序。

2.2选择结构

选择结构也称为分支结构,它允许程序根据某个条件的选择来执行不同的代码块。在C语言中,常见的控制语句如if、else、switch等用于实现选择结构。例如,if语句用于根据条件判断的结果来决定是否执行某个代码块。

2.3循环结构

循环结构允许程序重复执行某段代码,直到满足某个条件为止。在C语言中,常见的控制语句如for、while、do-while等用于实现循环结构。例如,for循环用于在指定的范围内重复执行某段代码。

  • 27
    点赞
  • 49
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值