题目:求0—7 所能组成的奇数个数. 算法思想:这个问题其实是一个排列组合的问题,设这个数为sun=a1a2a3a4a5a6a7a8,a1-a8表示这个数的某位的数值,当一个数的最后一位为奇数时,那么这个数一定为奇数,不管前面几位是什么数字.如果最后一位数为偶数,则这个数一定为偶数.a1-a8可以取0-7这个八个数字,首位数字不为0.从该数为一位数到该数为8位数开始统计奇数的个数:1.当只有一位数时也就是该数的最后一位,奇数个数为42.当该数为两位数时,奇数个数为4*7=283.当该数为三位数时…
package erase; public class 求0到7所能组成的奇数个数 { public static void main(String[] args) { /* * 求0—7所能组成的奇数个数 * 分析:在0-7中组成的数0不能开头所以数为一位数时奇数有1,3,5,7 * 二位数时奇数有4*7 * 三位数一直到8位数是前面奇数个数*8 */ //0到7有8个数,但是最高位是7位,0不能放在开头 int count = 0,sum = 0; for(int i=1;i<9;i++)…
1 /*43 [程序 43 求奇数个数] 2 题目:求 0-7 所能组成的奇数个数. 3 */ 4 5 /*分析 6 * 1.0不能作最高位且最低位只能是1,3,5,7; 7 * 2.没有限定是几位数,可以是一位,两位...七位 8 * 3.数字应该不能重复出现.否者有无数个 9 * */ 10 11 package homework; 12 13 public class _43 { 14 15 public static void main(String[] args) { 16 // 声明…
[程序1] 题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 1.程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. 2.程序源代码: main() { int i,j,k; printf("\n"); for(i=1;i<5;i++) /*以下为三重循环*/ for(j=1;j<5;j++) for (k=1;k<5;k++) { if (i!=k&&i!=j&…
下边内容内容是关于C语言经典算法 - 多维矩阵转一维矩阵的内容,应该能对码农也有好处. #include <stdio.h>#include <stdlib.h>int main(void){ int arr1[3][4] = {{1, 2, 3, 4},{5, 6, 7, 8},{9, 10, 11, 12}};int arr2[12] = {0}; int row, column, i; printf("原二维资料:n"); for (row = 0; ro…
求0号结点所在集合的元素个数 Sample Input 100 42 1 25 10 13 11 12 142 0 12 99 2200 21 55 1 2 3 4 51 00 0Sample Output 411 # include <iostream> # include <cstdio> # include <cstring> # include <algorithm> # include <cmath> # include <que…
首先.我们谈一下素数的定义.什么是素数?除了1和它本身外,不能被其它自然数整除(除0以外)的数 称之为素数(质数):否则称为合数. 依据素数的定义,在解决问题上,一開始我想到的方法是从3到N之间每一个奇数进行遍历,然后再依照素数的定义去逐个除以3到 根号N之间的奇数,就能够计算素数的个数了. 于是便编写了以下的代码: (代码是用C++编写的) #include<iostream> #include <time.h> using namespace std; const int N…
C语言中有有许多经典的算法,这些算法都是许多人的智慧结晶,也是编程中常用的算法,这里面包含了众多算法思想,掌握这些算法,对于学习更高级的.更难的算法都会有很大的帮助,会为自己的算法学习打下坚实的基础. 接下来我们先来看10道: (1)输出9*9乘法口诀. //9*9乘法口诀表 void Table99() { int i,j; for(i = 1; i <= 9; i++) //外层循环控制行 { for(j = 1; j <= i; j++) //内层循环控制列 { printf("…
11.判断某一年是否是闰年. //判断某一年份是否是闰年 int IsLeapYear(int year) { return (year % 400 == 0 || (year % 4 == 0) && (year % 100 != 0)); } 运行结果: 12.获得某年.某月的最大天数. //获得某年.某月的最大天数 int GetMaxDay(int year,int month) { switch(month) { case 1: case 3: case 5: case 7: c…
1.河内之塔 说明河内之塔(Towers of Hanoi)是法国人M.Claus(Lucas)于1883年从泰国带至法国的,河内为越战时北越的首都,即现在的胡志明市:1883年法国数学家 Edouard Lucas曾提及这个故事,据说创世纪时Benares有一座波罗教塔,是由三支钻石棒(Pag)所支撑,开始时神在第一根棒上放置64个由上至下依由小至大排列的金盘(Disc),并命令僧侣将所有的金盘从第一根石棒移至第三根石棒,且搬运过程中遵守大盘子在小盘子之下的原则,若每日仅搬一个盘子,则当盘子全…