随便玩玩之C#-3 输出

随便玩玩之C#-3 输出

 

所谓的输出就是程序向屏幕上给出结果,这一节主要是强化一下WriteLine()方法。

输出?在哪儿输出?答:在屏幕上输出。废话,这大家都知道啊。

程序 有很多中,控制台,带界面的,网页,手机APP等等。不管是什么程序,执行相应的输出语句就可以实现。

1.修改输出内容

注意第一个程序代码中,执行输出的语句是Console.WriteLine("Hello World!"),表示在控制台输出字符串HELLO WORLD!.

如果我想显示别的内容呢,修改双引号里的内容即可,中英文都可以。

using System;

namespace ConsoleApp13
{
    class Program
    {
        static void Main(string[] args)
        {
            //修改输出字符
            Console.WriteLine("*************************");
            Console.WriteLine("Hello World!");
            Console.WriteLine("你好世界");
            Console.WriteLine("白日依山尽,");
            Console.WriteLine("黄河入海流");
            Console.WriteLine("*************************");
        }
    }
}

 运行结果:

 

2.换行输出。

输出自己想要的内容如此简单。但你也注意到了白日依山尽黄河入海流写在两行上了,而且每一行语句都是只输出在一行上。那么想让白日依山尽黄河入海流输出在一行上有什么办法?

可以尝试一下Console.Write()方法,这个方法与Console.WriteLine()的区别就是一个输出完毕不换行,一个换行。

using System;
namespace ConsoleApp13
{
    class Program
    {
        static void Main(string[] args)
        {
            //修改输出字符
            Console.WriteLine("*************************");
            Console.Write("银角大王对悟空说:");
            Console.Write("“我也不与你交兵,我且叫你一声,你敢应我么?”");
            Console.Write("\n");
            Console.Write("行者道:\n");
            Console.Write("“可怕你叫上千声,我就答应你万声!”\n");
            Console.WriteLine("*************************");
        }
    }
}

  执行结果:

 很明显,一个不会自动换行,一个会自动换行。

虽然Console.Write()不会自动换行,可以在语句中输出一个换行字符用来换行,\n就是换行字符的转义字符。\n可以放在双引号内的任何地方,只要遇到\n转义字符,输出结果就会从下一行开始继续。

C#代码中凡是使用双引号引住的都是字符串,都可以在程序中显示出来,上面的对话中虽然有双引号,不过那是中文全角的标点符号,不属于代码的部分。

那如果想输出英文半角引号呢,直接在双引号直接加入引号会提示错误。可以使用转移字符\"来输出英文半角引号。

using System;
namespace Quotation
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("*************************");
            Console.WriteLine("使用转移字符输出英文半角引号");
            Console.WriteLine("\"Make American Great Again!\"");
            Console.Write("Trump say that:\n");
            Console.Write("\"MAGA! MAGA! MAGA!\"\n");
            Console.WriteLine("*************************");

        }
    }
}

 结果:

 

3.输出数字

 数字加双引号是字符串,当作字符串输出。数字不加引号是数值,可直接输出。输出数字时,可以进行数学运算。

using System;
namespace Number
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("*************************");
            Console.WriteLine("输出数字");
            Console.WriteLine("123456");        //这些数字是字符串
            Console.WriteLine(123456);          //这些数字是数值

            //  “\t”为制表符转移字符,这里只是用来对齐
            Console.Write("执行数学运算,加法,结果为3。 \t\t\t\t 1+2=");
            Console.Write(1 + 2);               //运算表达式
            Console.Write("\n");                //换行

            Console.Write("执行数学运算,乘法,结果:6。 \t\t\t\t 2*3=");
            Console.Write(2*3);                 //运算表达式
            Console.Write("\n");

            Console.Write("执行数学运算,减法,结果:5。 \t\t\t\t 6-1=");
            Console.Write(6-1);                 //运算表达式
            Console.Write("\n");

            Console.Write("执行数学运算,除法(求两个数相除的商),结果:5。 \t 17/3=");
            Console.Write(17/3);                //运算表达式
            Console.Write("\n");

            Console.Write("执行数学运算,取模(求两个数相除的余数),结果:2。 \t 17%3=");
            Console.Write(17%3);                //运算表达式
            Console.Write("\n");

            Console.WriteLine("*************************");
        }
    }
}

 结果:

