首頁 > 後端開發 > C++ > 主體

C程式印出'偶數”或'奇數”,不使用條件語句

王林
發布: 2023-09-15 21:21:03
轉載
510 人瀏覽過

C程式印出偶數”或奇數”,不使用條件語句

在本節中,我們將看到如何在不使用任何條件語句(如,>=,==)的情況下檢查一個數是奇數還是偶數。

我們可以透過使用條件語句輕鬆地檢查奇數還是偶數。我們可以將數字除以2,然後檢查餘數是否為0。如果為0,則是偶數。否則,我們可以將數字與1進行AND運算。如果答案為0,則是偶數,否則為奇數。

這裡不能使用條件語句。我們將看到兩種不同的方法來檢查奇數還是偶數。

方法1

在這裡,我們將建立一個字串陣列。索引0位置將保存“偶數”,索引1位置將保存“奇數”。我們可以將數字除以2後的餘數直接作為索引取得結果。

範例程式碼

#include<stdio.h>
main() {
   int n;
   char* arr[2] = {"Even", "Odd"};
   printf("Enter a number: "); //take the number from the user
   scanf("%d", &n);
   printf("The number is: %s", arr[n%2]); //get the remainder to choose
   the string
}
登入後複製

Output 1

的中文翻譯為:

輸出1

Enter a number: 40
The number is: Even
登入後複製

輸出2

Enter a number: 89
The number is: Odd
登入後複製

方法2

這是第二種方法。在這種方法中,我們將使用一些技巧。這裡使用了邏輯和位元運算子。首先,我們對數字和1進行AND操作。然後使用邏輯和來列印奇數或偶數。當位元與的結果為1時,邏輯AND運算將傳回奇數結果,否則將傳回偶數。

範例程式碼

#include<stdio.h>
main() {
   int n;
   char *arr[2] = {"Even", "Odd"};
   printf("Enter a number: "); //take the number from the user
   scanf("%d", &n);
   (n & 1 && printf("odd"))|| printf("even"); //n & 1 will be 1 when 1
   is present at LSb, so it is odd.
}
登入後複製

Output 1

的中文翻譯為:

輸出 1

Enter a number: 40
even
登入後複製

輸出 2

Enter a number: 89
odd
登入後複製

以上是C程式印出'偶數”或'奇數”,不使用條件語句的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!