如何创建一个如下所示的ID号:00001 ... 00002 ....?

时间:2011-06-03 11:29:30

标签: c for-loop

我需要为几个结构创建几个id。 现在我希望每个id都从00001到99999开始

例如:

  • 第一个结构的id是00001
  • 第二个结构的id是00002
  • ......依旧......

现在我需要scanf,然后printf,所以黑色窗口中显示的ID将如下所示:The id of the first struct is: 00001

我该怎么做?

我是否需要定期使用intdouble

我如何使用循环for (i=0 ; i<99999 ;i++) 虽然我是最后的数字?

非常感谢你!

3 个答案:

答案 0 :(得分:2)

对于数值变量,没有“前导零”的概念。因此,如果您想在代码中使用“0001”,则必须将其转换为字符串,并根据需要添加前导0。

答案 1 :(得分:1)

您可以将ID存储为普通int

当您需要打印时,只需对printf使用适当的format string,就像这样:

printf("id = %05d\n", i);

有一个工作示例here

在格式字符串中,%05d表示:

  • %表示它是格式参数
  • 0表示您希望数字为0填充
  • 5表示您希望它宽5位数
  • d表示它是您要打印的整数

答案 2 :(得分:0)

可以为printf格式化字符串提供格式化选项:

 printf("The id of the first struct is: %05d",id);

here is a nice overview格式化选项