统计数字问题-算法实现(暴力统计法)
2010-09-18 16:01
295 查看
这是一个暴力统计法对数字问题的算法实现。
在编辑代码的过程中遇到了if语句在进行每个数字的分拆时遇到了1的个数缺少的问题,其最高为的1的个数缺少统计。
经过查明是因为if的使用只是基于判断使用,而我的代码中要使用到的是循环计数。因而要使用while来实现循环。
下面就是算法的实现过程:
// 暴力统计法.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include<stdio.h>
int sum[10]={0};
void count(int);
int main(int argc, char* argv[])
{
int n;
printf("请输入一个页数:");
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
count(i);
}
for(int j=0;j<10;j++)
{
printf("%d的个数为%d/n",j,sum[j]);
}
return 0;
}
void count(int n)
{
while(n>0) //这里使用if(n>0)就是错了。结果会出现1的位数少最高阶层的个数个。
{
sum[n%10]+=1;
n=n/10;
}
}
/*
while和if最大的不同点是:
IF语句运行完毕后,接着运行下面的语句。
而While中的执行语句运行完毕后,还要进行继续判断条件是否符合循环条件,
根据判断的条件,返回执行语句或继续运行下面的程序。
while(表达式) 语句组; 计算表达式,若为真,执行语句,并重复该过程,直到为假时,执行下一条语句。
例如:while(k>0)i++;表示只要k>0,就执行i++;直到等到k<=0时,不执行i++;程序执行下面的语句。
if属于判断语句,不是循环语句。而while是循环语句。
*/
在编辑代码的过程中遇到了if语句在进行每个数字的分拆时遇到了1的个数缺少的问题,其最高为的1的个数缺少统计。
经过查明是因为if的使用只是基于判断使用,而我的代码中要使用到的是循环计数。因而要使用while来实现循环。
下面就是算法的实现过程:
// 暴力统计法.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include<stdio.h>
int sum[10]={0};
void count(int);
int main(int argc, char* argv[])
{
int n;
printf("请输入一个页数:");
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
count(i);
}
for(int j=0;j<10;j++)
{
printf("%d的个数为%d/n",j,sum[j]);
}
return 0;
}
void count(int n)
{
while(n>0) //这里使用if(n>0)就是错了。结果会出现1的位数少最高阶层的个数个。
{
sum[n%10]+=1;
n=n/10;
}
}
/*
while和if最大的不同点是:
IF语句运行完毕后,接着运行下面的语句。
而While中的执行语句运行完毕后,还要进行继续判断条件是否符合循环条件,
根据判断的条件,返回执行语句或继续运行下面的程序。
while(表达式) 语句组; 计算表达式,若为真,执行语句,并重复该过程,直到为假时,执行下一条语句。
例如:while(k>0)i++;表示只要k>0,就执行i++;直到等到k<=0时,不执行i++;程序执行下面的语句。
if属于判断语句,不是循环语句。而while是循环语句。
*/
相关文章推荐
- 统计数字问题 算法实现 (补0递归法)
- 统计数字问题(Java语言实现)
- 算法基础之python实现动态规划中数字三角形和最长上升子序列问题
- 算法1 —统计数字问题
- 关于统计数字问题的算法
- 算法分析与设计之统计数字问题
- 【AS3实现经典算法统计字符串中数字、英文字母、空格和其它字符的个数】
- 统计数字问题算法1
- 算法设计:统计数字问题
- 统计数字问题算法
- 统计数字问题[算法设计与分析]
- 每日学习一算法【1】统计数字问题
- 算法-------统计数字问题
- AS3实现经典算法(四) 统计字符串中数字、英文字母、空格和其它字符的个数
- 算法设计之补零递归法(统计数字问题)
- 算法1-1:统计数字问题
- java代码实现贪心算法删除数字问题
- 算法作业-统计数字问题&字典序问题&最多约数问题
- Perl实现高水线算法(解决多值比较问题方法)
- 1201-统计数字问题