C语言经典例83-求0—7所能组成的奇数个数
生活随笔
收集整理的這篇文章主要介紹了
C语言经典例83-求0—7所能组成的奇数个数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目錄
- 1 題目
- 2 分析
- 3 實現
- 4 運行結果
1 題目
求 0—70—70—7 所能組成的奇數個數
2 分析
該問題是一個排列組合問題,假設這個數為 sumsumsum,sum=a1a2a3a4a5a6a7a8sum=a_1a_2a_3a_4a_5a_6a_7a_8sum=a1?a2?a3?a4?a5?a6?a7?a8?,表示這個數的某位的數值,當一個數的最后一位為奇數時,那么這個數一定為奇數,不管前面幾位是什么數字。如果最后一位數為偶數,則這個數一定為偶數。a1?a8a_1-a_8a1??a8? 可以取 0?70-70?7 這個八個數字,首位數字不為 000 。從該數為一位數到該數為8位數開始統計奇數的個數:
…
3 實現
#include <stdio.h>int main() {long sum = 4, s = 4;//sum的初始值為4表示,只有一位數字組成的奇數個數為4個int j;for (j = 2; j <= 8; j++) { printf("%d位數為奇數的個數%ld\n", j-1, s);if (j <= 2) {s *= 7;} else {s *= 8;}sum += s; }printf("%d位數為奇數的個數%ld\n", j-1, s);printf("奇數的總個數為:%ld\n", sum);return 0; }4 運行結果
1位數為奇數的個數4 2位數為奇數的個數28 3位數為奇數的個數224 4位數為奇數的個數1792 5位數為奇數的個數14336 6位數為奇數的個數114688 7位數為奇數的個數917504 8位數為奇數的個數7340032 奇數的總個數為:8388608總結
以上是生活随笔為你收集整理的C语言经典例83-求0—7所能组成的奇数个数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C语言经典例82-八进制转换为十进制
- 下一篇: C语言经典例84-一个偶数总能表示为两个