语句

语句是指程序命令,都是按照顺序执行的。语句在程序中的执行顺序称之为“控制流”或“执行流”。根据程序对运行时所收到的输入的响应,在程序每次运行时程序流可能有所不同。
    注意,语句间的标点符号必须是英文半角标点,语句的结束标点是分号”;“。
    语句可以嵌套,可以是以分号结尾的单行代码,也可以是语句块中的单行语句。语句块括在括号{}中,并且可以包好嵌套块。
    语句的类型包括声明语句、表达式语句、选择语句、循环语句、跳转语句、异常语句。
   
    声明语句:引入新的变量或常量。变量声明可以选择为变量赋值。在常量声明中必须赋值
        例如:int i = 0;//声明变量i并赋值,也可以不赋值。
       
    表达式语句:用于计算值得表达式语句必须在变量中存储该值。
        例如:sum =i+j;//变量i和j在此之前必须先赋值,而且sum也需要声明类型。 int x = a+b;//或者在声明的同时运算。
       
    选择语句:if、else、switch、case
    循环语句:do、for、foreach、while
    跳转语句:break、continue、default、return
    异常语句:trg-catch-finally


一、选择语句

if语句:

语法:
        if(判断条件)
        {要执行的代码;}
    判断条件:一般为关系表达式或者bool类型的值。默认判断条件是==true,所以可以省略”==true“。如果需要flase则要写上==flase
    执行过程:程序运行到if处,首先判断if所带的小括号中的判断条件是否成立,如果成立(也就是返回true),则执行if所带的大括号中的代码,如果判断条件不成立(返回false),则跳过if结构,继续向下执行。
   
    特点:先判断,再执行。也有可能一行也不执行。##适用于一种情况的判断##
    // 注意:if所带的小括号后面没有“;”,如果后面只有一个{},则花括号可以省略。

if else语句:

语法:
        if(判断条件)
        {执行代码;}
        else{执行的代码;}
    执行过程:程序执行到if处,先判断if所带的小括号中判断语句是否成立,如果成立则执行if所带大括号中的代码,执行完后,跳出if-else结构。
              如果if所带的小括号中的判断条件不成立,则跳过if语句,执行else所带的大括号中的语句,执行完,跳出if-else结构。
    特点:先判断,再执行,最少都要执行一条代码。##适用于两种情况的判断##
    // 注意:else永远与它最近的if配对

if else-if语句:

作用:用于处理多条件的区间的判断。
    语法:
        if(判断条件)
        {要执行的代码;}
        else if(判断条件)
        {要执行的代码;}
        else if(判断条件)
        {要执行的代码;}
        else if(判断条件)
        {要执行的代码;}
        ......
        else{要执行的代码;}
    执行过程:(待续。。。)程序首先判断第一个if所带的小括号中的判断条件,如果成立,则执行该if所带的大括号中的代码,执行完成好,立即跳出 if else-if 结构语句。如果第一个if所带的判断条件不成立,则继续向下进行判断,依次判断每一个if所带的判断条件,如果成立,就执行该if所带的大括号中的代码,如果不成立,则继续向下判断,如果每一个if所带的判断条件都不成立,就看当前这个 if else-if 结构中是否存在 else 。如果有 else 的话,则执行 else 中所带的代码如果没有 else ,则整个 if else-if 结构什么也不做。#else可省略#

if语句的嵌套

略···

例题:

          //让用户输入一个年份,判断是否是闰年。
// a.能被400整除
// b.能被4整除,但不能被100整除。
// 思路:
// 1.从键盘接收一个年份,并转化整数 year。
// 2.判断是否满足上面的两个条件。
// 3.根据判断结果分别显示“平年”“闰年” console.write("判断是否闰年,请输入年份:");
int year = convert.toint32(convert .todouble(console.readline()));//convert.todouble嵌套在里面 当用户输入double类型时将其转换为int类型
if ((year % 400 == 0) || (year % 4 == 0) && (year % 100 != 0))
{ console.writeline("是闰年"); }
else
{ console.writeline("是平年"); }
        #region //判断ax*x+bx+c=0是不是一元二次方程

            Console.Write("请输入a的值:");
