一、顺序结构

1.赋值语句

没什么好说的,跟c/c++几乎一样

2.输入输出

这个跟c/c++就有很大不一样了。

比较常见的两种输入方式和两种输出方式写在下面了。

Console.Read()方法:        //从控制台窗口读取一个字符,返回int值
Console.ReadLine()方法:    //从控制台窗口读取一行文本,返回string值
Console.Write()方法:       //将制定的值写入控制台窗口
Console.WriteLine()方法:   //将制定的值写入控制台窗口,但在输出结果的最后添加一个换行符

这里只说一下格式字符串,比较新奇一点。

//输出格式表达式中,使用参数
Console.WriteLine("三个整数是 {1}、{0} 和 {1}", 3, 6);
// 规定参数中的  输出格式
Console.WriteLine("{0}花费了{1:C}", "name", 12);
//产生带有逗号的数
Console.WriteLine("{0:N}",100000000);
//前导0
Console.WriteLine("{0:D5}",26);
//左对齐,八个字符
Console.WriteLine("{0,8}花费了X元","name");    
//右对齐,八个字符
Console.WriteLine("{0,-8}花费了X元", "name");  

//日期与时间的格式化输出
DateTime dt = DateTime.Now;
Console.WriteLine("短日期格式: {0:d}", dt);
Console.WriteLine("长日期格式: {0:D}", dt);
Console.WriteLine("完整日期/时间格式(短时间):  {0:f}", dt);
Console.WriteLine("完整日期/时间格式(长时间):  {0:F}", dt);
Console.WriteLine("常规日期/时间格式(短时间):  {0:g}", dt);
Console.WriteLine("常规日期/时间格式(长时间):  {0:G}", dt);

运行结果
在这里插入图片描述

3.选择结构

没有什么不一样

4.循环结构

for
while
几乎没有什么变化

c#有一个比较特殊的语句叫foreach,例如下面代码

int []a=new int[10]{1,2,3,4,5,6,7,8,9,10};
foreach (var k in a)
{
    Console.WriteLine(k);
}

当然里面的
break和continue也差不多 主要是懒得写

二、异常处理

下表列出了一些派生自 Sytem.SystemException 类的预定义的异常类:(from菜鸟教程)
在这里插入图片描述1.使用try...catch...finally手动捕获异常

当然如果想偷个懒

 catch (Exception exception)
 {
     Console.WriteLine(exception.Message);
     //throw;
 }

捕获所有类型的错误。

int ans=0;
int x, y;
x = Console.Read();
y = 0;
try
{
    ans = x / y;
}
catch (Exception exception)
{
    Console.WriteLine(exception.Message);
    //throw;
}
finally
{
    Console.WriteLine(ans);
}

在这里插入图片描述

2.throw还没有彻底理解清楚,待补
throw参考网址:
https://docs.microsoft.com/zh-cn/dotnet/csharp/language-reference/keywords/throw