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

C#如何在打印借阅记录时移除逾期天数与罚金列的0值

实现方案

核心修改思路

  • 去掉原来将负逾期天数强制设为0的逻辑,改为根据逾期天数是否大于0决定显示内容
  • 逾期天数和罚金字段都改为字符串类型,未逾期时赋值为空字符串,逾期时才赋值对应的数值文本
  • 移除输出格式串中固定的$前缀,改为在罚金非空时自行拼接$符号,避免无罚金时显示多余的$符号

修改后的完整代码

using System;
using System.IO;

namespace S10221788_Q2
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] csvLines = File.ReadAllLines("loaninfo.csv");

            string[] heading = csvLines[0].Split(',');
            Console.WriteLine("{0,-15} {1,-15} {2,-15} {3,-15} {4,-15} {5,-15} {6,-15}", heading[0], heading[1], 
                               heading[2], heading[3], "Days Loan", "Days Overdue", "Fine");

            for (int i=1; i<csvLines.Length; i++)
            {
                string[] id = csvLines[i].Split(',');
                DateTime borrowdate = Convert.ToDateTime(id[2]);
                DateTime returndate = Convert.ToDateTime(id[3]);
                int loan = returndate.Subtract(borrowdate).Days;
                int overdue = loan - 14;
                // 分别处理逾期和未逾期的显示内容
                string showOverdue = string.Empty;
                string showFine = string.Empty;
                if (overdue > 0)
                {
                    showOverdue = overdue.ToString();
                    showFine = $"${(overdue * 0.5).ToString("F1")}";
                }
                Console.WriteLine("{0,-15} {1,-15} {2,-15} {3,-15} {4,-15} {5,-15} {6,-15}",
                                   id[0], id[1], borrowdate.ToString("dd/MM/yyyy"), returndate.ToString("dd/MM/yyyy"), loan, showOverdue, showFine);
            }
        }
    }
}

修改后输出效果

Book ID         Borrower ID     Date Borrowed   Date Returned   Days Loan       Days Overdue    Fine
0123            S10011122A      02/02/2020      06/02/2020      4                               
3322            S10011126B      12/02/2020      13/02/2020      1                               
1234            S10097878C      11/02/2020      01/03/2020      19              5               $2.5
8123            S10011122A      02/02/2020      06/03/2020      33              19              $9.5
3992            S10011126B      06/02/2020      09/02/2020      3                               
1434            S10097878C      11/02/2020      01/03/2020      19              5               $2.5

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 08:57:02