分支语句和循环语句(1)

Part 1

一、判断这3条线段组成的三角形属于什么类型

①if循环

/*《C语言程序设计教程学习指导》p122 实验内容(1):判断三角形类型:一般三角形、等腰三角形、等边三角形
 这是一个使用多分支if语句编程解决非数值类问题示例
 运行程序,输入不同边长数据进行测试,观察输出结果是否正确,理解和巩固if语句功能和用法*/
#include <stdio.h>
int main() {
    double a, b, c;
    scanf_s("%lf %lf %lf", &a, &b, &c);

    if (a + b > c && a + c > b && b + c > a) {
        if (a == b && a == c)
            printf("构成等边三角形\n");
        else if (a == b || a == c || b == c)
            printf("构成等腰三角形\n");
        else
            printf("构成一般三角形\n");
    }
    else
        printf("不能构成三角形\n");

    return 0;
}

②if内部代码替换

/*demo1_1.cpp: 《C语言程序设计教程学习指导》p122 实验内容(1)
 这是一个使用多分支if语句编程解决非数值类问题示例
 运行程序,输入不同边长数据进行测试,观察输出结果是否正确,理解和巩固if语句功能和用法
*/
#include <stdio.h>
int main() {
    double a, b, c;
    scanf_s("%lf %lf %lf", &a, &b, &c);

    if (a + b > c && a + c > b && b + c > a) {
        if (a == b || a == c || b == c) {
            if (a == b && a == c)
                printf("构成等边三角形\n");
            else
                printf("构成等腰三角形\n");
        }
        else
            printf("构成一般三角形\n");
    }
    else
        printf("不能构成三角形\n");

    return 0;
}

      

③while循环

/*这是在demo1.cpp的基础上行,增加了一小部分代码,可以循环判断多组数据
要终止输入和判断:按组合键Ctrl+D(同时按下Ctrl和D键),然后按回车键结束*/
#include <stdio.h>
int main() {
    double a, b, c;
    printf("输入三角形三边:\n");

    while (scanf_s("%lf%lf%lf", &a, &b, &c)) {
        if (a + b > c && a + c > b && b + c > a) {
            if (a == b && a == c)
                printf("构成等边三角形\n");
            else if (a == b || a == c || b == c)
                printf("构成等腰三角形\n");
            else
                printf("构成一般三角形\n");
        }
        else
            printf("不能构成三角形\n");

        printf("\n输入三角形三边:\n");
    }

    return 0;
}

 二、判断成绩等级

①if语句

/*《C语言程序设计教程学习指导》p122 实验内容(2):输入百分制分数,测算并输出等级制分数
 这是一个综合使用while语句、多分支if语句和continue、break实现分数段判断的示例
 运行程序,输入不同分数值进行测试,理解和巩固这些控制语句的用法
 按下组合键Ctrl+D(同时按下Ctrl和D)结束判断 */

#include <stdio.h>
int main() {
    int score;     // 用于存放百分制分数
    char grade;  // 用于存放等级制分数(取值‘A‘, ‘B‘,‘C‘,‘D‘, ‘E‘) 

    while (1) {
        printf("输入学生成绩: ");
        if (scanf_s("%d", &score) == 0)  // 如果检测到没有成绩输入,则结束整个循环
            break;

        if (score < 0 || score > 100) {
            printf("输入成绩有误!\n\n");
            continue;    // 结束本次循环,开始下一次循环
        }
        else if (score >= 90 && score <= 100)
            grade = ‘A‘;
        else if (score >= 80 && score <= 89)
            grade = ‘B‘;
        else if (score >= 70 && score <= 79)
            grade = ‘C‘;
        else if (score >= 60 && score <= 69)
            grade = ‘D‘;
        else
            grade = ‘E‘;

        printf("等级为: %c\n\n", grade);
    }

    return 0;
}

②switch语句

/*相较于demo3.cpp,这个代码实现中,分数从百分制转换为等级制的部分,使用switch语句实现
 按下组合键Ctrl+D(同时按下Ctrl和D),然后按回车键,结束判断 */ 

 #include <stdio.h>
 int main() {
     int score;     // 用于存放百分制分数
     char grade;  // 用于存放等级制分数(取值‘A‘, ‘B‘,‘C‘,‘D‘, ‘E‘) 

    while(1) {
        printf("输入学生成绩: ");
        if(scanf("%d",&score) == 0)  // 如果检测到没有成绩输入,则结束整个循环
            break; 

        if(score<0 || score > 100) {
            printf("输入成绩有误!\n\n");
            continue;    // 结束本次循环,开始下一次循环
        }

        switch(score/10) {   // 使用switch进行分数等级判断
            case 10:
            case 9:        grade=‘A‘; break;
            case 8:        grade=‘B‘; break;
            case 7:        grade=‘C‘; break;
            case 6:        grade=‘D‘; break;
            default:    grade=‘E‘;
        }

        printf("等级为: %c\n\n", grade);
    }
    return 0;
}

三、对比和理解控制语句continue和break的功能

①continue语句

