1. 程式人生 > 其它 >C語言程式設計-現代方法 第二版 第8.1.3小節程式碼 檢查數中重複出現的數字

C語言程式設計-現代方法 第二版 第8.1.3小節程式碼 檢查數中重複出現的數字

技術標籤:C語言程式設計-現代方法 第二版程式設計

第8.1.3小節程式碼 檢查數中重複出現的數字

//This is a comment
//Author:King
//Time:2020/12/5
//Reference:C Programming:A Modern Approach,Second Edition

/***************************************************************
8.1.3小節程式碼 檢查數中重複出現的數字 
****************************************************************/
#include <stdio.h> #include <stdbool.h> // C99 only int main(void) { long n; int digit; bool digit_seen[10] = {false}; //初始化陣列全部成員為false printf("Enter a number:"); scanf("%ld",&n); //注意此處%ld,可以接收長整型數字 while(n>0) { digit = n % 10; //得到數字n的最低位數字 if
(digit_seen[digit]) //先檢查對應的陣列成員是否為true ,如果有立即跳出迴圈,也代表有重複數字 break; digit_seen[digit] = true; //把得到的最低位數字作為數字下標兵賦值為true n /= 10; //去掉最低位繼續重新開始迴圈 } if(n>0) printf("Repeated digit!\n"); else printf("No Repeated digit!\n"); system("pause"); //加入該函式後可以使得產生的exe單獨執行,不會發生閃退。也可以加入其它函式使得main函式無法返回即可。如while(1)、getchar() 等
return 0; }