C#基础总复习02

继续更新第二篇:

1:一元运算符:++ --

  ++:不管是前加加还是后加加,变量的值最终都会自身加一。

前加加和后加加的区别体现在参与运算的时候,如果是后加加,则首先拿原值参与运算,
运算完成后再自身加一,而前加加则是首先自身加一,然后拿着加一后的值参与运算。

  --:不管是前减减还是后减减,变量的值最终都会自身减一。

+ - * / % 是二元运算符,在一个表达式当中,既有一元运算符,也有二元运算符,应该首先计算一元运算符,一元运算符的优先级要高于二元运算符。

2:复合赋值运算符

  

+=:eg;a=a+5;=>a+=5;
-= :eg;a=a-5;=>a-=5;
*=:同上
/=
%=

3:关系运算符:用来描述两者之间的关系(简单不多说)

>
<
>=
<=
==
!=

由关系运算符连接的表达式叫做关系表达式,每一个表达式都能够求解出一个定值。

4:bool类型:

用bool类型来描述对或者错,bool类型只有两个值:true false。

5:逻辑运算符:

逻辑与 :&&

//让用户输入老苏的语文和数学成绩,输出以下判断是否正确,正确输出True,错误输出False
//1)老苏的语文和数学成绩都大于90分
Console.WriteLine("请输入老苏的语文成绩");
int chinese = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("请输入老苏的数学成绩");
int math = Convert.ToInt32(Console.ReadLine());

//bool b = chinese > 90 && math > 90;
//Console.WriteLine(b);

//2)语文和数学有一门是大于90分的

bool b = chinese > 90 || math > 90;
Console.WriteLine(b);
Console.ReadKey();

逻辑或 :||

//润年的判定(符合下面两个条件之一):
//年份能够被400整除.(2000)
//年份能够被4整除但不能被100整除.(2008)
//让用户输入一个年份,如果是润年,则输出true,如果不是,则输出false.

Console.WriteLine("请输入一个年份");
int year = Convert.ToInt32(Console.ReadLine());

bool b = (year % 400 == 0) || (year % 4 == 0 && year % 100 != 0);
Console.WriteLine(b);
Console.ReadKey();

逻辑非:!

逻辑与和逻辑或运算符两边要求放置关系表达式或者bool类型的值,辑与的优先级要高于逻辑或。

6:语法结构

顺序结构:从上到下。

分支结构:

if结构、

语法:

if(判断条件):判断条件一般为bool类型的值或者关系表达式或者逻辑表达式
{
要执行的代码;
}

执行过程:
程序执行到if处,首先判断if所带的判断条件是否成立,如果成立,也就是返回true,
则进入大括号中执行代码。
如果判断条件不成立,也就是返回false,则直接跳过大括号。

语法特点:先判断,再执行,有可能一条代码都不会执行。

//让用户输入年龄,如果输入的年龄大于23(含)岁,则给用户显示你到了结婚的年龄了.
Console.WriteLine("请输入你的年龄");
int age = Convert.ToInt32(Console.ReadLine());
bool b = age >= 23;
if (b)
{
Console.WriteLine("你可以结婚啦");
}
Console.ReadKey();

if-else结构

语法:
if(判断条件)
{
要执行的代码;
}
else
{
要执行的代码;
}

执行过程:程序运行到if处,首先判断if所带的判断条件是否成立,如果成立的话,则执行
if所带的大括号中的代码,执行完成后,则立即跳出if-else结构。
如果判断条件不成立,则跳过if所带的大括号,执行else所带的大括中的代码,执行完成后,
跳出if-else结构。
所以,if-else结构最少都会执行一条代码。
注意:else永远跟离它最近的那个if配对

要求用户输入两个数a、b,如果a和b整除或者a加b大于100,则输出a的值,否则输出b的值
//Console.WriteLine("请输入a的值");
//int a = Convert.ToInt32(Console.ReadLine());
//Console.WriteLine("请输入b的值");
//int b = Convert.ToInt32(Console.ReadLine());

//if ((a % b == 0) || (a + b) > 100)
//{
// Console.WriteLine(a);
//}
//else
//{
// Console.WriteLine(b);
//}

选择结构:

if else-if结构、

这个结果用于多条件的判断,表示在多个判断条件中选择一个来执行。