// 对比demo5_1.cpp和demo5_2.cpp,理解控制语句continue和break的功能
#include <stdio.h>
int main() {
    int i;

    // 在循环语句中使用continue
    for(i=1; i<=5; i++) {
        if (i%3 == 0)  // 如果i是3的倍数,则结束本次循环,开始下一次循环
            continue;

        printf("i=%d\n",i);
    }

    return 0;
} 

②break语句

// 对比demo5_1.cpp和demo5_2.cpp,理解控制语句continue和break的功能
#include <stdio.h>
int main() {
    int i;

    // 在循环语句中使用break
    for(i=1; i<=5; i++) {
        if (i%3 == 0)  // 如果i是3的倍数,则结束整个循环
            break;

        printf("i=%d\n",i);
    }

    return 0;
} 

简单分析:

  1. continue语句使程序跳出当前循环的剩余部分,并开始下一轮迭代
  2. break语句使程序跳转至紧跟在包含break语句的循环或switch末尾的下一条语句

四、对比和理解在嵌套的循环中控制语句continue和break的功能

①continue语句

// 对比demo6_1.cpp和demo6_2.cpp,理解在嵌套的循环中,控制语句continue和break的功能

#include <stdio.h>
const int LINE=3;        // 定义符号常量LINE
const int COLUME=5;        // 定义符号常量COLUME

int main() {
    int line;    // 定义变量line, 用来控制行数
    int col;     // 定义变量col, 用来控制列数

    // 输出LINE行信息
    for(line=1; line<=LINE; line++) {
        // 每一行中,利用循环,输出各列信息
        for(col=1; col<=COLUME; col++) {
            if(col%3 == 0)  // 如果col是3的倍数,则结束本次循环,开始下一次循环
                continue;

            printf("%5d", col);
        }

        printf("\n"); // 每输出完一行,换行
    }

    return 0;
} 

简单分析:如果continue语句在嵌套循环内,则只会影响包含该语句的内层循环,即不会影响外层循环。

②break语句

// 对比demo6_1.cpp和demo6_2.cpp,理解在嵌套的循环中,控制语句continue和break的功能

#include <stdio.h>
const int LINE=3;        // 定义符号常量LINE
const int COLUME=5;        // 定义符号常量COLUME

int main() {
    int line;    // 定义变量line, 用来控制行数
    int col;     // 定义变量col, 用来控制列数

    // 输出LINE行信息
    for(line=1; line<=LINE; line++) {
        // 每一行中,利用循环,输出各列信息
        for(col=1; col<=COLUME; col++) {
            if(col%3 == 0)  // 如果col是3的倍数,则结束内层循环体
                break;

            printf("%5d", col);
        }

        printf("\n"); // 每输出完一行,换行
    }

    return 0;
} 

简单分析:如果break语句位于嵌套循环内,它只会影响包含它的当前循环。即要跳出外层循环还需要一个break。

Part 2

五、补足程序

/* 编程找出5个整数的最大数和最小数
《C语言程序设计教程学习指导》p122实验内容(3) */

#include <stdio.h>
int main() {
    int number, max, min, n;

    n = 1;
    printf("输入第%d个数: ", n);
    scanf_s("%d", &number);

    max = number;
    min = number;

    while (n <= 4) {
        n++;
        printf("输入第%d个数: ", n);
        scanf_s("%d", &number);

        if (number > max)
            max = number;
        else if (number < min)
            min = number;
    }

    printf("最大数为: %d\n", max);
    printf("最小数为: %d\n", min);

    return 0;
}

Part 3

六、编程

①输出素数及个数

#include <stdio.h>
#include <math.h>
int main() {
    int n, m, i, k;
    k = 0;
    for (n = 101;n <= 200;n++) {
        m = sqrt(n);
        for (i = 2;i <= m;i++) {
            if (n%i == 0)
                break;
        }
        if (i > m) {
            printf("%4d", n);
            k = k + 1;
        }
    }
    printf("\n");
    printf("101~200之间共有%d个素数.", k);
    return 0;
}

②打印图案

#include <stdio.h>
int main()
{
    int line, n, m;
    for (line = 1;line <= 5;line++)
    {
        for (n = 1;n <= 5 - line;n++)
            printf(" ");
        for (m = 1;m <= 2 * line - 1;m++)
        {
            printf("*");
        }
        printf("\n");
    }
    return 0;
}

编写此文时感觉身体不大舒服,就先这样吧(o_ _)?

最后,感谢阅读~

原文地址:https://www.cnblogs.com/gundongtiao/p/10711636.html

时间: 2024-08-02 03:15:59

分支语句和循环语句(1)的相关文章

Shell编程之case多分支语句、循环语句(for、while等)、Shell函数、Shell数组

case多分支语句 case语句的结构: 针对变量的不同取值,分别执行不同的命令列 case 变量值 in 模式1) 命令序列1 ;; 模式2) 命令序列2 ;; ..... *) 默认命令序列 esac 示例: 字符类型识别: 提示用户输入一个字符: 判断出该字符是字母.数字或者其他字符. 脚本如下: [[email protected] opt]# vim test01.sh #!/bin/bash read -p "请输入一个字符:" key case $key in [a-z]

