weixin_46523951 2021-04-29 22:00 采纳率: 75%
浏览 75
已采纳

c语言输出数组时如何固定长度

例如现在有个double数组a[4]={12.1,7.214,888.88,0.24154}

如果只是用:

for(i=0;i<4;i++)

printf("%3.5lf-",a[i]);

那么输出的结果为"12.10000-7.21400-888.88000-0.24154"

不难看出第一个长度为8,第二个长度为7,第三个9,第四个7

但我想它们输出时长度都为9,也就我希望是这样的结果“ 12.10000-  7.21400-888.88000-  0.24154”

请问可以做到吗,该怎么写输出语句

  • 写回答

4条回答 默认 最新

  • Eleven 2021-04-30 11:13
    关注

    可以先换成字符串,然后再格式化输出
     

    double a[4] = { 12.1, 7.214, 888.88, 0.24154 };
    
    	for (int i = 0; i < 4; i++)
    	{
    		char data[100] = { 0 };
    		sprintf_s(data, _countof(data), "%3.5f", a[i]);
    		printf("%8s-", data);
    	}
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP