【C语言】三大程序结构(顺序、选择、循环) 您所在的位置:网站首页 选择结构if语句 【C语言】三大程序结构(顺序、选择、循环)

【C语言】三大程序结构(顺序、选择、循环)

2024-07-01 22:44| 来源: 网络整理| 查看: 265

三大程序结构 一、顺序结构二、选择结构1. if语句2. if...else 语句3.多分支选择结构(if..else if...else语句) 三、循环结构1.while循环2. do...while循环3.for 循环

一、顺序结构

 顺序结构的程序设计是最简单的,起包含的语句按照书写的顺序执行,且每条语句都将被执行。其他的结构可以包括顺序结构,也可以作为顺序结构的组成部分。  它的执行顺序是自上而下,依次执行。 在这里插入图片描述 例如:输入三个字符,将他们反向输出

#include int main() { char ch1, ch2 ,ch3; printf("请输入三个字符:") ch1 = getchar(); ch2 = getchar(); ch3 = getchar(); //依次输入三个字符 putchar(ch3); putchar(ch2); putchar(ch1); //反向输出三个字符 return 0; }

运行结果:

请输入三个字符:ABC CBA

注释:  在输入三个字符的时候要连续输入,不要用空格符隔开。

二、选择结构 1. if语句

 语法格式

if (条件表达式) { //条件表达式为 ture 时执行的代码 }

条件为真, 执行if中的语句, 然后再执行if条件之外的语句, 反之则不执行if中的语句, 直接执行if条件之后的语句  根据年龄判断是否已经成年

int age = 20; if( age > 18 ) { printf("年龄达到18周岁,已经成年了"); }

 判断一个数是否在5到10之间

int num = 8 ; if( num > 5 && num //条件表达式为 true 时执行的代码 } else { //条件表达式为 false 时执行的代码 }

条件为真,执行if中的语句,然后再执行if…else之后的语句;反之执行else中的语句,然后再执行if…else之后的语句。 在这里插入图片描述

 输入两个实数,输出最大值 #include int main() { double a, b, t; printf("请输入两个实数"); scanf("%lf,%lf",&a,&b); if(a>b) printf("max= %.4f\n",a); else printf("max= %.4f\n",b); return 0; }

运行结果 第一次运行:

输入两个实数:3 . 54,2 . 34 max = 3 . 5400

第二次运行:

输入两个实数:2 . 34, 3 . 54 max = 3 . 5400

3.多分支选择结构(if…else if…else语句)

语法格式

if( 条件表达式一) { //当条件一为 true 时执行的代码 } else if (条件表达式二) { //当条件二为 true 时执行的代码 } else { //当条件一 和 条件二 都不为 true 时执行的代码 }

如果条件表达式一为真,执行if中的语句;如果表达式二为真,执行if…else中的语句;如果条件都不满足执行else中的语句,最后再执行if … else if … else之后的语句。 在这里插入图片描述

接收一个人的成绩, 如果成绩为: 90(包含)到100(包含)输出优秀, 70(包含)到90输出良好, 60(包含)到70输出及格, 60分以下输出不及格。 #include int main() { flaot score; printf("请输入你的成绩:"); scanf(" % f, &score); if(score 100 ) printf("输入有误!\n"); else if(score /* 局部变量定义 */ char grade = 'B'; switch(grade) { case 'A' : printf("很棒!\n" ); break; case 'B' : case 'C' : printf("做得好\n" ); break; case 'D' : printf("您通过了\n" ); break; case 'F' : printf("最好再试一下\n" ); break; default : printf("无效的成绩\n" ); } printf("您的成绩是 %c\n", grade ); return 0; }

运行结果

做得好 您的成绩是 B

三、循环结构 1.while循环

语法格式

while(表达式) { 语句; ……… } 语句;

  (1)首先判断while后边括号内的表达式是否为真,若为真即执行大括号内的语句,若为假,则跳过while循环结构执行大括号下方的第一条语句。(2) 若为真,当执行完大括号内语句后,再次按照(1)去判断,执行。(3) 直到while后小括号内表达式的表达式为假,结束循环。 注意:若在while的大括号内执行了 break语句,则立刻结束循环结构,开始执行大括号外下方的第一条语句。

 例子1:

#include int main() { int a = 5, b = 10; while(b > a) //即若b > a 为真就执行大括号内的语句, { //若为假则执行大括号下方语句 printf("while looping a = %d, b = %d\n", a, b); a++; } printf("while loop over\n"); return 0; }

运行结果 在这里插入图片描述 即当,a的值等于10时,b>a 不成立,循环结束。

2. do…while循环

例子1:do…while循环

#include int main() { int a = 10, b = 10; do { printf("while looping a = %d, b = %d\n", a, b); }while(b > a); printf("while loop over\n"); return 0; }

运行结果

在这里插入图片描述 例子2:while循环

#include int main() { int a = 10, b = 10; while(b > a) { printf("while looping a = %d, b = %d\n", a, b); } printf("while loop over\n"); return 0; }

运行结果 请添加图片描述 以上两个例子,while的表达式和 while循环体内的语句是一模一样的,执行后会产生不一样的结果,你会看到do…while… 的结构 会执行一次循环体内的打印输出语句,而while循环则,因b>a为假而没有执行。

即:do…while… 结构 先执行一次循环体内的语句然后再判断while后括号内的表达式的真假,除此之外跟上边的 while结构是一样的。

3.for 循环

for 循环是一种更为灵活的循环控制结构,完全可以替代上边的while循环

for(循环变量赋初值;循环条件判断;循环变量值变化) { 语句1; 语句2; 语句3; …………; }

执行流程 在这里插入图片描述

#include int main() { int i; for(i = 0; i int i; for(i = 0; i continue; } printf(" print the value of i = %d\n", i); } return 0; }

运行结果 在这里插入图片描述

这三大结构各有不同,希望大家把上述的例子都运行一遍,也可以根据自己的创意改一改,然后保存,编译运行,看看结果如何。这些结构的熟练掌握都是需要多多练习的,加油!!!

> 😜 相 见 就 是 【 猿 分 】 🐒 . 👀 感谢您阅读完此文章 👀 . ❓ 希望能够对你有所帮助 🎯 . ❌ 如果文章中有错误的地方请指正 ✔️ . 💪 感谢支持,一起加油,共同进步 🏃



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有