语法:
if(判断条件)
{
要执行的代码;
}
else if(判断条件)
{
要执行的代码;
}
else if(判断条件)
{
要执行的代码;
}
else if(判断条件)
{
要执行的代码;
}
else
{
要执行的代码;
}
执行过程:程序首先会判断第一个if所带的小括号中的判断条件是否成立。如果成立,
则执行该if所带的大括号中的代码,执行完成后,跳出当前if else-if结构。
如果第一个if所带的判断条件不成立,则继续向下判断,依次判断每个if中的条件是否成立。
如果成立,则执行该if所带的大括号中的代码,执行完成后,跳出 if else-if结构。如果
每个if所带的判断条件都不成立,则看当前 if else-if结构中是否存在else
如果有else,则执行else中的代码,如果没有,则跳出当前结构,什么都不做。

static void Main(string[] args)
{
//对学员的结业考试成绩评测(考虑用if好还是用if-else好)
// 成绩>=90 :A
//90>成绩>=80 :B
//80>成绩>=70 :C
//70>成绩>=60 :D
// 成绩<60 :E
int score = 0;
bool b = true;
string level = "";
Console.WriteLine("请输入考试成绩");
try
{
score = Convert.ToInt32(Console.ReadLine());
if (score >= 90)
{
level = "A";
}
else if (score >= 80)
{
level = "B";
}
else if (score >= 70)
{
level = "C";
}
else if (score >= 60)
{
level = "D";
}
else
{
level = "E";
}
}
catch
{
Console.WriteLine("输入有误,程序退出");
b = false;
}

if (b)
{
Console.WriteLine(level);
}
Console.ReadKey();
//Console.ReadKey();

}

(demo包含try-catch)

switch-case结构。

语法:
switch(变量的值或者表达式)
{
case 值1:要执行的代码;
break;
case 值2:要执行的代码;
break;
case 值3:要执行的代码;
break;
case 值4:要执行的代码;
break;
.....
default:
要执行的代码;
break;
}
执行过程:程序首先计算switch小括号中的变量或者表达式的值。
拿着计算出来的定值依次的跟每个case所带的值进行匹配。
如果匹配成功,则执行该case所带的代码,执行完成后,遇到break,
跳出当前switch-case结构。
如果跟每个case所带的值都不匹配,则看当前switch-case中是否存在default。
如果存在default,则执行default中的代码,如果没有default,则该结构什么都不做。

如果判断的多条件,是一个区间性的判断。推荐使用if else-if.
如果判断的是一个多条件的定值。推荐使用switch-case。

//对学员的结业考试成绩评测 // 成绩>=90 :A //90>成绩>=80 :B //80>成绩>=70 :C //70>成绩>=60 :D // 成绩<60 :E

console.writeline("请输入考试成绩");
int score = convert.toint32(console.readline());
string level = "";
switch (score/10)
{
case 10:
case 9:
level = "a";
break;
case 8:
level = "b";
break;
case 7:
level = "c";
break;
case 6:
level = "d";
break;
default:
level = "e";
break;
}
console.writeline(level);

循环结构:所谓循环,指的是不停的同一件事情。就算是循环,也会结束的时候,如果一个循环,永远都不会结束,这种循环叫做死循环。

while循环、

while循环的语法:
while(循环条件)//bool类型的值,关系表达式,逻辑表达式
{
循环体;//指的就是不停的在做的那件事儿
}
执行过程:程序执行到while处,首先判断while小括号中所带的循环条件是否成立。
如果循环条件成立,也就是返回true,则执行while大括号中的循环体,当循环体
执行完一遍后,我们回到循环条件继续判断,如果循环条件成立,则继续执行循环体,
如果循环条件不成立,则立即跳出当前while循环。
在一个循环中,总会有那么一行代码能够改变循环条件,使之终有一天不再成立,
如果没有那么一行代码能够改变循环条件,那么这种循环我们叫做死循环。
最常用的死循环:
while(true)
{

}

break关键字
1)、跳出当前switch-case结构
2)、可以跳出当前的循环
break最常跟while(true)死循环配合使用

//求1-100之间所有整数的和 求1-100之间所有奇数的和 求1-100之间所有偶数的和
//循环体:不停的去相加
//循环条件:还没有加到100
//int sum = 0;//总和
//int i = 1000;
//while (i <= 100)
//{
// if (i % 2 == 0)
// {
// sum += i;//sum=sum+i;
// }
// i++;
//}
//Console.WriteLine(sum);
//Console.ReadKey();

do-while循环、

语法:
do
{
循环体;
}while(循环条件);

