文章的組成

書的結構 學術論文的結構

句子的組成

程式語言

C語言的結構

敘述的組成

Java語言的結構

範例

文字描述如何判斷閏年 透過西元幾年來判斷閏年:4的倍數的年份是閏年,100的倍數的年份是平年,400的倍數的年份是閏年,也就是說,400年中,只有97個閏年(4的倍數有100個,100的倍數有4個,400的倍數有1個)。

以流程圖(Flow Chart)來表示

以程式來表示

#include <stdio.h>
int main() {
    int year;
    printf("Please input an the year:"); // 提示使用者輸入資料
    if (scanf("%d", &year) != 1) { // 輸入年份year
        printf("輸入錯誤\n");
        return;
    }
    if (year%4 == 0) {
        if (year%100 == 0) {
            if (year%400 == 0) {
                printf("%d是閏年\n", year);
            } else {
                printf("%d不是閏年\n", year);
            }
        } else {
            printf("%d是閏年\n", year);
        }
    } else {
        printf("%d不是閏年\n", year);
    }
}
如果我們把所有可得到閏年的路徑,集合在一起,則更簡潔的寫法是
#include <stdio.h>
int main() {
    int year;
    printf("Please input the year:"); // 提示使用者輸入資料
    if (scanf("%d", &year) != 1) { // 輸入年份year
        printf("輸入錯誤\n");
        return;
    } 
    if (year%400 == 0 || year%4 == 0 && year%100 != 0) {
        printf("%d是閏年\n", year);
    } else {
        printf("%d不是閏年\n", year);
    }
}
Java的範例
import java.util.*;
public class Leap {
    public static void main(String[] argv) throws Exception {
        int year = 1984;
        System.out.println("Please input the year:");
        Scanner in = new Scanner(System.in);
        if (!in.hasNextInt()) {
            System.out.println("輸入錯誤");
            return;
        }
        year = in.nextInt();
        if (year%400 == 0 || year%4 == 0 && year%100 != 0) {
            System.out.println(year+"是閏年");
        } else {
            System.out.println(year+"不是閏年");
        }
    }
}