//int a = Convert.ToInt32(Console.ReadLine());
double a = double.Parse(Console.ReadLine());
Console.Write("请输入b的值:");
//int b = Convert.ToInt32(Console.ReadLine());
double b = double.Parse(Console.ReadLine());
Console.Write("请输入c的值:");
//int c = Convert.ToInt32(Console.ReadLine());
double c = double.Parse(Console.ReadLine());
double d = b * b - 4 * a * c; if (a == 0)
{
Console.WriteLine("方程不是一元二次方程。");
}
else
{
Console.WriteLine("是一元二次方程");
if (d >= 0)
{
double x1 = (-b + Math.Sqrt(d)) / (2 * a);//Math.Sqrt引用函数 开平方
double x2 = (-b - Math.Sqrt(d)) / (2 * a);
if (d > 0)
{
Console.WriteLine("方程有两个相等的实根");
Console.WriteLine("x1:" + x1.ToString() + "x2:" + x2.ToString());
}
else
{
Console.WriteLine("方程有两个不同的实根");
Console.WriteLine("x1=x2=" + x1.ToString()); }
} else if (d < 0)
Console.WriteLine("此方程没有实根");
} //简单方法
Console.Write("a:");
int a = Convert.ToInt32(Console.ReadLine());
Console.Write("b:");
int b = Convert.ToInt32(Console.ReadLine());
Console.Write("c:");
int c = Convert.ToInt32(Console.ReadLine());
int d = b * b - 4 * a * c;
if (a == 0)
{
Console.WriteLine("不是一元二次方程");
}
else
{
if (d > 0)
{
Console.WriteLine("有两个不相等的实根");
}
else if (d == 0)
{
Console.WriteLine("有两个相等的实根");
}
else
{
Console.WriteLine("无实根");
}
} #endregion
           #region//体重问题:男士体重:身高-100+(-)+3

            Console.Write("请输入性别:");
string s = Console.ReadLine();
Console.Write("请输入体重(kg):");
double t = Convert.ToDouble(Console.ReadLine());
Console.Write("请输入身高(cm):");
double g = Convert.ToDouble(Console.ReadLine()); if (s == "男")
{
double n = t - g + 100;
if (n >= -3 && n <= 3)
{
Console.WriteLine("你的体重是标准体重");
}
else if (n > 3)
{
Console.WriteLine("你该减肥了");
}
else
{
Console.WriteLine("你需要增加营养");
} }
else if (s == "女")
{
double n = t - g + 110;
if (n >= -3 && n <= 3)
{
Console.WriteLine("你的体重是标准体重");
}
else if (n > 3)
{
Console.WriteLine("你该减肥了");
}
else
{
Console.WriteLine("你需要增加营养");
}
}
else { Console.WriteLine("你输入的有误"); }
// #endregion
#region if判断年月日输入是否正确

            Console.Write("请输入年份:");
int year = Convert.ToInt32(Console.ReadLine());
if (year > 0 && year <= 9999)
{
Console.Write("请输入月份:");
int month = Convert.ToInt32(Console.ReadLine());
if ((month > 0 && month < 13) == false)
{
Console.WriteLine("输入的月份有误");
}
else
{
Console.Write("月份输入正确,请输入日:");
int day = Convert.ToInt32(Console.ReadLine());
if ((day > 0 && day <= 31) == false)
{
Console.WriteLine("输入的日期有误");
}
else
{
if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)
{
Console.WriteLine("{0}年{1}月{2}", year, month, day);
}
else if (month == 4 || month == 6 || month == 9 || month == 11)
{
Console.WriteLine("{0}年{1}月{2}", year, month, day);
}
else
{
if ((year % 400 == 0) || ((year % 4 == 0) && (year % 100 != 0)))
{
if (day < 1 || day > 29)
{
Console.WriteLine("输入天数不正确,闰年2月最多29");
}
else
{
Console.WriteLine("{0}闰年{1}月{2}日", year, month, day);
}
}
else
{
if (day < 1 || day > 28)
{
Console.WriteLine("输入天数错误,平年二月最多28天");
}
else
{
Console.WriteLine("{0}年{1}月{2}日", year, month, day);
}
}
} } } }
else
{
Console.WriteLine("输入年份有误");
} #endregion
#region//生成随机数,做猜拳

            ////产生随机数
