输入n,打印1到n之间的每个数,考虑整数溢出
来源:互联网 发布:淘宝海外购物 编辑:程序博客网 时间:2024/05/21 08:41
输入n,打印1到n之间的每个数,考虑整数溢出
代码 :c c++
bool Increment(char *data)
{
int temp = 0;
int len = strlen(data);
int i = len - 1;
int f = 0;
bool b = false;
while(i >= 0)
{
temp = data[i] - '0' + f;
if (i == len - 1)
{
temp++;
}
if (temp >= 10)
{
if (0 == i)
{
b = true;
}
else
{
data[i] = temp - 10 + '0';
f = 1;
}
}
else
{
data[i] = temp + '0';
break;
}
i--;
}
return b;
}
void PrintData(char *data)
{
int f = 0;
int i = 0;
int len = strlen(data);
for (i = 0; i < len; i++)
{
if (data[i] != '0' && !f)
{
f = 1;
}
if (f)
{
cout << data[i];
}
}
cout << " ";
}
void dataincrement(int n)
{
char *data = new char[n+1];
memset(data, '0', n);
data[n] = '\0';
while(!Increment(data))
{
PrintData(data);
}
cout << endl;
}
void main()
{
dataincrement(3);
}
0 0
- 输入n,打印1到n之间的每个数,考虑整数溢出
- 输入一个奇数n,打印出一个n*n的矩阵,每个数字是从1到n*n的整数,要使每一行,每一列的数字之和都相等
- 打印从1到n的整数
- c编程:用户输入一个数值n,打印出出1到n之间的所有质数
- 输入数字n,顺序打印出1到n位的十进制最大数
- 输入数字n,按顺序打印出从1到最大的n位十进制数
- 输入数字n,按顺序打印出从1到最大的n位十进制数
- 输入两个整数值n和m,求出整数1到n之间的和为m的所有组合
- 输入两个整数值n和m,求出整数1到n之间的和为m的所有组合
- 输入两个整数值n和m,求出整数1到n之间的和为m的所有组合
- 输入一个数(N),列出(1~N)之间的素数
- 输入数字n,打印1到最大的n位数
- 打印从1到n的数
- 打印从1到N的数
- 打印1到N的最大数
- 输入整数1到N,输出能被3整除的数
- 打印1到最大的n位数 题目:输入数字n,按顺序打印出从1最大的n位十进制数。
- 输入两个数m,n,输出m个数,每个数都在[0,n)之间。
- cocos2d-x应用窗口相关源码剖析5-其他细节
- iOS Code Signing: 解惑(译)
- 键盘KVC通知
- 数据结构—单链表
- C/C++中函数参数传递详解
- 输入n,打印1到n之间的每个数,考虑整数溢出
- Average Score39届亚洲赛牡丹江站A题
- 基本数据类型对象包装类 进制转换
- 宋德福宋德福
- HDU 4424 Conquer a New Region 最大生成树
- Angular.js笔记
- 安装 openSUSE 13.1 后必须做的10件事情
- Java 字符串总结
- struts2 上传图片到服务器