C++打印位数为n的所有数
来源:互联网 发布:淘宝模特兼职价格 编辑:程序博客网 时间:2024/06/07 16:27
第一种方法:数组和递归实现#include <iostream>using namespace std;void General(int b[], int n,int k){ if (n <= 0)//k是打印位数,n是递归剩余位数。 { if (k != 1) { while (b[k - 1] == 0)//去掉最高位的0 { k--; } if (k == 1)return; } for (int j = k-1; j >=0; j--) { cout << b[j] << " "; if (j == 0)cout << endl; } return; } for (int i =0; i < 10; i++)//我感觉我还不是很得心应手。 { b[n-1] = i; General(b, n - 1,k);//一位一位的递归赋值,赋值范围是0-9 }}void Grial(int n){ if (n <= 0)return; int *b = new int[n];//在vs2013中不能使用b[n],因为它会认为n是一个未初始化的值。 memset(b,0,n); for (int i = 1; i <= n; i++) { int k = i; General(b,i,k); }}int main(){ Grial(3); return 0;}
第二种方法,字符串实现:
#include <iostream>using namespace std;void ADD(char *str,int n,int &x){ int flags = 1; char *p = str + n - 1; while (flags != 0) { flags = 0; if ((*(p) + flags - '0') == 9) { flags = 1; *(p) = '0'; } else { *(p) = *(p)-'0' + '1'; } p--; if (*str == '9' && flags == 1 && *p=='9')//如果最高位已经为9了,且次高位也为9,flags=1 { //那么判断已经结束,将标志位设置为1,返回终止。 x = 1; return; } }}void Printf(char *str)//打印,除去首部的0{ char *p = str; while (*p == '0') { p++; } cout << p << endl;}void Grial(int n){ if (n <= 0)return; char *str = new char[n]; memset(str,'0',n); *(str + n) = '\0'; int flags = 0;//作为结束标志。 while (1) { Printf(str); ADD(str,n,flags);//加1. if (flags == 1) break; }}int main(){ Grial(2); return 0;}
1 0
- C++打印位数为n的所有数
- 求1-n位数的所有数
- JavaScript中打印3位数中所有的水仙花数
- 打印从1到n位数的最大数
- java所有N位数之内的自幂数(3位数的自幂数也叫水仙花数)
- 写函数实现打印出1到最大的n位数,形参为n位数
- 【C语言】打印1到最大的n位数
- 【C++】打印1到最大的n位数
- 打印n长度为n的所有数字
- c程序:打印出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身
- 【C语言】打印1到n位数。
- 每日一题:给定n, 求出小于n的所有数中1的位数
- [C]打印所有不超过256且其平方为回文的数字(及其平方数)
- 求N位数的所有自然回归数(水仙花数)
- 给定一个整数N 按照顺序给出所有位数为N的整数
- 打印和为N的所有连续数列组合
- 水仙花数:n位数的水仙花数
- 打印1到最大的n位数
- C语言文件处理-对图片取模数据的转换
- 【POJ 2049】Finding Nemo
- 关于cocos2d-x 触屏事件不能接收的问题
- log4net - Write log to WinForm TextBox
- Machine Learning Basis
- C++打印位数为n的所有数
- ORACLE EBS架构与管理基础(12.1.3)学习总结
- libevent源码之TAILQ详解
- C++ 静态成员函数调用非静态成员函数方法
- 列表(1)
- Fabric不能启动后台进程问题
- [LeetCode] Invert Binary Tree
- Android 之 网络访问服务器,解析JSON数据(返回无乱码)
- HTTP协议学习笔记