Shell 将尾随零添加到整数

Shell 将尾随零添加到整数,shell,append,Shell,Append,我需要将n尾随的零添加到整数中 例如: n=4 y=1 output 10000 我使用了下面的代码,但我需要给出一个整数值来代替n,并且应该将其转换为零的数量。有什么想法吗 n=00 y=1 printf "%d$n\n" $y 我不确定你在用什么语言(我添加了C++标签只是为了让你去某个地方,得到一些视图)。但是您最好创建一个字符串(为n变量的每次迭代在字符串末尾添加一个0)。然后你可以把这个字符串解析回一个数字 否则,您可以尝试为每次n迭代将数字乘以10 类似于.. number

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

例如:

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

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

我不确定你在用什么语言(我添加了C++标签只是为了让你去某个地方,得到一些视图)。但是您最好创建一个字符串(为
n
变量的每次迭代在字符串末尾添加一个0)。然后你可以把这个字符串解析回一个数字

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

类似于..

number = y

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

对于(i=0;i您需要检查n是否大于零:

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

根据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;
}
#包括
int main()
{
int n,y;
n=4;
y=1;
如果(n>0)
printf(“%d%0*d\n”,y,n,0);
其他的
printf(“%d\n”,y);
返回0;
}

哪种语言?它似乎是一个shell脚本。它是shell脚本。我建议的代码对您有用吗?不客气。仅供参考%0*d获取两个参数。0*将前导零添加到第二个参数,以便总位数等于第一个参数。这里,第一个参数为n,第二个参数为0。