C 程式在不使用分號的情況下列印從 1 到 N 的數字


在這裡我們將看到這個問題的一個棘手解決方案。我們將在不使用任何分號的情況下列印一些從 1 到 N 的數字。

我們可以用兩種不同的方法來解決這個問題。第一種是迭代方法,第二種是遞迴方法。

方法 1

printf() 函式返回字串的長度,因此它是一個非零值。我們可以對條件進行邏輯 AND 來列印結果。然後增加計數器的值。

示例程式碼

#include<stdio.h>
#define N 20
int main(int num, char *argv[]) {
   while (num <=N && printf("%d ", num) && num++) {
      //The while body is empty.
   }
}

輸出

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

方法 2

在第二種方法中,我們將看到如何使用遞迴來完成相同的任務。我們將在主函式中傳遞一些引數。此主函式將被遞迴呼叫。

示例程式碼

#include<stdio.h>
#define N 20
main(int val) {
   if (val <=N && printf("%d ", val) && main(val + 1)) {
      //Body is empty
   }
}

輸出

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

更新於: 30-7 月-2019

1K+ 瀏覽次數

開啟你的 職業生涯

透過完成課程獲得證書

開始
廣告