[Python学习] 专题二.条件语句和循环语句的基础知识

        前面讲述了"专题一.函数的基础知识",而这篇文章讲述的Python的条件语句和循环语句的基础知识.主要内容包括: 1.条件语句:包括单分支.双分支和多分支语句,if-elif-else 2.循环语句:while的使用及简单网络刷博器爬虫 3.循环语句:for的使用及遍历列表.元组.文件和字符串 前言: 语句块         在讲诉条件语句.循环语句和其他语句之前,先来补充语句块知识.(前面讲函数时已经用到过) 语句块并非一种语句,它是在条件为真(条件语句)时执行或执行

javascript语句——条件语句、循环语句和跳转语句

× 目录 [1]条件语句 [2]循环语句 [3]跳转语句 前面的话 默认情况下,javascript解释器依照语句的编写顺序依次执行.而javascript中的很多语句可以改变语句的默认执行顺序.本文介绍可以改变语句默认执行顺序的条件语句.循环语句和跳转语句 条件语句 脚本的威力体现在它们可以根据人们给出的各种条件做出决策,javascript使用条件语句来做判断 条件语句(conditianal statement)通过判断表达式的值来决定执行还是跳过某些语句,包括if语句和switch语句

if条件语句 for循环语句

(一)if语句 If语句是一个条件分支语句. C#中,空语句是合法的,他不做任何操作. 好的编码风格要求语句块中要有缩进. I f语句中if后面可以没有else,可以有多个else if,但只能最多有一个else! 例题: /*if语句的简单应用 收入和逃税问题 double money; Console.Write("月收入"); money = Convert.ToDouble(Console.ReadLine()); if (money > 3500) { Console.

编译器--支持条件语句和循环语句的计算器(三)

在上篇文章中实现了支持变量和赋值语句的计算器,这次加入了条件语句和循环语句. 语法简介 下面是条件语句的一个例子,能够对条件语句的格式有一个感性认识: if  var1 > 5 then var2 := 10; end 条件语句以if开始,后跟一个条件表达式,如果其为真则执行then后面的语句块,条件语句以end结束. 条件语句也可以支持else分支语句,比如 if var1 > 5 then var2 := 10; else var2 := -10; end 接下来是一个循环语句的例子: v

python基础(4):条件语句与循环语句

今天我们看看条件语句与循环语句. 预习: 1.使用while循环输出1 2 3 4 5 6 8 9 10 2.求1-100的所有数的和 3.输出 1-100 内的所有奇数 4.输出 1-100 内的所有偶数 5.求1-2+3-4+5 ... 99的所有数的和 6.用户登陆(三次机会重试) 一.条件语句 当我们写的程序需要分支时,也可以说当一个事件发生时在特定情况下会产生不同处理情况时就会用到我们的条件语句. if...else语句: 单分支: 1 ''' 2 if 条件 : 3 满足条件后执行的

兄弟连学Python(06)------- 条件语句和循环语句

Python的条件语句和循环语句的基础知识: 1.条件语句:包括单分支.双分支和多分支语句,if-elif-else 2.循环语句:while的使用及简单网络刷博器爬虫 3.循环语句:for的使用及遍历列表.元组.文件和字符串 在讲诉条件语句.循环语句和其他语句之前,先来补充语句块知识.(前面讲函数时已经用到过) 语句块并非一种语句,它是在条件为真(条件语句)时执行或执行多次(循环语句)的一组语句.在代码前放置空格或tab字符来缩进语句即可创建语句块.很多语言特殊单词或字符(如begin或{)来

【RPA基础教学】UiBot逻辑语句与循环语句

新手教学丨UiBot逻辑语句与循环语句 逻辑语句[条件分支语句]UIBot中使用的条件判断语句就是If语句,主要用于对某一个或者多个条件进行判断,从而执行不同流程.方式一:如果...则...否则If 条件条件成立执行Else条件不成立执行End If 方式二:如果 条件一 否则如果 条件二 否则If 条件一条件一成立执行ElseIf 条件二条件二成立执行Else上述条件均不成立End If [选择分支语句]根据一定的条件,选择多个分支中的一个,与VBScript中的Select Case语句类似

Shell编程之case语句与循环语句

case语句分支 1.case语句的结构 case 变量值 in模式 1)命令序列 1;;模式 2)命令序列 2;;......*)默认命令序列esac case分支语句的结构图使用case分支语句的注意点:1.case行尾必须为单词"in",每一个模式必须以右括号")"结束.2.双分号";;"表示命令序列的结束.3.模式字符串中,可以用方括号表示一个连续的范围,如"[0-9]";还可以用竖杠符号"|"表示

Java-条件语句、循环语句练习

题目一:一张纸的厚度大约是0.08mm,对折多少次之后能达到珠穆朗玛峰的高度(8848.13米)? double height=0.08; for(int i=1;i>0;i++) { height*=2; if(height>=(8848.13*1000)) { System.out.println("折叠次数="+i); break; } } 题目二:计算5的阶乘 5!的结果是? int sum=1; for(int i=1;i<=5;i++) { sum*=i;