// //1、创建能够产生随机数的对象
//Random r = new Random();
// // 2、让产生随机数的这个对象调用方法来产生随机数
//int rNumeber =r.Next(1,11);//产生的随机数的范围是1-10,左闭右开区间
//Console.WriteLine(rNumeber); /*
try
{可能出现异常的代码;}
catch
{出现异常后要执行的代码;}
*/
第二遍
while (true)
{
Random sj = new Random();
int computer = sj.Next(1, 4);
Console.Write("进行猜拳游戏,请用户出拳(剪子-1,包袱-2,锤-3)\n请输入:");
int ren;
try
{
ren = Convert.ToInt32(Console.ReadLine());
if (ren == 1)//人出1的情况
{
if (computer == 1)
{
Console.WriteLine("电脑出剪子{0},平局。", computer);
}
else if (computer == 2)
{
Console.WriteLine("电脑出包袱{0},您赢。", computer);
}
else if (computer == 3)
{
Console.WriteLine("电脑出锤{0},您输。", computer);
}
}
else if (ren == 2)//人出2的情况
{
if (computer == 1)
{
Console.WriteLine("电脑出剪子{0},您输。", computer);
}
else if (computer == 2)
{
Console.WriteLine("电脑出包袱{0},平局。", computer);
}
else if (computer == 3)
{
Console.WriteLine("电脑出锤{0},您赢。", computer);
}
}
else if (ren == 3)//人出3的情况
{
if (computer == 1)
{
Console.WriteLine("电脑出剪子{0},您赢。", computer);
}
else if (computer == 2)
{
Console.WriteLine("电脑出包袱{0},平输。", computer);
}
else if (computer == 3)
{
Console.WriteLine("电脑出锤{0},平局。" + computer);
}
}
else
{ Console.WriteLine("输入错误"); }
}
catch
{
Console.WriteLine("输入有误");
} } while (true)
{
//Console.WriteLine("要开始猜拳游戏吗?(y/n)"); Random rand = new Random();
int n = rand.Next(3);
Console.WriteLine("进行猜拳游戏,请用户出拳(剪子-0,包袱-1,锤-2)"); int m = Convert.ToInt32(Console.ReadLine());
if (m == 0)
{
if (n == 0)
{
Console.WriteLine("平局");
}
else if (n == 1)
{
Console.WriteLine("您赢了");
}
else
{
Console.WriteLine("电脑赢");
} }
else if (m == 1)
{
if (n == 1)
{
Console.WriteLine("平局");
}
else if (n == 2)
{
Console.WriteLine("您赢了");
}
else
{
Console.WriteLine("电脑赢");
}
}
else if (m == 2)
{
if (n == 2)
{
Console.WriteLine("平局");
}
else if (n == 1)
{
Console.WriteLine("您赢了");
}
else
{
Console.WriteLine("电脑赢");
}
}
else
{
Console.WriteLine("你输入的内容有误");
} Console.ReadKey(); }
#endregion
#region //try catch异常捕获应用

            bool b = true;//让代码满足某些条件去执行的话,使用bool类型
int n = 0;//声明一个变量赋一个初值0
Console.WriteLine("请输入一个数字");
try//把可能出异常的代码踹下
{
n = Convert.ToInt32(Console.ReadLine());
}
catch
{
Console.WriteLine("你输入的内容不能转换为数字");
b = false; }
if (b == true)
{
Console.WriteLine(n * 2);//b==true 这句代码才会输出
}
#endregion

