☰
C语言分支语句全攻略:if 与 switch 从入门到实战
2026/9/27 22:50:54 网站建设 项目流程

C语言学习记录

日期: 8.11

C语言是结构化的程序设计语言

  1. 顺序结构
  2. 选择结构
  3. 循环结构

📖今日知识点 ——if语句

语法结构:

  1. if(表达式)

    语句;
  2. if(表达式)

    语句1;

    else

    语句2;

//多分支

  1. if(表达式1)

    语句1;

    else if(表达式2)

    语句2;

    else

    语句3;

else与最近的if匹配,而不是和谁对齐匹配

💻练习代码

#include<stdio.h>

//if语句

//int main()

//{

// int age = 20;

// if (age >= 18)

// {

// printf(“成年\n”);

// }

//

// else

// {

// printf(“未成年\n”);

// printf(“不能谈恋爱\n”);

// }

// int age = 60;

// if (age < 10)

// {

// printf(“少年\n”);

// }

// else if (age >=18 && age < 26)

// {

// printf(“青年\n”);

// }

// else if (age >= 26 && age < 40)

// {

// printf(“中年\n”);

// }

// else if (age >= 40 && age < 60)

// {

// printf(“壮年\n”);

// }

// else if (age >= 60 && age < 100)

// {

// printf(“老年\n”);

// }

// else

// {

// printf(“修仙\n”);

// }

// return 0;

//}

// int main()

// {

// int a = 0;

// int b = 2;

// if (a == 1)

// if (b == 2)

// printf(“hehe\n”);

// else

// printf(“haha\n”);

// return 0;

// }

//int main()

//{

// int num = 3;

// if (5 == num)//当不小心泄漏一个=时,会报错

// printf(“hehe\n”);

// return 0;

//}

//判断是否为奇数

//int main()

//{

// int num = 15;

// if (num % 2 == 1)

// printf(“为奇数\n”);

// return 0;

//}

//输出1-100之间的奇数

//int main()

//{

// int i = 0;

// for (i=1;i<=100;i++)

// {

// if (i % 2 == 1)

// printf("%d ",i);

// }

// for (int i = 1;i<=100;i+=2)

// {

// printf("%d ",i);

// }

// return 0;

//}

📖今日知识点 ——switch语句

引入:比如:

输入1,输出星期一

输入2,输出星期二

输入3,输出星期三

输入4,输出星期四

输入5,输出星期五

输入6,输出星期六

输入7,输出星期日

如果写成if…else if…else if的形式太复杂了,那就用不一样的语法形式,就用switch语句。

switch (整形表达式)

{

语句项;

}

什么是语句项?是一些case语句

输入数字n,就从casen开始执行打印,直至所有case语句执行完。若想要输入n,就只执行case n语句,那么要加上break(用来结束语句)。

break不是必须加的

default的作用:如果用户输入的值不匹配现有的case标签时,default子句后面的语句就会执行,每个switch只能出现一条default语句

💻练习代码

//switch语句,也属于分支语句,常用于多分支的情况

//int main()

//{

// int day = 0;

// scanf(“%d”, &day);

// switch (day)

// {

// case 1:

// printf(“星期一\n”);

// break;

// case 2:

// printf(“星期二\n”);

// break;

// case 3:

// printf(“星期三\n”);

// break;

// case 4:

// printf(“星期四\n”);

// break;

// case 5:

// printf(“星期五\n”);

// break;

// case 6:

// printf(“星期六\n”);

// break;

// case 7:

// printf(“星期日\n”);

// break;

// }

// return 0;

//}

//1-5 工作日

//6-7 休息日

//int main()

//{

// int day = 0;

// scanf(“%d”, &day);

// switch (day)

// {

// case 1:

// case 2:

// case 3:

// case 4:

// case 5:

// printf(“工作日\n”);

// break;

// case 6:

// case 7:

// printf(“休息日\n”);

// break;

// default://如果用户输入的值不匹配现有的case标签时,default子句后面的语句就会执行,每个switch只能出现一条default语句

// printf(“输入错误\n”);

// break;

// }

// return 0;

//}

//int main()

//{

// int n = 1;

// int m = 2;

// switch (n)

// {

// case 1:m++;//m=3

// case 2:n++;//n=2

// case 3:

// switch (n)

// {//switch允许嵌套使用

// case 1:

// n++;

// case 2:

// m++;n++;//m=4,n=3

// break;

// }

// case 4:

// m++;//m=5,n=3

// break;

// default://如果用户输入的值不匹配现有的case标签时,default子句后面的语句就会执行,每个switch只能出现一条default语句

// break;

// }

// printf(“m = %d, n = %d\n”,m,n);

// return 0;

//}

//写代码将三个整数按大小输出

//int main()

//{

// int a = 0;

// int b = 0;

// int c = 0;

// //输入

// scanf(“%d%d%d”,&a, &b, &c);

// //调整顺序

// if (a < b)

// {

// int tmp = a;//新建临时变量 tmp,先把 a 的值存起来

// a = b;//把 b 的值赋值给 a

// b = tmp;

// }

// if (a < c)

// {

// int tmp = a;//新建临时变量 tmp,先把 a 的值存起来

// a = c;//把 c 的值赋值给 a

// c = tmp;

// }

// if (b < c)

// {

// int tmp = b;//新建临时变量 tmp,先把 b 的值存起来

// b = c;//把 c 的值赋值给 b

// c = tmp;

// }

// //输出——从大到小

// printf(“%d %d %d\n”,a, b, c);

// return 0;

//}

//写一个代码打印1~100之间所有3的倍数的数字

//int main()

//{

// int a = 0;

// for (a = 1;a <= 100;a++)

// {

// if(a % 3 == 0)

// printf("%d ",a);

// }

//

// return 0;

//}

//给定两个数,求这两个数的最大公约数

int main()

{

int a = 0; int b = 0; scanf("%d%d",&a, &b);//24,18 int max = 0; //假设最大公约数就是a b的最小值 if (a > b) max = b; else max = a; while (1) { if (b % max == 0 && a % max == 0) { printf("最大公约数就是:%d\n",max); break; } max--; } return 0;

}

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询