您的位置:首页 > 其它

输出固定长度字符串,多余位补0

2016-03-03 13:38 435 查看
题目描述:

输入m个字符和一个整数n,把字符串M化成以N为单位的段,不足的位数用0补齐。

示例:

输入:123456789

8

输出:12345678

90000000

输入:123

8

输出:12300000

代码:

#include <iostream>
#define MAX 1000
using namespace std;
int main()
{
char str[MAX];
cin.getline(str, MAX);
int n;
cin >> n;
int len = strlen(str);
int i,j,k;
int count = (len / n)*n;
for (i = 0; i<count; i++)
{
cout << str[i];
if ((i + 1) % n == 0)
cout << endl;
}
if (len%n != 0)
{
j = len%n;
k = len / n;
for (i = 0; i<n; i++)
{
if (i<j)
cout << str[i + k*n];
else
cout << '0';
}
}

cin.get();
cin.get();
return 0;
}
参考代码:
#include <iostream>
#include <string>
using namespace std;
int main()
{
string str;
getline(cin, str);
int n;
cin >> n;
int len = str.size();
int i;
for (i = 0; i<len; i++)
{
cout << str[i];
if ((i + 1) % n == 0)
cout << endl;
}
int yushu = len%n;
if (yushu)
{
for (i = yushu; i<n; i++)
{
cout << '0';
}
cout << endl;
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: