C#教程第一课:简单的欢迎程序

C# 实现启动欢迎界面的简单方法 第一步: 主程序启动主窗体(这里表示为 form1) 如下:     static class Program     {         ///         /// 应用程序的主入口点。         ///         [STAThread]         static void Main()         {             Applicatio 阅读详情

在本文开始写作的时候,虽然商用C# 编译器尚未推出, 但你可以下载微软的.NET Frameworks SDK Beta 1.
本节课通过介绍几个简单的程序,使得你对C#有所入门。本节程要达到如下几个目的:
1.理解一个C#程序的基本结构。

2.初步了解"名称空间"的概念。

3.初步了解"类"的概念。

4.了解"Main"方法所做的工作。

5.学会如何读取命令行输入信息。

6.学会使用控制台输入/输出 (I/O)语句。

1.清单1-1. 一个简单的欢迎程序Welcome.cs

// Namespace Declaration
using System;
// Program start class
class WelcomeCSS {
// Main begins program execution.
public static void Main() {
// Write to console
Console.WriteLine("Welcome to the C# Station Tutorial!");
}
}

说明


1.清单1-1中的程序包括四个基本元素:名称空间的声明,类,"Main"方法和语句。

2.本例中对名称空间的声明,表明正在使用"System"这个名称空间。

名称空间内包含了一组可以被C#程序调用的代码。有了"using System;"这个声明,就表明程序可以引用该"System"名称空间内的代码,而无需在每个引用的前面加上"System"。关于这一点,我将在后面专门介绍名称空间的课程中详细介绍。

3.类"class WelcomeCSS"包含了程序所要用到的数据,和所要执行的方法的定义。

同诸如接口和结构这样的元素类似,类在程序中是用来描述对象的,这些元素都将会在后续课程中详细介绍。本例中的类不包含数据,只包含一个方法。该方法4.程序运行时,WelcomeCSS类中的该方法表明了该类所要完成的事情。

方法名"Main"作为保留字,作为程序的起点。"Main"前面是个名为"static"的修饰符。"static"修饰符表明该方法仅仅在该特定的类中工作,而不是在在该类的实例中工作。这是必需的,因为一旦程序启动后,并不存在对象的实例。类,对象和实例的具体用法将会在后面的课程中覆盖到。每个方法必须有个返回值类型。本例中,返回值类型是"void",它表明"Main"函数没有返回值。每个方法名的后面也都跟着个参数表,参数表包含有零个或者多个参数并用括号括起来。为了简单起见,没有在"Main"后面添加参数。后面的课程中,将介绍"Main"方法所允许采用的参数类型。

5."Main"方法通过"Console.WriteLine(...)" 语句表明其行为。

"Console" 是"System" 名称空间中的类。"WriteLine(...)"是"Console" 类中的方法。我们使用"."这个句点操作符来标记程序中的从属元素。注意到,我们也可以这样来书写:"System.Console.WriteLine(...)",这样的书写格式是很有趣的,它是根据"namespace.class.method" 的格式进行书写的。如果在程序的一开始,没有采用"using System"的声明,那么就必须严格遵守"System.Console.WriteLine(...)"这样的书写格式。该语句的执行结果是在控制台控制台上输出字符串"Welcome to the C# Station Tutorial!" 。

6.注释是由"//"标出的。

例子中的这些注释都是单行注释,表明从该注释符号的开始处到该行结束处,都是注释部分。如果你的注释要跨越若干行,即多行注释,可以以符号"/*"开始,以符号"*/"结束,其中所包含的全部是注释。你也可以在多行注释符号中包含单行注释。但是,不能在单行注释符号后面放上多行注释符号。程序编译时,将忽略掉注释部分。注释的目的是为了用简单的英语给程序所要完成的工作加上注解。

7.所有语句都以分号";"结束。

类和方法以"{"开始,以"}"结束。任何位于"{"和"}"之间的语句定义为块。块定义了程序元素的活动范围 (或者称为生命期和可见性),这些概念将在后面的课程中加以介绍。

8.可以编写出能够接受命令行输入信息的程序。

命令行输入信息的集合是在"Main"方法中进行处理的。清单1-2中的程序,可以从命令行中接受输入一个名字,之后在控制台上显示出来。

2.清单1-2. 读取命令行输入信息的程序NamedWelcome.cs

// Namespace Declaration
using System;
// Program start class
class NamedWelcome {
// Main begins program execution.
public static void Main(string[] args) {
// Write to console
Console.WriteLine("Hello, {0}!", args[0]);
Console.WriteLine("Welcome to the C# Station Tutorial!");
}
}

说明


