在C#程序开发中,打印变量是查看程序运行状态、输出计算结果的基础操作,无论是调试阶段排查问题,还是最终程序输出结果,都需要用到变量打印的相关功能。不同的场景对打印单个变量和多个变量的需求不同,掌握对应的实现方法能大幅提升开发效率。

C#中打印单个变量的方法
打印单个变量最直接的方式是使用Console.WriteLine方法,直接将变量作为参数传入即可,该方法会自动将变量的内容转换为字符串并输出,同时换行。
首先定义不同类型的单个变量,然后直接打印:
using System;
class Program
{
static void Main()
{
// 定义不同类型的单个变量
int num = 100;
string name = "张三";
double score = 95.5;
// 直接打印单个变量
Console.WriteLine(num);
Console.WriteLine(name);
Console.WriteLine(score);
}
}
如果需要自定义输出格式,比如添加说明文字,也可以将说明和变量组合成字符串传入,例如Console.WriteLine("当前数值:" + num),但更推荐后续介绍的字符串插值方式。
C#中打印多个变量的常用方式
1. 多个参数传入Console.WriteLine
Console.WriteLine方法支持传入多个参数,第一个参数作为格式字符串,后面的参数对应格式字符串中的占位符,占位符用{索引}表示,索引从0开始。
using System;
class Program
{
static void Main()
{
string name = "李四";
int age = 20;
string major = "计算机科学";
// 使用占位符打印多个变量
Console.WriteLine("姓名:{0},年龄:{1},专业:{2}", name, age, major);
}
}
2. 字符串拼接
通过加号将多个变量和说明文字拼接成一个完整的字符串,再传入Console.WriteLine方法,这种方式逻辑简单,适合少量变量的场景。
using System;
class Program
{
static void Main()
{
int mathScore = 90;
int englishScore = 88;
int total = mathScore + englishScore;
// 字符串拼接打印多个变量
Console.WriteLine("数学分数:" + mathScore + ",英语分数:" + englishScore + ",总分:" + total);
}
}
3. 字符串插值
C# 6.0及以上版本支持字符串插值,在字符串前加$符号,直接在字符串中用{变量名}的方式嵌入变量,代码可读性更高,是目前推荐的使用方式。
using System;
class Program
{
static void Main()
{
string product = "笔记本电脑";
double price = 4999.00;
int stock = 50;
// 字符串插值打印多个变量
Console.WriteLine($"商品名称:{product},单价:{price},库存:{stock}");
}
}
4. 格式化字符串
使用String.Format方法生成格式化后的字符串,再传入打印方法,这种方式适合需要复用格式化字符串的场景。
using System;
class Program
{
static void Main()
{
DateTime now = DateTime.Now;
int hour = now.Hour;
int minute = now.Minute;
// 格式化字符串打印多个变量
string log = String.Format("当前时间:{0:HH:mm},小时:{1},分钟:{2}", now, hour, minute);
Console.WriteLine(log);
}
}
不同方式的对比与注意事项
下面通过表格对比几种打印多个变量的方式的特点:
| 方式 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| 多个参数传入 | 原生支持,无需额外拼接 | 占位符索引容易写错,可读性一般 | 简单多变量输出 |
| 字符串拼接 | 逻辑直观,新手容易理解 | 大量变量时拼接繁琐,易出错 | 少量变量快速输出 |
| 字符串插值 | 可读性强,变量嵌入直观 | 需要C# 6.0及以上版本 | 大多数多变量输出场景 |
| 格式化字符串 | 支持复杂格式控制,可复用 | 代码相对繁琐 | 需要复用格式或复杂格式控制 |
需要注意,打印变量时要确保变量的类型支持转换为字符串,如果是自定义类型的变量,建议重写ToString方法,避免输出无意义的内存地址信息。另外,字符串插值中可以直接对变量做简单运算,比如Console.WriteLine($"总分:{mathScore + englishScore}"),无需提前定义总和变量。
C#打印变量Console_WriteLine字符串插值格式化输出修改时间:2026-07-08 11:51:30