执行过程:
程序首先执行do中的循环体,执行完成后,带着执行的结果去判断循环条件是否成立。
如果成立,则继续执行do中的循环体,如果不成立,则跳出do-while循环。
特点:先执行,再判断,最少都要执行一遍循环体。

static void Main(string[] args)
{
//明天小兰就要登台演出了,老师说再把明天的演出的歌曲唱一遍,如果满意,小兰就可以回家了.否则就需要再练习一遍,直到老师满意为止.(y/n)

//循环体:小兰唱一遍 问老师 你满意了么?老师回答
//循环条件:老师不满意

//Console.WriteLine("老师,我唱的这一遍,你满意么?");
//string answer = Console.ReadLine();

//while (answer == "no")
//{
// Console.WriteLine("老师,我再唱一遍,你满意么?");
// answer = Console.ReadLine();
//}
//Console.WriteLine("满意了,你可以回家了");

string answer = "";
do
{
Console.WriteLine("我唱的这一遍,老师你满意么?");
answer = Console.ReadLine();
} while (answer == "no");

Console.ReadKey();
}

for循环、

作用:专门用来处理已知循环次数的循环。
语法:
for(表达式1;表达式2;表达式3)
{
循环体;
}
执行过程:
首先执行表达式1,声明循环变量,然后执行表达式2,判断循环条件是否成立。
第一次循环的时候,并没有执行表达式3,而是直接进入循环执行循环体。
循环体执行完成后,执行表达式3,然后执行表达式2判断循环条件是否成立,
如果成立,则继续执行循环体,如果不成立,则跳出当前for循环。

//找出100-999间的水仙花数?
//水仙花数:当前这个百位数字的百位的立方+十位的立方+个位的立方==当前这个百位数字

//153 1 + 125 + 27=153
//153
//百位:153/100
//十位:153%100/10
//个位:153%10
//3*3*3

//GC Garbage Collection

for (int i = 100; i <= 999; i++)
{
int bai = i / 100;
int shi = i % 100 / 10;
int ge = i % 10;
if (bai * bai * bai + shi * shi * shi + ge * ge * ge == i)
{
Console.WriteLine(i);
}
}
Console.ReadKey();

foreach循环

关于foreach循环可以看看这个简单的demo:梦断难寻 C# foreach 循环遍历数组

7:try-catch 异常捕获

语法:
try
{
有可能会出现异常的代码;
}
catch
{
出现异常后要执行的代码;
}
执行过程:
如果try中的代码出现了异常,则这行异常代码后面,哪怕有一百行代码,都不会再被执行了,
而是直接跳到catch中,执行catch中的代码。
反之,如果try中的代码没有出现异常,则不会执行catch的代码;

(try-catch最后还有finally,意思是如果加上了finally的话,finally中的代码在最后都必须会执行)

static void Main(string[] args)
{
int number = 0;
bool b = true;
Console.WriteLine("请输入一个数字,我们将打印这个数字的2倍");
try
{
number = Convert.ToInt32(Console.ReadLine());//50a
Console.WriteLine("啦啦啦啦啦");
Console.WriteLine("啦啦啦啦啦");
Console.WriteLine("啦啦啦啦啦");
Console.WriteLine("啦啦啦啦啦");

}
catch
{
Console.WriteLine("输入的数字不正确,程序退出!!!!");
b = false;
}
if (b)
{
Console.WriteLine(number * 2);
}

Console.ReadKey();
}

8:局部变量的作用域

在Main函数当中,声明的所有变量都叫做局部变量。而局部变量的作用域是有范围的。
所谓作用域指的就是能够使用这个变量的范围(比如所大括号可以看做是一个作用域)。

(暂时这么点 所有的demo都是最基础的 希望能明白,可能排版有点问题,还望忍耐。如果哪儿有写的不对的地方还望指教。)

                               2015-04-01

                                 36E

                最后祝大家愚人节快乐!!

时间: 2024-08-29 19:31:45

C#基础总复习02的相关文章

C#基础总复习01

马上就快毕业了,准备把这几个月所学到的知识梳理一下,这儿所写的都是一些C#中最基础的东西(大牛不要笑话我,这也是我记录的一些笔记等等),希望能帮到一些正在学习这方面的知识的人,如果有写的不对的地方,望大神们指点. 先从最基础的说起: 1:c#是强类型语言:区分大小写:对变量的类型必须有一个明确的定义. 2:赋值运算符“=”:等号在c#并不是相等的意思,而是表示赋值,把等号右边的值赋值给等号左边的变量,由等号连接的表达式,叫做赋值表达式.要求等号两边的数据类型必须一致. 3:加号的使用:①连接,当