1.记住,要把你的名字添加到命令行中。

例如,在命令行中打入"NamedWelcome Joe"。如果不这样做,程序就会崩溃,在后面的课程中,将介绍如何检测这种情况,以及如何避免这种情况的出现。

2.在清单1-2中,在"Main"方法的参数表中有个入口。

参数名是"args"。 在程序的后面部分就要引用该参数。"string[]"是参数"args"的类型。"string"类型用于存放字符。这些字符可以是一个单词,也可以是多个单词。方括号"[]"表示数组,"args"参数由命令行上的若干个单词构成。

3.在"Main"方法的语句中,多了一条"Console.WriteLine(...)"语句。

该语句中的参数表同以往的写法不同,其中有个格式字符串"{0}" 参数。 格式串中的第一个参数从数字0开始,第二个参数从数字1开始,依此类推。 "{0}" 参数意味着引号后面的参数值将会输出到该位置。现在让我们来看看引号后面的参数。

4."args[0]"参数,它指向"args"数组中的第一个字符串。

数组中的第一个元素是args[0], 第二个元素是args[1],依此类推。例如,如果我在命令行中写上"NamedWelcome Joe","args[0]"的值就为"Joe".

定义了该类的行为(或者称为该类所能做的事情)。

我们回到在格式字符串中嵌入的"{0}" 参数吧,因为"args[0]"是格式串后面的第一个参数, 一旦执行该命令时,"args[0]"的值"Joe"就会替换掉格式串中的"{0}"。一旦执行命令:"NamedWelcome Joe",输出结果就会为:

>Hello, Joe!
>Welcome to the C# Station Tutorial!

通过控制台也可以把输入信息提供给程序。清单1-3演示了交互式处理用户输入的信息的方法。

3.清单1-3. 交互式处理输入信息的程序 InteractiveWelcome.cs

// Namespace Declaration
using System;
// Program start class
class NamedWelcome {
// Main begins program execution.
public static void Main() {
// Write to console/get input
Console.Write("What is your name?: ");
Console.Write("Hello, {0}! ", Console.ReadLine());
Console.WriteLine("Welcome to the C# Station Tutorial!");
}
}

说明

这一次,"Main"方法没有用到任何参数,但现在程序中有了三条语句,前面两条语句不同于第三条语句,它们是:"Console.Write(...)"而不是 "Console.WriteLine(...)"。区别是:"Console.Write(...)"语句把信息输出到控制台,之后光标停留在同一行,而"Console.WriteLine(...)"把信息输出,之后换行。

第一条语句仅仅输出"What is your name?: "到控制台。

第二条语句要等到其参数被适当地处理之后,才会输出信息。 格式串后面的第一个参数是:"Console.ReadLine()"。这就使得程序要等待用户在控制台输入信息,输入信息以回车或者换行结束。该方法的返回值替换了格式串中的"{0}"参数,并输出到控制台上。

最后一个语句也用来输出信息到控制台,这一点我们在前面已经介绍过。一旦运行了程序"InteractiveWelcome",其输出结果为:

>What is your Name?
>Hello, ! Welcome to the C# Station Tutorial!

小结
到现在为止,你已经了解了C#程序的基本结构,名称空间和类。你还了解到"Main"方法是C# 程序的入口,并学会了如何捕捉命令行的输入信息,以及如何进行交互式的I/O操作。

 

