将尾随零添加到整数

时间:2017-10-03 00:27:30

标签: shell append

我需要将n尾随零添加到整数。

例如:

n=4
y=1
output 10000

我使用了下面的代码,但是我需要给出一个整数值来代替n,并且应该将其转换为零的数量。有什么想法吗?

n=00 
y=1 
printf  "%d$n\n" $y

3 个答案:

答案 0 :(得分:0)

我不确定你使用的语言是什么(我添加了C ++标签只是为了让你去某个地方并获得一些观点)。但是你可能最好创建一个字符串(在n变量的每次迭代中为它的末尾添加0)。然后你可以将该字符串解析回一个数字?

否则,您可以尝试将每个n次迭代的数字乘以10。

类似......

number = y

for (i = 0; i <= n; i++) {
    number *= 10;
}

答案 1 :(得分:0)

您需要检查n是否大于零:

n=4
y=15
if [ $n -gt 0 ]; then
  printf  "$y%0*d\n" $n 0
else
  printf  "$y\n"
fi

答案 2 :(得分:0)

根据hutheano的回答,这里是C中的等效代码:

#include <stdio.h>

int main()
{
  int n,y;
  n=4;
  y=1;

  if (n>0)
    printf("%d%0*d\n", y, n, 0);
  else
    printf("%d\n", y);

  return 0;
}