You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让数组无值位置打印空白而非0?数组拼接列印优化问询

解决数组无值位置打印空白的问题

你可以通过条件判断区分数组的有效索引范围,超出范围时打印对应宽度的空白而非默认0值,同时保证列对齐。修改后的代码如下:

append(n1, n2, &x1, &x2, &x3);

printf("x1      x2      result\n");
for(i = 0; i < (n1 + n2); i++){
    // 打印x1列:i小于n1时输出数值,否则输出空白
    if(i < n1){
        printf("%.1f      ", x1[i]);
    } else {
        printf("         "); // 和"%.1f      "宽度一致,保证列对齐
    }
    // 打印x2列:i小于n2时输出数值,否则输出空白
    if(i < n2){
        printf("%.1f      ", x2[i]);
    } else {
        printf("         ");
    }
    // 打印result列(x3为拼接后数组,所有索引均有效)
    printf("%.1f\n", x3[i]);
}

说明:

  • 针对x1、x2列:当循环索引i小于数组自身长度时,正常打印带一位小数的数值;超出范围时,输出和%.1f 宽度匹配的空白(共9个字符位),确保列对齐效果不变。
  • x3是拼接后的完整数组,长度为n1+n2,所有索引位置都有有效元素,直接正常打印即可。

内容的提问来源于stack exchange,提问作者Annsh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 02:16:16