winform偷懒型欢迎界面  [2011.5.10更新语:     写这篇文章,一来是自己开始确实只会这样的步骤实现欢迎界面  二来也想通过这篇文章抛砖引玉,引出优快云上其他朋友们好的解决方法,大家共同进步但是想对一些表态丢鸡蛋,又不评价学习心得的人说一句 "学习,我接受批评, 但是不觉得一味的批评,而不说明批评理由的,保留你们自己自以为很好的解题方案的做法,很幼稚,又很自私么? 还是本来就没好方案,就 阅读详情

相关推荐

欢迎您进入C#编程世界!

static int WindowCount=0; private void toolStripMenuItem_Click(object sender,EventArgs e) { MdiChildren ch=new MdiChildren(); ch.Text="Document"+ ++WindowCount; ch.Mdiparent=this; ch.show(); }

编写一个Book类,有name和pages两个属性。编写一个BookDemo类,实例化一个Book对象并显示。程序首先有欢迎界面,内容应包含程序作者(姓名、学号)。实例化对象时候,可根据用户输入内容进

package sushu1; public class book { String name; int page; public book() { } public book(String s1,int page1) { name=s1; page=page1; } public void show() { System.out.println("书名:"+name+" "+"...

老男孩的粉丝团 6112

ROS与UR10e机械臂实战:从零搭建到精准控制

本文详细介绍了如何从零开始搭建ROS与UR10e机械臂的开发环境,包括硬件准备、软件配置、网络设置以及MoveIt!运动控制实战。通过具体的代码示例和常见问题排查,帮助开发者快速掌握UR10e机械臂的精准控制技术,适用于工业自动化和实验室研究场景。

m3n5b7v8c9x的博客 772

c语言设计一个简单的学生登录系统

用c语言设计一个简单的学生登录系统

qq_54251063的博客 2566

通达信短周期指标盘中实时监控与预警选股实战

本文详细介绍了通达信短周期指标在盘中实时监控与预警选股中的实战应用。通过分时指标改造、多股同列监控技巧及预警策略优化,帮助短线交易者捕捉转瞬即逝的交易机会,提升选股效率与准确性。重点解析了如何避免假信号干扰及系统卡顿问题,并探讨了从预警到自动交易的进阶应用。

weixin_29230805的博客 907

运动目标成像必学:5分钟搞懂keystone变换原理与避坑指南

本文深入浅出地解析了雷达信号处理中的Keystone变换原理,它是解决运动目标距离徙动问题的关键技术。文章通过直观比喻和简化公式,阐述了该变换如何通过变量代换实现距离与慢时间的解耦合,将倾斜轨迹“掰直”,从而提升成像与检测性能。同时,文中重点指出了实际应用中关于大速度场景、插值误差、多目标处理及高阶运动补偿等关键避坑点,为工程实践提供了宝贵指南。

ios99的博客 403

8.函数的调用

程序中的语句可以采用分组的方式进行管理,每个     分组中包含一些语句.每个分组叫做一个函数. 一个c语言程序一定是由一个或者多个函数构成的 每个函数有自己的名字,不同函数的名称不同,可以     通过名称区分不同函数 不同函数之间可以存在调用关系 任何一次函数调用一定发生在两个函数之间 函数之间的调用关系有时间范围 在函数调用过程中先开始工作的函数叫调用函数,后     开始

谢文浩博客 459

Rocky Linux 9.2:利用LVM动态调整/home与/根分区空间分配

本文详细介绍了在Rocky Linux 9.2系统中,如何利用LVM(逻辑卷管理器)动态调整/home与根分区(/)的空间分配。针对根分区空间不足而/home分区闲置的常见问题,文章提供了从检查磁盘布局、备份数据、卸载分区、调整逻辑卷大小到重建文件系统的完整操作步骤,并重点说明了XFS与EXT4文件系统在缩容时的不同处理方法,帮助系统管理员安全、在线地实现存储空间的灵活调配。

weixin_29271263的博客 178

python-欢迎信息

根据输入的姓名(可能包含空格,长度不超过12),输出欢迎信息,即在姓名之前添加“Hello,”。 输入格式: 输入在一行中给出1个字符串s(可能包含空格,长度不超过12),表示输入的姓名。 输出格式: 根据输入的姓名(可能包含空格,长度不超过12),输出欢迎信息,即在姓名s之前添加“Hello,”(参看样例输出)。 name=input() print("Hello,{}".format(name)) ...

weixin_54729407的博客 4538

基于深度残差U-Net与多尺度注意力机制的医学图像分割系统

本文提出了一种创新的医学图像分割系统,通过融合残差连接、通道注意力机制和空间金字塔池化技术,构建了高性能的UResnet分割网络。系统采用编码器-解码器架构,创新性地引入多层次特征增强模块,显著提升了医学图像中复杂组织结构的分割精度。实验结果表明,该方案在多个医学图像数据集上均取得了优异性能,边界分割精度提升15%,训练收敛速度提升30%,同时减少20%计算量。系统为临床诊断提供了可靠的技术支持,未来可扩展至3D医学图像分割和联邦学习等方向。

Henry的博客 814

ChatGPT Web转API工具:原理、部署与集成实战

在AI应用开发中,API(应用程序编程接口)是实现系统间通信和数据交换的核心技术,它通过标准化的请求响应机制,将复杂功能封装为可编程的服务。其工作原理基于HTTP协议,通过定义清晰的端点、方法和数据格式,使不同平台的应用能够高效集成AI能力。这一技术价值在于极大降低了开发门槛,促进了自动化流程和智能功能的快速落地,广泛应用于智能客服、内容生成和创意辅助等场景。本文聚焦于如何通过浏览器自动化技术,将ChatGPT的Web界面能力转化为标准API服务,其中涉及Playwright无头浏览器操作和会话Cookie

weixin_42533910的博客 1767

c#教程第一课:简单的欢迎程序

本节程要达到如下几个目的: 1.理解一个C#程序的基本结构。 2.初步了解"名称空间"的概念。 3.初步了解"类"的概念。 4.了解"Main"方法所做的工作。 5.学会如何读取命令行输入信息。 6.学会使用控制台输入/输出 (I/O)语句。 1.清单1-1. 一个简单的欢迎程序Welcome.cs [code="c#"]// Namespace Decl...

技术与人际,两手都要硬 217

告别Keil4!手把手教你用Keil C51 V9.61编译51单片机代码(附最新激活方法)

本文详细介绍了Keil C51 V9.61在51单片机开发中的全栈升级指南,包括编译速度提升、调试器性能优化和现代开发支持等核心优势。通过智能安装方案、项目迁移实战和新特性深度应用,帮助开发者告别Keil4,大幅提升开发效率。附有最新激活方法和实用技巧,适用于嵌入式开发工程师。

weixin_26886855的博客 420

c#教程第一课简单的欢迎程序

在本文开始写作的时候,虽然商用c#编译器尚未推出, 但你可以下载微软的.NET Frameworks SDK Beta 1. 本节课通过介绍几个简单的程序,使得你对C#有所入门。本节程要达到如下几个目的:1.理解一个C#程序的基本结构。 2.初步了解"名称空间"的概念。 3.初步了解"类"的概念。 4.了解"Main"方法所做的工作。 5.学会如何读取命令行输入

gaoxinembedcn的专栏 517

100天精通Python(爬虫篇)——第118天:selenium自动化操作浏览器基础大总结

一、Selenium框架环境搭建 1. 下载模块 2. 安装浏览器驱动WebDriver 二、基础操作 1. 打开浏览器 2. 无界面模式 3. 元素定位 4. 元素操作 5. 前进后退 6. 执行js 7.页面等待 隐式等待(常用) 显式等待(了解) 三、进阶操作 1. 使用代理ip 2. 修改请求头 3. 隐藏指纹特征.....................

努力让自己发光,对的人才能迎着光而来 10万+

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

F1~F12功能键全解析:Windows快捷键、Fn Lock与改键排查

键盘上的每个按键,本质上都是矩阵中的开关节点,按下后由控制芯片产生扫描码,系统再转换为虚拟键码。Windows 的 F1~F12 既有系统级约定,也常被 Office、浏览器等软件重新定义;笔记本还普遍存在 Fn Lock 与多媒体优先层,导致功能键行为不一致。理解这套从扫描码到应用响应的链路,能帮助用户快速掌握 Windows 快捷键、排查 F 键失灵,并按需使用 PowerToys、SharpKeys、AutoHotkey 等改键工具。围绕 F1 到 F12 的标准作用、组合键、键盘配列差异与故障定位,

cuibinmo3519的博客 724

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

C#基础教程-c#实例教程,适合初学者

C#基础教程-c#实例教程,适合初学者。 第一章 C#语言基础 本章介绍C#语言的基础知识,希望具有C语言的读者能够基本掌握C#语言,并以此为基础,能够进一步学习用C#语言编写window应用程序和Web应用程序。当然仅靠一章的内容就完全掌握C#语言是不可能的,如需进一步学习C#语言,还需要认真阅读有关C#语言的专著。 1.1 C#语言特点 Microsoft.NET(以下简称.NET)框...

huang714 8万+

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

C#简单的欢迎程序

本节课通过介绍几个简单的程序,使得你对C#有所入门。本节程要达到如下几个目的:1.理解一个C#程序的基本结构。2.初步了解"名称空间"的概念。3.初步了解"类"的概念。4.了解"Main"方法所做的工作。5.学会如何读取命令行输入信息。6.学会使用控制台输入/输出 (I/O)语句。1.清单1-1. 一个简单的欢迎程序Welcome.cs // Namespace Declarationusing

深度Java 4286

C#初学者教程系列3:Hello World:第一个控制台应用程序

本文是C#初学者简单教程,这是第3篇。感谢观看,记得关注我,后续还有更多教程文章,谢谢。 C#是Microsoft提供的与.Net一起使用的语言之一。该语言包含一组丰富的功能,可以开发不同类型的应用程序。 C#是一种面向对象的编程语言,类似于C ++语言。在本教程中,我们将看到如何开发我们的第一个应用程序。 这将是一个基本的控制台应用程序,然后我们将探索C#语言中可用的不同数据类型以及控制流语句。 如无特别说明,本系列教程使用的Visual Studio版本为VS2019,.Net Frame.

C#开发 3835
上一篇: C#面试基础问题
下一篇: c#
lfpwhy
博客等级 码龄17年 6粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值