[嵌入式C][入门篇] 快速掌握基础(9个语句)

开发环境:

  1. 网页版:跳转
  2. 本地开发(Vscode):跳转

一、基础语法

在这里插入图片描述

(1)if (如果)

示例1: 普通使用 if

一般形式: if (表达式) {语句;}
在这里插入图片描述

#include <stdio.h>
int main()  {
   
	int a = 8; // 定义一个变量
	if (a > 6) {
    // 为真执行语句  为假不执行
		printf("%d\n", a);
	}
	return 0;
}

在这里插入图片描述

示例2: 带否则 else

一般形式:if(表达式) {语句1; } else { 语句2;}
在这里插入图片描述

#include <stdio.h>
int main()  {
   
	int a = 8; // 定义一个变量
	if (a > 10) {
    // 为真执行语句  为假不执行
		printf("a > 10, a = %d\n", a);
	} else {
   
		printf("a < 10, a = %d\n", a);
    }
    //
	a = 88; // 改变变量值
	if (a > 10) {
    // 为真执行语句  为假不执行
		printf("a > 10, a = %d\n", a);
	} else {
   
		printf("a < 10, a = %d\n", a);
    }
	return 0;
}

在这里插入图片描述

示例3: 否则如果 else if

一般形式:
if(表达式1) { 语句1;}
else if(表达式2) {语句2;}

else if(表达式n){语句n;}
else{语句n+1;}

#include <stdio.h>
int main()  {
   
	int a = 8; // 定义一个变量
	if (a > 10) {
    // 为真执行语句  为假不执行
		printf("a > 10, a = %d\n", a);
	} else if (a < 9) {
   
		printf("a < 9, a = %d\n", a);
	} else {
   
		printf("a < 10, a = %d\n", a);
    }
	return 0;
}

在这里插入图片描述

(2)switch case (选择)

一般形式:
switch(表达式)
{
case 常量1:语句1;
case 常量2:语句2;

case 常量n:语句n;
default: 语句n+1;
}

规则

  1. switch表达式必须是整数或字符类型。
  2. case值必须是整数或字符常量。
  3. case值只能在switch语句内部使用。
  4. switch case中的break语句是可选的。如果在case中没有找到break语句,匹配的case之后的所有case都会被执行。这被称为C语言switch语句的"穿透"状态。

示例1:

#include<stdio.h>
int main() {
   
  int a = 10;
  switch(a) {
   
      case 10:
          printf("数字等于10");
          break;
      case 50:
          printf("数字等于50");
          break;
      case 100:
          printf("数字等于100");
          break;
      default:
          printf("数字不等于10、50或100");
  }
  return 0;
}

在这里插入图片描述

(3)for (计次循环)

一般形式:
for(循环变量赋初值;循环条件;循环变量增值){
语句
}

示例1:

#include<stdio.h> //头文件
int main() {
    //主函数
  for(int i=1;i<11;i++) {
    //循环条件和增量
    printf("%d",i);//输出结果
  }
  return 0;//函数返回值为0
}

在这里插入图片描述

(4)while (判断循环)

