首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C語言基礎練習三題:素數、閏年、乘法表綜合實現

     編輯:關於C語言

C語言入門三大經典練習:素數篩選、閏年判斷、乘法表

整理三道基礎算法題的簡潔實現,適合初學者練習循環、條件、嵌套控制結構。

1. 100-200 素數篩選 (基礎版)


for (i = 100; i < 200; i++) {
    for (n = 2; n < i/2; n++) {
        if (i % n == 0) break;
    }
    if (i % n != 0) printf("%d\t", i);
}

優化點:內層循環到 i/2,未用平方根優化。

2. 1000-2000 閏年判斷


for (i = 1000; i <= 2000; i++) {
    if (i%4==0 && i%100==0 || i%400==0)
        printf("%d是閏年\n", i);
    else
        printf("%d不是閏年\n", i);
}

注意:邏輯 i%4==0 && i%100==0 || i%400==0 有優先級陷阱,正確應為 (i%4==0 && i%100!=0) || i%400==0。原代碼輸出所有年份而非僅閏年。

3. 乘法口訣表 (矩陣版)


for (i = 1; i <= 9; i++) {
    for (j = 1; j <= 9; j++, n++) {
        sum = i * j;
        if (n % 9 == 0) printf("\n");
        printf("%d\t", sum);
    }
}

使用計數器 n 控制換行,輸出 9x9 完整矩陣。

代碼質量提升建議

  • 變量聲明前置 (C89 風格)
  • 添加註釋說明邏輯
  • 優化算法(素數用 √n,閏年修正邏輯)
  • 統一縮進與大括號風格
  • 輸出格式化對齊

學習路徑建議

  1. 先跑通基礎版
  2. 理解每行執行流程
  3. 嘗試優化算法
  4. 對比不同輸出格式
  5. 擴展功能(如統計個數、文件輸出)

三題涵蓋:雙重循環、條件判斷、計數控制、格式化輸出,是 C 語言控制結構的完美練習套裝。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved