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=a1a2a3a4a5a6a7a8,表示这个数的某位的数值,当一个数的最后一位为奇数时,那么这个数一定为奇数,不管前面几位是什么数字。如果最后一位数为偶数,则这个数一定为偶数。a1−a8a_1-a_8a1−a8 可以取 0−70-70−7 这个八个数字,首位数字不为 000 。从该数为一位数到该数为8位数开始统计奇数的个数:
- 当只有一位数时也就是该数的最后一位,奇数个数为: 444
- 当该数为两位数时,奇数个数为: 4∗7=284*7=284∗7=28
- 当该数为三位数时,奇数个数为:4∗8∗7=2244*8*7=2244∗8∗7=224
… - 当该数为八位数时,奇数个数为:4∗8∗8∗8∗8∗8∗8∗74*8*8*8*8*8*8*74∗8∗8∗8∗8∗8∗8∗7 (依次为最后一位到第一位)
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所能组成的奇数个数相关推荐
- 求0到7组成奇数的个数c语言,c语言经典算法—求0—7 所能组成的奇数个数
题目:求0-7 所能组成的奇数个数. 算法思想: 这个问题其实是一个排列组合的问题,设这个数为sun=a1a2a3a4a5a6a7a8,a1-a8表示这个数的某位的数值, 当一个数的最后一位为奇数时, ...
- 求0—7所能组成的奇数个数。
错误思路: 在77777777范围内去计算奇数的个数,这个范围内包括8,9. 解法一:用8个for循环来拼数字,此种做法需要顾忌最高位不为零的情 解法二(推荐): 该题认为数字可以重复使用,这个问题其 ...
- C语言经典例98-将字符转为大写字母并写入文件
目录 1 题目 2 分析 3 实现 1 题目 从键盘输入一个字符串,将小写字母全部转换成大写字母,然后输出到一个磁盘文件"test"中保存. 输入的字符串以!结束. 2 分析 写入 ...
- C语言经典例19-完数
目录 1 题目 2 分析 3 实现 4 运行结果 1 题目 一个数如果恰好等于它的因子之和,这个数就称为"完数".例如6=1+2+3.编程找出1000以内的所有完数. 因子:假如整 ...
- C语言经典例26-利用递归方法求阶乘
目录 1 题目 2 分析 3 实现 4 运行结果 1 题目 利用递归方法求5!5!5!. 2 分析 我们知道0和1的阶乘都是1,用递归计算阶乘时,要递减的方式递归,到0或1的时候返回递归.该递归程序从 ...
- C语言经典例79-字符串排序
目录 1 题目 2 分析 3 实现 4 运行结果 1 题目 字符串排序,输出三个字符串(长度小于20),并将其按照ASCII码顺序排序. 2 分析 首先限制三个字符串的输入,本例利用fgets函数,该 ...
- c语言典例之求n个整数最大连续子序列和
C语言求最大连续子序列和 问题描述 输入:具有n个数的序列x 输出:输入序列x的任何连续子序列中的最大和 解题思路:列出所有子序列,并求出它们的和,找出其中的最大者 #include<stdio ...
- C语言经典例100-将学生成绩写入文件
目录 1 题目 2 分析 3 实现 1 题目 有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,把原有的数据和计算出的平均分数存放在磁盘文件&qu ...
- C语言经典例97-输入字符写入文件
目录 1 题目 2 分析 3 实现 1 题目 从键盘输入一些字符,逐个把它们送到磁盘上去,直到输入一个#为止. 2 分析 关于文件操作,请看我的这篇文章 C语言-文件操作总结 . 3 实现 #incl ...
最新文章
- 手把手教你EMD算法原理与Python实现(更新)
- mysql 4.0字符集,mysql4.0升级到mysql5(4.1),解决字符集问题
- 利用哈夫曼树编码与译码
- java 中文乱码过滤器_JAVA中文乱码过滤器(用java过滤器解决中文乱码)V0422 整理版...
- 如何查看android虚拟机的目录及文件
- 看MASTER围棋有感
- oracle processes 的大小,Oracle中sessions和processes的大小关系(10g和11g不同)
- 非常好用的模糊pid温度控制算法_高度集成高速多点温度PID控制方案
- TTL和CMOS解析
- SREng用法简要说明(如何获得日志/删启动项目/服务/驱动/BHO等)
- 究竟云计算就业前景好不好 零基础如何学云计算
- Python中随机漫步的实现
- 前端基础 HTML 第九章 使用框架结构 ----暑假学习第五天
- apmserv php7,apmserv
- TB6612使用说明,使用方法,引脚图,实物图。
- 计算机协会玩游戏策划案,计算机协会的社团策划书
- 计算机组成原理徐福培,徐福培计算机组成原理(第2章).ppt
- linux下c/c++读取txt文件,多行文件,且每行都用逗号隔开
- Debian各个版本下载地址
- html在背景图里加白框,毕生所用最好的四个图片类APP
热门文章
- [译]15个关于Chrome的开发必备小技巧
- leetcode 144. Binary Tree Preorder Traversal
- Intellij IDEA 创建Web项目并在Tomcat中部署运行
- Using mongoDB's Profiler analyze the performance of database operations
- 将用户输入内容中的尖括号、引号等进行转义
- 服务器控件GridView的排序问题
- 汇编程序开发环境搭配
- 陈鑫136201010502
- EL表达式中null和empty的区别
- 每日站立会议4-20(张硕)