1. C语言是一门结构化的程序设计语言

1. 顺序结构

2. 选择结构

3. 循环结构

 C语言学习——lesson 3    分支与循环(1)_分支结构(选择语句)

 C语言学习——lesson 3    分支与循环(1)_分支结构(选择语句)_02

C语言学习——lesson 3    分支与循环(1)_编程练习_03

  1. 分支语句(选择结构)

(1) if语句

①if(表达式){

    语句1;

}

③if(表达式1){

    语句1;

}

else  if(表达式){

          语句2;

}

      else{

          语句3;

}

②if(表达式){

    语句1;

}

else{

  语句2;

}

注:else与最近的未匹配的if配对

#define _CRT_SECURE_NO_WARNINGS 1

#include <stdio.h>
//if语句
//int main()
//{
// int age = 10;
// printf("输入年龄1:");
// scanf("%d", &age);
// if (age < 18) {
// printf("单分支:未成年\n");
// }
// printf("输入年龄2:");
// scanf("%d", &age);
// if (age < 18) {
// printf("双分支:未成年\n");
// }
// else {
// printf("双分支:成年\n");
// }
// printf("输入年龄3:");
// scanf("%d", &age);
// if (age < 18) {
// printf("多分支:未成年\n");
// }
// else if (age >= 18 && age < 50) {
// printf("多分支:成年\n");
// }
// else {
// printf("多分支:老年\n");
// }
// return 0;
//}

C语言学习——lesson 3    分支与循环(1)_循环语句_04

(2) switch语句:常用于多分支

switch(整型表达式)   ——>允许嵌套使用

{

语句项;——>case 整型常量表达式: 语句; break;

}                                                                     break视情况需要

//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;
default:
printf("输入错误\n");
break;
}
switch (day)
{
case 1:
case 2:
case 3:
case 4:
case 5:
printf("工作日\n");
break;
case 6:
case 7:
printf("休息日\n");
break;
default:
printf("输入错误\n");
break;
}
return 0;
}

C语言学习——lesson 3    分支与循环(1)_编程练习_05

  1. ​循环语句

(1) while语句

while(表达式)   ——>表达式为真(条件判断部分)

{

循环语句;//条件为真执行

}

while执行顺序

C语言学习——lesson 3    分支与循环(1)_分支结构(选择语句)_06

1) break; 在while中的作用:

在循环中只要遇到break,就停止后期的所有循环,直接终止循环

2) continue; 在while中的作用:

用于终止本次循环;本次循环中continue后面的代码不会执行,而是直接跳转到while语句的判断部分,进行下一次循环的入口判断

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
// //循环语句:while
//int main()
//{
// int i = 1;
// while (i <= 10)
// {
// printf(" %d", i);
// i++;
// }
// printf("\n");
// i = 1;
// while (i <= 10)
// {
// i++;
// if (i == 5)
// break;
// printf(" %d", i);
//
// }
// printf("\n");
// i = 1;
// while (i <= 10)
// {
// i++;
// if (i == 5)
// continue;
// printf(" %d", i);
//
// }
// return 0;
//}

C语言学习——lesson 3    分支与循环(1)_编程练习_07

(2) for循环语句:

for(   表达式1  ;  表达式2  ;  表达式3  )

  //初始化部分  条件判断部分  循环条件调整部分  

{

循环语句;

}

for执行顺序

C语言学习——lesson 3    分支与循环(1)_循环语句_08

1) break; 在for的作用:

在循环中只要遇到break,就停止后期的所有循环,直接终止循环

2) continue; 在for中的作用:

用于终止本次循环;本次循环中continue后面的代码不会执行,而是直接跳转到for语句的条件调整部分,再执行条件判断部分,进行下一次循环的入口判断 

////for循环
//int main()
//{
// int i = 0;
// // 初始化 判断 调整
// for (i = 1; i <= 10; i++)
// {
// printf(" %d", i);
// }
// printf("\n");
// for (i = 1; i <= 10; i++)
// {
// if (5 == i)
// {
// break;
// }
// printf(" %d", i);
// }
// printf("\n");
// for (i = 1; i <= 10; i++)
// {
// if (5 == i)
// {
// continue;
// }
// printf(" %d", i);
// }
// return 0;
//}

C语言学习——lesson 3    分支与循环(1)_分支结构(选择语句)_09

注:1. 不可在for循环体内修改循环变量,防止失控

      2. 建议循环控制变量的取值使用“前闭后开区间”写法

(3) do……while()循环:循环体至少执行一次

do

{

循环语句;

}while(表达式);

do……while()执行顺序

C语言学习——lesson 3    分支与循环(1)_分支结构(选择语句)_10

1) break; 在do……while()的作用:

在循环中只要遇到break,就停止后期的所有循环,直接终止循环

2) continue; 在do……while()中的作用:

用于终止本次循环;本次循环中continue后面的代码不会执行,而是直接跳转到do……while()语句的条件判断部分,进行下一次循环的入口判断

#define  _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
//// do while 循环
//int main()
//{
// int i = 1;
// do {
// printf(" %d", i);
// i++;
// } while (i <= 10);
// printf("\n");
// i = 1;
// do {
// if (5 == i)
// {
// break;
// }
// printf(" %d", i);
// i++;
// } while (i <= 10);
// printf("\n");
// i = 1;
// do {
// if (5 == i)
// {
// continue;
// }
// printf(" %d", i);
// i++;
// } while (i <= 10);
// return 0;
//}

C语言学习——lesson 3    分支与循环(1)_循环语句_11

  1. 编程练习
//int main()
//{
// int ch = getchar();//输入字符
// int ch1 = 0;
// putchar(ch);//打印字符
// printf(" %c\n", ch);
// while ((ch1 = getchar())!= EOF)//ctrl +z 结束输入
// {
// putchar(ch1);
// }
// return 0;
//}

C语言学习——lesson 3    分支与循环(1)_编程练习_12

////while_getchar()的作用
//int main()
//{
// int ch = 0;
// char password[20] = {0};
//
// printf("输入passward:");
// scanf("%s", password);
// while ((getchar()) != '\n')
// {
// ;
// }
// printf("输入(Y/N):");
// ch = getchar();
// if ('Y' == ch){
// printf("输入成功\n");
// }
// else {
// printf("重新输入\n");
// }
//
// return 0;
//}

C语言学习——lesson 3    分支与循环(1)_分支结构(选择语句)_13

C语言学习——lesson 3    分支与循环(1)_编程练习_14

int main()
{
int ch = 0;
while ((ch = getchar()) != EOF)
{
if (ch<'0' || ch>'9')
{
continue;
}
putchar(ch);
}
return 0;
}

C语言学习——lesson 3    分支与循环(1)_分支结构(选择语句)_15