CSharp 第 2 课笔记
C Sharp 的结构有哪些特点
- 命名空间实现的分层管理
- 命名空间下包含若干个类型(其中最重要的是“类”)
- 类下面包含函数或方法
- 方法由语句组成
类结构
class 类名 |
方法和函数的定义
修饰符 返回值类型 方法名(参数列表) |
C Sharp 关键概念
- 程序 Program
- 编译出来的最终运行单位 exe
- 命名空间 Namespace
- 相当于 Java 的包
- 用于在同一个程序中定义同一个名称的类
- 类型 Type
- 分为基础类型:整数、浮点数……
- 复杂类型:字符串、用户定义的类
- 成员 Member
- 在一个类之下的数据(变量)
- 程序集 Assembly
C Sharp 程序的开发历程
语句 -> 方法 -> 类 -> 命名空间
C Sharp 数据类型
整数、浮点数、字符、Double
字符串
题目
第一题
接收用户输入,获取两个字符串,将其字符串链接(用 +
运算符),保存在新的变量之中,然后输出。
using System; |
这一题,我们学会了强制转换。然后重点!Console.ReadLine() 接收的是字符串。就算用户输入 16
,那也是字符串。
所以我们需要使用 Convert.ToInt32 函数将其转换为整数型。
同样的,Convert 类还包含了一大堆其他的函数可以转换成各种数据:Base64、Float等等
第二题
输入两个数字,比较大小,用方法实现using System;
namespace Uni_Learning
{
class Program
{
static void Main(string[] args)
{
int x, y;
int max;
Console.Write("请输入第一个数字:");
// 用 Convert.ToInt32 强制转换为整型
x = Convert.ToInt32(Console.ReadLine());
Console.Write("请输入第一个数字:");
y = Convert.ToInt32(Console.ReadLine());
// 调用函数获取最大值
max = Max(x, y);
// 输出结果,有三种方式输出数据:
// 第一种,缺点是容易少写加号或引号
Console.WriteLine("最大值是:" + max + "。");
// 第二种,使用占位符
Console.WriteLine("最大值是:{0}。", max);
// 第三种,使用 C# 6.0 的新特性 String Interpolation
Console.WriteLine($"最大值是:{max}。"); // 这个比较人性化
}
static int Max(int a, int b)
{
if (a > b)
{
return a;
} else
{
return b;
}
// 也可以用三目运算符
return a > b ? a : b;
}
}
}
所以这一题我们学会了字符串链接和几种不同的输出
第三题
输入姓名、高数、语文、英语三门课的成绩,显示:XX,你的总成绩为 XX 分,平均成绩为 XX 分。
using System; |
本日学习
- 顺序结构
- C# 程序是顺序的、从上往下逐行执行的。
- 跳转结构
- 当程序遇到函数时,就会暂停在执行到的地方,然后进入函数,当函数执行完毕或者遇到 return 关键字时,继续执行刚刚的代码
- 选择语句
- if(平时用的比较多,不解释)
- switch
- 因为有 default,可以用来接收并处理不是预期所要的用户输入等数据。
- 循环语句
- while
- do
- for
- 跳转语句
- goto(不建议使用)
- 会照成程序结构被破坏(Spaghetti Code 面条代码)
- 降低代码可读性
- break
- continue
- return
- throw
- 抛出异常
- goto(不建议使用)