【从零开始的 C 语言笔记】第二十四篇-程序设计的流程图制作

不怎麽重要的前言

上一篇介绍了比较少使用到的switch条件式,其实也可以用if条件式代替使用,不过就介绍给大家了解看看!

现在学习程序设计中有助厘清思路、写程序的流程图吧!


流程图是什麽?

如同盖一栋房子必须先画设计图,写一个程序的时候我们也可以透过撰写流程图,来帮助自己厘清思路、转换为程序码,毕竟当一个程序越来越复杂的时候,我们要光凭想像来写就越来越难,所以这时可以透过先划出程序的流程图,来帮助自己一步步完成程序。

我们来看流程图是什麽样子的:
https://ithelp.ithome.com.tw/upload/images/20211103/20142565zCRqjuZUlE.png

这是一个判断质数的程序,转换为程序码为以下:

#include <stdio.h>

int main()
{
    int n, k=0;

    scanf("%d", &n);
    for(int i = 2; i<n; i++){
        if(n%i == 0){
            k = 1;
            break;
        }
    }
    if(k == 0){
        printf("YES\n");
    }
    else{
        printf("NO\n");
    }

    return 0;
}

https://ithelp.ithome.com.tw/upload/images/20211103/20142565AjV0gCXC1C.png


正式使用

  1. 规则
    可以使用纸笔来画,没有的话可以用别的线上工具。(找不到的话,参考这个线上工具也可以)

(1) 流程图使用到的图形

使用图形 说明
https://ithelp.ithome.com.tw/upload/images/20211103/201425650HK24iRFPr.png 程序开始、结束的图形
https://ithelp.ithome.com.tw/upload/images/20211103/20142565c1mjWe2ynC.png 输入、输出的图形
https://ithelp.ithome.com.tw/upload/images/20211103/20142565xWvcuM5VPr.png 程序处理的图形
https://ithelp.ithome.com.tw/upload/images/20211103/20142565Fu9fnhHmqz.png 条件式的图形
https://ithelp.ithome.com.tw/upload/images/20211103/20142565Zunxzq0yOs.png 表示程序运行(流程)方向的指向箭头
https://ithelp.ithome.com.tw/upload/images/20211103/20142565GYoNuEzjcR.png 连接点,单纯是无任何处理的中继点

(2) 清楚的程序开始与结束
https://ithelp.ithome.com.tw/upload/images/20211103/20142565pjg1T5Qm4Y.png
https://ithelp.ithome.com.tw/upload/images/20211103/20142565NCmTNZhWlq.png

(3) 程序的流程以箭头标示清楚
https://ithelp.ithome.com.tw/upload/images/20211103/20142565OMtMEWg1tp.png
https://ithelp.ithome.com.tw/upload/images/20211103/20142565bbtXHAIz4w.png

(4) 条件式需标示好true、false方向
https://ithelp.ithome.com.tw/upload/images/20211103/20142565YdmmU3JdNI.png
(判断输入的整数是否为偶数)

(5) 注意回圈的画法是否正确
https://ithelp.ithome.com.tw/upload/images/20211103/201425651slTaZPCa0.png
(从1开始列印到输入的整数n)

  1. 应用
    我们来尝试画一个流程图,输入一个整数n,印出第一行一个「*」、第二行两个「*」、第三行三个「*」,直到列印第n行n个「*」结束,如以下这样结果的程序。
    https://ithelp.ithome.com.tw/upload/images/20211104/20142565OTsy7ANOBN.png
    https://ithelp.ithome.com.tw/upload/images/20211104/20142565frsusn4b0d.png

流程图:

程序码:

#include <stdio.h>

int main()
{
    int n;

    scanf("%d", &n);
    for(int i=1; i<=n; i++){
        for(int j=1; j<=i; j++){
            printf("*");
        }
        printf("\n");
    }

    return 0;
}

看到这里我们就介绍完流程图怎麽画了,用笔、电脑软件或线上的工具都可以,作从简单的输出、加入条件式、加入回圈,再到结合多重回圈的范例,不晓得大家有没有清楚一些?

下一篇我们来介绍很重要、很常使用的语法--副函式吧!


<<:  【从零开始的 C 语言笔记】第二十三篇-Switch条件式

>>:  MSP430 在 linux 上的环境设定

Day6 Milestone怎麽立

前人在修筑公路时,会每隔一哩立一个记号,作为计数与定位之用。现在公路也会,每公里都有一个计数指标,可...

Day 09: Valid Palindrome

相信回文(palindrome)一定是在刚入门学习程序时一定会遇到的问题, 他虽然看起来很简单,但的...

Day30 vue.js docker部署

延续昨日 今天的要做是把东西布署在docker(就不解释docker罗) 首先要先创一个docker...

WordPress 适用响应式(RWD)浏览图片灯箱效果外挂-WP Lightbox 2

WP Lightbox 2 是一款支援图片灯箱效果,点图放大附关闭功能的外挂,适合在响应式网页上使用...

DAY13 - 最短路径算法(二)

今天写单源最短路径算法 也是直接放一题例题讲解~~ 例题&算法 815. 公交路线 题目叙述...