.net基础总复习(1)

第一天 1.new关键字 (1) 创建对象 (2) 隐藏从父类那里继承过来的成员 2.访问修饰符 public: 公开的,公共的. private:私有的,只能在当前类的内部访问,类中的成员, 如果不加访问修饰符,默认就是private. protected:受保护的,可以在当前类的内部访问,也可以在该类的子类中访问. internal: 在当前项目中都可以访问, internal于public的区别就是一个限制在项目里,另一个不是. protected internal:能够修饰类的访问修饰符

考试备战系列--软考--02基础知识复习

这部分主要是计算机基础知识的概念介绍,相关系列文章如下所示. 考试备战系列--软考--01基础架构概念 考试备战系列--软考--02基础知识复习 考试备战系列--软考--03综合知识复习 考试备战系列--软考--04考题收集 考试备战系列--软考--05案例收集 考试备战系列--软考--06论文准备 操作系统时计算机系统的核心系统软件,其他软件均建立在其上,其分类包括:单用户操作系统和批处理操作系统.分时操作系统和实时操作系统.网络操作系统和分布式操作系统.嵌入式操作系统.其4大特征为并发性.共

php高级进阶系列文章--第二篇(PHP基础知识复习)

php基础知识复习 本文中对于简单的知识点只会提及一下(例如什么控制结构什么的),对于较有难度的详细复习下(例如面向对象的反射等等) 再次申明,本系列文章不是从最基础的开始复习,对于零基础的可能不适用,本文的初衷是我要准备攻读源码,在攻读前将之前的知识牢固下,太过简单的就写在文中了 1,echo print echo 可以输出一个或者多个字符串 print 只可以输出一个字符串,返回值总为1 2,PHP7中的组合比较符 echo 1 <==> 1 // 0 echo 1 <==>

JavaSE_ Java基础 总目录(1~6)

黑马程序员_JavaSE学习总结第01天_Java概述01.01 计算机概述01.02 计算机硬件和软件概述01.03 软件开发和计算机语言概述01.04 人机交互01.05 键盘功能键和快捷键01.06 如何打开DOS控制台01.07 常见的DOS命令讲解01.08 扩展的DOS命令01.09 Java语言概述01.10 Java语言跨平台原理01.11 JDK和JRE的概述01.12 JDK的下载01.13 JDK的安装01.14 JDK的卸载01.15 Java开发工具介绍01.16 第一

EF6 在原有数据库中使用 CodeFirst 总复习(五、生成发帖页面)

有点与在原有数据库中使用 CodeFirst 远了,不过是总复习吗,总得全面点. 一.在用户表(Users)中插入两个用户 二.生成发帖界面 MVC生成的界面很多,也没使用Ajax,实际开发中很少会使用,这里只是为了演示. 但无论用什么生成,特性.实体对象等都是要用到的. 生成之前要编译一下. 三.先试试看能不能运行 空空如也 应该显示用户名,显示成登陆名了(其实预想的是不在新增和修改时显示,未考虑到列表),删除标记怎么也显示出来了,还有内容,能显示的下吗... 四.列显示问题 让列表显示用户,

[家里蹲大学数学杂志]第240期钟玉泉编复变函数总复习纲要

第240期_钟玉泉编复变函数总复习纲要 下载后请自行打印.预览或学习, 不要到处传播于网络, 更不要用于商业用途.

2016年初中数学知识点中考总复习总结归纳

2016年初中数学知识点中考总复习总结归纳 http://wenku.baidu.com/link?url=NbEiI_Ld2TO3zEH8d5oDxTux2IBWJ5HqNmZ467MGchJTV2G0pyG4_TauOsYhjL6Ybyqp8MxUKM_wtofUqMTc7ePR3gJv3zIY27sTuSGOaRW

c基础知识复习

C的发展历程 C原本是为了开发UNIX操作系统而设计的语言:如此说,应该C比UNIX更早问世,而事实并非如此,最早的UNIX是由汇编写的: C语言本来是美国人开发的,解读C的声明,最好还是用英语来读: 解读C声明的步骤: 1.首先着眼于标识符(变量名或者函数名) 2.从距离标识符最近的地方开始,依照优先顺序解释派生类型(指针.数组和函数).优先顺序说明如下: a.用于整理声明内容的括号: b.用于表示数组的[ ],用于表示函数的( ) c.用于表示指针的* 3.解释完成派生类型,使用 “of”.