C#编程--第三天的更多相关文章

  1. Javascript模块化编程(三):require.js的用法

    Javascript模块化编程(三):require.js的用法 原文地址:http://www.ruanyifeng.com/blog/2012/11/require_js.html 作者: 阮一峰 ...

  2. 5天玩转C#并行和多线程编程 —— 第三天 认识和使用Task

    5天玩转C#并行和多线程编程系列文章目录 5天玩转C#并行和多线程编程 —— 第一天 认识Parallel 5天玩转C#并行和多线程编程 —— 第二天 并行集合和PLinq 5天玩转C#并行和多线程编 ...

  3. 【转】apue《UNIX环境高级编程第三版》第一章答案详解

    原文网址:http://blog.csdn.net/hubbybob1/article/details/40859835 大家好,从这周开始学习apue<UNIX环境高级编程第三版>,在此 ...

  4. WCF编程系列(三)地址与绑定

    WCF编程系列(三)地址与绑定   地址     地址指定了接收消息的位置,WCF中地址以统一资源标识符(URI)的形式指定.URI由通讯协议和位置路径两部分组成,如示例一中的: http://loc ...

  5. 转:JavaScript函数式编程(三)

    转:JavaScript函数式编程(三) 作者: Stark伟 这是完结篇了. 在第二篇文章里,我们介绍了 Maybe.Either.IO 等几种常见的 Functor,或许很多看完第二篇文章的人都会 ...

  6. 【unix网络编程第三版】阅读笔记(五):I/O复用:select和poll函数

    本博文主要针对UNP一书中的第六章内容来聊聊I/O复用技术以及其在网络编程中的实现 1. I/O复用技术 I/O多路复用是指内核一旦发现进程指定的一个或者多个I/O条件准备就绪,它就通知该进程.I/O ...

  7. 【unix网络编程第三版】阅读笔记(三):基本套接字编程

    unp第三章主要介绍了基本套接字编程函数.主要有:socket(),bind(),connect(),accept(),listen()等. 本博文也直接进入正题,对这几个函数进行剖析和讲解. 1. ...

  8. 脑残式网络编程入门(三):HTTP协议必知必会的一些知识

    本文原作者:“竹千代”,原文由“玉刚说”写作平台提供写作赞助,原文版权归“玉刚说”微信公众号所有,即时通讯网收录时有改动. 1.前言 无论是即时通讯应用还是传统的信息系统,Http协议都是我们最常打交 ...

  9. 斐波那契数列-java编程:三种方法实现斐波那契数列

    题目要求:编写程序在控制台输出斐波那契数列前20项,每输出5个数换行 斐波那契数列指的是这样一个数列:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, … 这个数列 ...

  10. [Java并发编程(三)] Java volatile 关键字介绍

    [Java并发编程(三)] Java volatile 关键字介绍 摘要 Java volatile 关键字是用来标记 Java 变量,并表示变量 "存储于主内存中" .更准确的说 ...

随机推荐

  1. React(3) --react绑定属性

    react绑定属性 /* react绑定属性注意: class要换成className for要换成 htmlFor style: <div style={{"color": ...

  2. Java疯狂讲义笔记——Lambda表达式

    Java8新增的Lambda表达式 [特性]支持将代码块作为方法参数,Lambda表达式允许使用更简洁的代码来创建只有一个抽象方法的接口(这种接口被称为函数式接口)的实例. [组成部分]1,形参列表 ...

  3. Spark- Spark从SFTP中读取zip压缩文件数据做计算

    我们遇到个特别的需求,一个数据接入的流程跑的太慢,需要升级为用大数据方式去处理,提高效率. 数据: 数据csv文件用Zip 压缩后放置在SFTP中 数据来源: SFTP 数据操作: 文件和它的压缩包一 ...

  4. 解释ARP协议和RARP协议

    解释ARP(地址解析协议) 首先,每个主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示IP地址和MAC地址之间的对应关系. 当源主机要发送数据时,首先检查ARP列表中是否有对应IP地址的目的主 ...

  5. Axis2 客户端调用 设置超时时间

    我用的是axis2-1.6.2版本.请看下面的客户端代码: import org.apache.axis2.client.Options; import com.ctis.ta.service.imp ...

  6. 阿里腾讯校招Java面试题总结及答案

    阿里校招java面试题汇总 1.HashMap和HashTable的区别,及其实现原理. Hashtable继承自Dictionary类,而HashMap是Java1.2引进的,继承自Abstract ...

  7. MySQL系列之三查询优化

    通常来说,查询的生命周期大致可以按照顺序来看从客户端到服务端,然后在服务器上进行解析,生产执行计划, 执行,并返回结果给客户端.其中的执行阶段可以认为是整个生命周期中最重要的阶段,其中包括了大量为了检 ...

  8. globalAlpha 示例

    代码实例: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...

  9. HTML5 arc的例子

    demo.html <!DOCTYPE html> <html lang="zh"> <head> <meta charset=" ...

  10. vue将页面导出成pdf

    npm i jspdf-html2canvas prinOut(){ // 导出pdf let page = document.querySelector('.app-main'); // page ...