4.占位符输出

 所谓的占位符输出,就是在一串字符串中留个位置,可以让程序填入需要的值。

使用占位符就需要在Console.WriteLine()方法的括号中填入多个参数,第一个参数是字符串,其中包含占位符,紧接一个逗号,作为占位符的值。

如果有多个引用的值,就用逗号分开。同一个值可以重复引用。

引用的值之间不分顺序,只要在字符串中确定引用的值的索引序号即可。索引用{数字}表示,数字从0开始计数,引用第几个值就填入第几个值的索引值。

引用的值可以是字符串,可以是数字,可以是运算表达式,可以是方法(函数),总之只要是个结果就可以。

using System;
namespace Placeholder
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("*************************");
            Console.WriteLine("占位符输出");

            Console.WriteLine("这位同学叫{0},成绩是{1}分。","小明",90);
            Console.WriteLine("特朗普大声说到{1},后来就失去理智地像鸭子一样喊这{0},{0},{0}", 
                              "MAGA!", "Make America Great Again");

            Console.WriteLine("--------------------------");
            Console.WriteLine("2+3={0}", 2 + 3);
            Console.WriteLine("2*3={0}", 2*3);
            Console.WriteLine("2-8={0}", 2  -8);
            Console.WriteLine("17/3={0}", 17/3);
            Console.WriteLine("17%3={0}", 17%3);

            Console.WriteLine("--------------------------");
            Console.WriteLine("今天是{0}", DateTime.Now.ToString());

            Console.WriteLine("*************************");
        }
    }
}

 结果:

 你是否已经发现第12行和第13行语句太长进行了换行。第一个逗号前面的字符串还是太长。想把它写在两行上,有什么办法?

字符串可以分开写,甚至一个字一行,只需要使用字符串连接符+(加号)连接起来就行。加号在数字中间做运算符号,在字符串中间作连接符,将两个字符串合并。

using System;
namespace Concatenate
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("*************************");
            Console.WriteLine("字符串连接");

            Console.WriteLine("特朗普大声说到{1},"   +    // +加号,字符串连接
                              "后来就失去理智地像鸭子" +   // +加号,字符串连接
                              "一样喊着{0},{0},{0}",
                              "MAGA!", 
                              "Make America Great Again");

            Console.WriteLine("*************************");
        }
    }
}

 结果:

 

5.WPF中的输出控件LABEL

 新建一个WPF项目,解决方案命名为WPFLabel。将工具箱中的Label控件拖放到WPF设计器的空白区域。选中WPF设计器中Label控件,将其名称修改为MagaLabel,修改其属性Content值为MAGA。按F5或者CTRL+F5运行。

结果如下:

 Label标签为文本标签,用于显示字符串。控制显示内容的属性是Content。

 还有其他属性值,FontSize可设置字体大小,FontStyle可设置字体风格(斜体)还有其他属性,可在MSDN文档中查看具体属性名称。

在WPF控件属性中,各个属性按组进行了分类,文字颜色在画笔组里,文字样式在文本组里,显示的文本内容在公共组里设置。

 也可以在代码中设置属性。

控制台中的字体能不能设置字体风格和颜色?可以的。现在先不考虑那些。

 

MSDN文档

Console.WriteLine 方法

https://docs.microsoft.com/zh-cn/dotnet/api/system.console.writeline?view=net-6.0

 Label控件的详细信息参见MSDN文档。

 https://docs.microsoft.com/zh-cn/dotnet/api/system.windows.controls.label?view=net-6.0

 

本节就这些吧,多了脑袋要炸。

 

 

--EOF--

posted @ 2021-08-09 21:46  冲浪的奶糖  阅读(658)  评论(0编辑  收藏  举报