一般形式:
while(表达式){
//代码块

在这里插入图片描述

示例1:

#include<stdio.h> //头文件
int main() {
    //主函数
int i=0;
  while(i != 10) {
    //循环条件 (i≠10)
    printf("%d\r\n",i);//输出结果
    i++; // i每次+1
  }
  return 0;//函数返回值为0
}

在这里插入图片描述

(5)do while (判断循环尾)

在这里插入图片描述
一般形式:
do{
循环体
}while(表达式);

示例1: 和while效果一致

#include<stdio.h> //头文件
int main() {
    //主函数
int i=0;
  do {
    //循环条件 (i≠10)
    printf("%d\r\n",i);//输出结果
    i++; // i每次+1
  } while(i != 10);
  return 0;//函数返回值为0
}

在这里插入图片描述

示例2: 和while的区别 (保证能执行一次)

#include<stdio.h> //头文件
int main() {
    //主函数
int i=0;
   do {
    //循环条件 (i≠10)
    printf("%d\r\n",i);//输出结果
    i++; // i每次+1
  } while(i != 1);
  printf("最终结果:%d\r\n",i);//输出结果
  return 0;//函数返回值为0
}

在这里插入图片描述

(6)break (跳出循环)

break语句通常用于do-while、for、while循环语句中时,可使程序终止循环。

示例1:

#include<stdio.h> //头文件
int main() {
    //主函数
int i=0;
  while(i != 10) {
    //循环条件 (i≠10)
    printf("%d\r\n",i);//输出结果
    i++; // i每次+1
    if (i==5) break; // 如果i=5,则跳出循环
  }
  return 0;//函数返回值为0
}

在这里插入图片描述

(7)continue (到循环尾)

continue语句放在循环体内,用来跳过循环体中某一次后面的语句,进入下一次循环。

示例1:

#include<stdio.h> //头文件
int main() {
    //主函数
int i=0;
  for(i=0; i<10; i++) {
    //循环条件 (i≠10)
	if (i==5) continue; // 如果i=5,则进入下个循环
    printf("%d\r\n",i);//输出结果
  }
  return 0;//函数返回值为0
}

在这里插入图片描述

(8)return (返回)

用于函数的返回值和控制流程

规则

  1. 在函数执行过程中,只能使用return语句一次。
  2. 如果函数的返回值类型为void,则可以省略return语句;否则必须使用return语句返回一个值。
  3. 如果在函数中使用了多个return语句,则需要保证每个return语句都能够被执行到,并且返回的值是正确的。
  4. 在使用return语句时,应该考虑函数的调用方式和传递参数的方式,以确保返回的值能够满足调用方的需要。

示例1: 在循环体中使用

#include<stdio.h> //头文件
int main() {
    //主函数
int i=0;
  for(i=0; i<10; i++) {
    //循环条件 (i≠10)
	if (i==5) return 0; // 如果i=5,则跳出循环。 这里的return相当于break
    printf("%d\r\n",i);//输出结果
  }
  return 0;//函数返回值为0
}

在这里插入图片描述

示例2: 返回参数

#include<stdio.h> //头文件
int test(void) {
   
	return 8;
}

int main() {
    //主函数
  int i=test(); // 调用test函数得到返回值
  printf("%d\r\n",i);//输出结果
  return 0;//函数返回值为0
}

在这里插入图片描述

(9)goto (跳转)

一般形式:
goto a;
.
.
a: 语句;
在这里插入图片描述
在这里插入图片描述

规则

  1. 使用 goto 语句只能 goto 到同一函数内,而不能从一个函数里goto到另外一个函数里。
  2. 应该避免向两个方向跳转, 防止函数进入死循环,无法退出。

注意:在任何编程语言中,都不建议使用 goto 语句。因为它使得程序的控制流难以跟踪,使程序难以理解和难以修改。任何使用 goto 语句的程序可以改写成不需要使用 goto 语句的写法。

示例1:

#include <stdio.h>
int main () {
   
   /* 局部变量定义 */
   int a = 0;
  do {
   
      if(a == 5) {
   
         /* 跳过迭代 */
         a = a + 1;
         goto FLAG1; // 跳转到标记1
      }
      printf("a 的值: %d\n", a);
      a++;
   }while(a < 20);
FLAG1:  // 标记1
	printf("标记1\r\n");
   return 0;
}

在这里插入图片描述

相关推荐

  1. 嵌入学习第二——C语言基础10

    2024-01-07 20:46:01       30 阅读
  2. 【DevOps基础】Dockerfile快速掌握

    2024-01-07 20:46:01       20 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-07 20:46:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-07 20:46:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-07 20:46:01       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-07 20:46:01       20 阅读

热门阅读

  1. 家庭顶梁柱保险如何配置?

    2024-01-07 20:46:01       38 阅读
  2. How to initialize a nodejs project

    2024-01-07 20:46:01       31 阅读
  3. Springboot整合Flowable Modeler(flowable6.4.0)

    2024-01-07 20:46:01       34 阅读
  4. Kotlin 作用域函数

    2024-01-07 20:46:01       44 阅读
  5. js三个声明变量说明以及区别

    2024-01-07 20:46:01       36 阅读
  6. flink1.18.0 flink维表join新思路

    2024-01-07 20:46:01       48 阅读
  7. 【Github】上传代码

    2024-01-07 20:46:01       41 阅读
  8. redis

    redis

    2024-01-07 20:46:01      43 阅读
  9. 【题解】leetcode---69. x 的平方(二分查找入门)

    2024-01-07 20:46:01       36 阅读