C#初级开发原创教程第六课 复杂选择结构
本帖最后由 王尼玛 于 2014-10-24 01:12 编辑大家好,我是王尼玛。今天起我给大家讲解C#开发教程,本次是第六课。大家在课后有什么疑问可以跟帖留言,我会尽我所能来解答。毕竟众口难调,大家有什么建议也可以跟帖告诉我。
此教程为本人原创,转载请注明"吾爱汇编论坛王尼玛原创"
好了,废话不多说,开始今天的学习.
有朋友说不太明白我写的教程,其实编程这东西很简单,一个字,练!你光看我写的多半是一头雾水,因为你没实际跟着我讲的代码去操作,你要跟着我的代码敲,多敲代码,多练习我给的例子,再配合我例子后面的讲解,自然就明白我讲的是什么了.还不明白?跟帖问吧
1.复杂条件下的if选择结构
问题:
张浩的C#成绩大于98分,而且音乐成绩大于80分,老师奖励他;或者C#成绩等于100分,音乐成绩大于70分,老师也可以奖励他
分析:
这个问题需要判断的条件比较多,因此需要将多个条件连接起来,C#中可以使用逻辑运算符连接多个条件
运算符 汉语名称 表达式说明
&& 与,并且 条件1&&条件2两个条件同时为真,结果为真;两个条件一个为假,结果为假
|| 或,或者 条件1||条件2两个条件一个为真,结果为真;两个条件同时为假,结果为假
! 非 !条件 条件为真时,结果为假;条件为假时,结果为真
现在考虑一下怎么连接问题中的条件,先抽取条件:
张浩C#成绩>98分 并且 张浩音乐成绩>80分
或者
张浩C#成绩==100分 并且 张浩音乐成绩>70分
看看怎么用代码表示:
int score1 = 100;//C#成绩
int score2 = 72;//音乐成绩
if((score1>98&&score2>80)||(score1==100&&score2>70))
{
Console.WriteLine("不错,奖励MP4一个");
}
Console.ReadKey();运行结果:
2.使用if-else结构
语法:if(条件){
代码块1
}else{
代码块2
}问题:
如果张浩C#成绩大于98分,老师奖励他一个mp4,否则罚他进行编码
分析:
与if选择结构不同的是,除了要实现条件成立执行的操作,同时还要实现条件不成立时执行的操作
解决方案:
int score1 = 91;//C#成绩
if(score1>98)
{
Console.WriteLine("不错,奖励MP4一个");
}
else
{
Console.WriteLine("惩罚进行编码");
}
Console.ReadKey();运行结果:
3.多重if选择结构
语法:
if(条件1){
代码块1
}else if{
代码块2
}else{
代码块3
}其中,else if块可以有多个或没有,需要几个else if完全取决于你的需要.注意:
else块最多有一个或没有,else块必须要放在else if块之后
问题:
对学员的结业考试成绩进行评测.
成绩>=90优秀
成绩>=80良好
成绩>=60中等
成绩<=60差
分析:
这个问题是要将成绩分成几个区间判断
解决方案:
int score = 70;//成绩
if(score>90)
{
Console.WriteLine("优秀");
}
else if(score>=80)
{
Console.WriteLine("良好");
}
else if(score>=60)
{
Console.WriteLine("中等");
}
Console.ReadKey();运行结果:
4.switch选择结构
语法:
switch(表达式){
case 常量 1:
代码块1;
break;
case 常量 2:
代码块2;
break;
..........
default:
代码块n;
break;
}解释:switch:表示"开关",这个开关就是switch关键字后面小括号里的值,小括号里要放int,char或者string类型变量
case:表示"情况",case后必须是一个整形或字符,字符串型的常量表达式.case块可以有多个,顺序可以改变,但是每个case后的值要求不一样
default:表示"默认",即其他情况都不满足通常,default块放在末尾.
break:表示"停止",即跳出当前结构,C#中不能省略break!
问题:
张三参加计算机变成大赛,
如果获得第一,名,将参加麻省理工大学组织的1个月夏令营
如果获得第二名,奖励惠普笔记本电脑一台
如果获得第三名,奖励移动硬盘一个
否则,不给任何奖励
解决方案:
int rank = 1;//名次
switch (rank)
{
case 1:
Console.WriteLine("参加麻省理工大学组织的1个月夏令营");
break;
case 2:
Console.WriteLine("奖励惠普笔记本电脑一台");
break;
case 3:
Console.WriteLine("奖励移动硬盘一个");
break;
default :
Console.WriteLine("没有任何奖励");
break;
}
Console.ReadKey();运行结果:
本节课就讲到这,谢谢大家
王尼玛C#初级开发原创教程目录:
1.C#初级开发原创教程第一课Visual Studio 2013的安装
2.C#初级开发原创教程第二课 控制台的输出
3.C#初级开发原创教程第三课 数据类型转换
4.C#初级开发原创教程第四课 深入控制台应用程序
5.C#初级开发原创教程第五课 bool类型,关系运算符与if选择结构
6.C#初级开发原创教程第六课 复杂选择结构
7.C#初级开发原创教程第七课循环结构(一)
8.C#初级开发原创教程第八课 循环结构(二)
9.C#初级开发原创教程第九课 数组
10.C#初级开发原创教程第十课 面向对象之类和对象
11.C#初级开发原创教程十一课 类的无参方法
12.C#初级开发原创教程十二课 带参数的方法(一)
13.C#初级开发原创教程第十三课 字符串的操作
{:6_154:}gay ,Hold 板凳毁灭器 我是来消灭板凳的,赞+9999 {:6_131:}小妹不要这么急嘛 尼玛,霸气就这么侧漏了!!{:6_137:} 已学习完本课,简单易懂,支持一下
Dean 发表于 2014-10-11 14:42
已学习完本课,简单易懂,支持一下
感谢支持!
每一个我都认真的练习王老师 我爱你
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int score1=100;
int score2=72;
if ((score1 > 98 & score2 > 80) || (score1 == 100 & score2 > 70)) ;
{
Console.WriteLine("不错,奖励mp4一个");
}
Console.ReadKey();
}
}
}
长知识了,关注
页:
[1]