五一放假三天

······续写第三天的if else-if、if语句的嵌套、很多例题(还有很多没有整理好的)

5.4下午初步学习循环语句for 老师布置了几个小练习题

循环语句

循环:可以反复执行某段代码,直到不满足循环条件为止。
    循环的四要素:初始条件、循环条件、状态改变、循环体
    1、初始条件:循环最开始的状态
    2、循环条件:在什么条件下进行循环,不满足此条件,则循环终止。
    3、状态改变:改变循环变量值,最终不满足循环条件,从而停止循环。
    4、循环体:要反复执行的部分。

#程序调试#
   
    1、写完一段程序后,想看下这段程序的执行过程。
    2、当你写完这段程序后,发现程序并没有按照你想象的样子去执行。
   
    调试方法:
    1、F11逐语句调试(单步调试)
    2、F10逐过程调试
  3、断点调试:找到断点要设置断点的代码在代码左侧灰色条处点击鼠标左键。或者,选中代码,按F9设置断点

for 循环:

语法:
    for (表达式1;表达式2;表达式3)
    {
        循环体;
    }
   
    输入方式:打完for紧接着按两下Tab
   
    表达式1:一般为声明的循环变量,记录循环的次数(int i=0;)
    表达式2:一般为循环条件(i<10)
    表达式3:一般为改变循环条件的代码,使循环条件终有一天不再成立(i++)
   
    执行过程:程序首先执行表达式1,声明了一个循环变量用来记录循环的次数,然后执行表达式2,判断循环条件是否成立,如果表达式2返回的结果为true,则执行循环体,当执行完循环体后,执行表达式3,然后执行表达式2继续判断循环条件是否成立,如果成立则继续执行循环体,如果不成立则跳出for循环。
   
    forr + 两下tab  :逆向for循环
   
    水仙花数:百位的立方+十位的立方+个位的立方==当前这个百位数
              例如:1+5^3+3^3==153

for 循环的嵌套:可以做99乘法表
当遇到某个事情要做一遍,而另外一个事情要做n遍的时候,就要用到for循环嵌套

for 循环用来解决两大类问题:穷举、迭代

for 穷举法
用循环把各种可能的情况都走一遍,然后用if条件把满足要求的结果给筛选出来。
例如:
1、找100以内的与7有关的数
2、小明单位发了一百元的购物卡,他到超市买洗化用品,一是洗发水(15元),二是香皂(2元),三是牙刷(5元)怎么可以正好把一百元花完。
3、公鸡两文钱一只,母鸡一文钱椅子,小鸡半文钱一只,花100文钱买100只鸡,该如何购买?
4、大马驮2石粮食,中马驮1石粮食,两头小马驮一旦粮食,要用100匹马,驮100石粮食,该如何调配
5、有一分钱、两分钱、五分钱硬币,要组合出两角有哪些组合方法。
6、侦察兵A和B两人中至少去一人;
A和D不能一起去;
A、E和F三人中要派两人去;
B和C都去或都不去; 注释:
C和D两人中去一个;
若D不去,则E也不去。
问应当让哪几个人去?

for 迭代法

有一定规律,从初始情况按照规律不断求解中间情况,最终推导出结果。
例如:
1、100以内所有整数的和 2、公园里有一只猴子和一堆桃子,猴子每天吃掉桃子总数的一半,把剩下一半中扔掉一个坏的。到第七天的时候,猴子睁开眼发现只剩下一个桃子。问公园里刚开始有多少个桃子?
3、五个小朋友排成一队。问第一个多大了,第一个说比第二个大两岁,问第二个,第二个说比第三个大两岁,以此类推。问第五个小朋友几岁了,第五个小朋友说3岁了。问第一个小朋友几岁?

4、一张纸厚度是0.07毫米,假设这张纸可以限次对折,问对折几次可以超过珠峰?8848米
5、国际象棋64格。堆米。问第64个格上会放多少粒米?

例题:

/*
(一)100以内与7相关的数。
1.从1一直找到100
2.对每个数判断是否满足以下条件之一
能被7整除 a%7==0
个位是7 a%10 == 7
十位是7 a/10==7
(二)简陋的彩票生成器。
(三)求100以内所有数的和。
*/ for (int i = ; i <= ; i++)
{
if (i % == || i % == || i / == )
console.write(i + "\t");
} random r=new random();//随机数生成器 for (int i = ; i < ; i++)//for循环
{
int a = r.next();//声明a来接受生成的随机数 随机数范围100以内
console.write(a+"\t");//不换行输出生成的随机数并且用tab分开,for每循环一次输出一个,直到循环条件不成立。
} int sum = ;//声明一个int变量 赋初值0
for (int i = ; i <= ; i++)
{
sum = sum + i;//求100以内整数相加的和 console.write(sum+"\t");//循环内效果
} console.writeline("\n\n\n\t\v"+sum);//循环外效果 int sum = ;
for (int i = ; i <= ; i++)
{
if ((i - ) % == )
{
sum = sum + i;
}
}
console.writeline(sum); int sum = ;
for (int i = ; i <= ; i+=)//i+=2 => i=i+2 偶数
{ //console.write(i + "\t");
console.write(i + "\t");
sum = sum + i;
}
console.writeline(sum);//100以内偶数之和

预习:while

(当什么什么的时候)

while(循环条件)
{
    循环体;
}
执行过程:程序运行到while时,首先判断while所带的小括号内的循环条件是否成立,如果成立(返回true),则执行循环体。执行完一遍,在回到循环条件进行判断,如果依然成立,则继续执行循环体,如果不成立,则跳出while循环。在 while 循环当中,一般总会有那么一行代码能够改变循环条件,使之终有一天不再成立,如果没有那么一行代码能够改变循环条件,也就是循环条件永远成立,称之为死循环。
最简单的最常用的死循环:
while (true)
{
   
}

循环不好写:写注释:先分析出(循环体)是什么,在去想(循环条件)

break 关键字的作用: 1、跳出 switch-case 结构。
                     2、跳出 当前循环。
       
break一般不单独的使用,而是跟着if判断一起使用,表示,当满足某些条件的时候,就不再循环了。

do-while 循环
遇见首先执行一遍循环体,拿着执行后的结果再去判断是否执行循环的循环,推荐使用do-while循环。

语法:
do
{
    循环体;
}while (循环条件);
执行过程:程序首先会执行do中的循环体,执行完成后,去判断do-while循环的循环条件,如果成立,则继续执行do中的循环体,如果不成立,则跳出do-while循环。
特点:先循环,再判断,最少执行一遍循环体。

while 和 do-while 推荐掌握while

C#编程—第四天的更多相关文章

  1. AOP面向切面编程的四种实现

     一.AOP(面向切面编程)的四种实现分别为最原始的经典AOP.代理工厂bean(ProxyFacteryBean)和默认自动代理DefaultAdvisorAutoProxyCreator以及Bea ...

  2. 5天玩转C#并行和多线程编程 —— 第四天 Task进阶

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

  3. WCF编程系列(四)配置文件

    WCF编程系列(四)配置文件   .NET应用程序的配置文件 前述示例中Host项目中的App.config以及Client项目中的App.config称为应用程序配置文件,通过该文件配置可控制程序的 ...

  4. Java 网络编程(四) InetAddress类

    链接地址:http://www.cnblogs.com/mengdd/archive/2013/03/09/2951895.html Java 网络编程(四) InetAddress类 InetAdd ...

  5. 脑残式网络编程入门(四):快速理解HTTP/2的服务器推送(Server Push)

    本文原作者阮一峰,作者博客:ruanyifeng.com. 1.前言 新一代HTTP/2 协议的主要目的是为了提高网页性能(有关HTTP/2的介绍,请见<从HTTP/0.9到HTTP/2:一文读 ...

  6. [Java并发编程(四)] Java volatile 的理论实践

    [Java并发编程(四)] Java volatile 的理论实践 摘要 Java 语言中的 volatile 变量可以被看作是一种 "程度较轻的 synchronized":与 ...

  7. 并发编程(四)TaskFuture

    并发编程(四)TaskFuture ExecutorService executorService = Executors.newSingleThreadExecutor(); Future<O ...

  8. C#中的函数式编程:递归与纯函数(二) 学习ASP.NET Core Razor 编程系列四——Asp.Net Core Razor列表模板页面

    C#中的函数式编程:递归与纯函数(二)   在序言中,我们提到函数式编程的两大特征:无副作用.函数是第一公民.现在,我们先来深入第一个特征:无副作用. 无副作用是通过引用透明(Referential ...

  9. Scala函数式编程(四)函数式的数据结构 下

    前情提要 Scala函数式编程指南(一) 函数式思想介绍 scala函数式编程(二) scala基础语法介绍 Scala函数式编程(三) scala集合和函数 Scala函数式编程(四)函数式的数据结 ...

  10. 《Java 8实战》读书笔记系列——第三部分:高效Java 8编程(四):使用新的日期时间API

    https://www.lilu.org.cn/https://www.lilu.org.cn/ 第十二章:新的日期时间API 在Java 8之前,我们常用的日期时间API是java.util.Dat ...

随机推荐

  1. SCM

    scm即软件配置管理. 软件配置管理(SCM)是指通过执行版本控制.变更控制的规程,以及使用合适的配置管理软件,来保证所有配置项的完整性和可跟踪性,配置管理是对工作成果的一种有效保护. SCM(Sof ...

  2. VisualVM监控远程主机

    参考博客 https://blog.csdn.net/u010004317/article/details/82948040 https://blog.csdn.net/lienfeng6/artic ...

  3. jquery 小知识

    $("p:eq(0)") :表p标签的第一个元素 $("p:eq(1)") :表p标签的第二个元素

  4. BZOJ4386 [POI2015]Wycieczki 矩阵+倍增

    题目传送门 https://lydsy.com/JudgeOnline/problem.php?id=4386 题解 一眼就可以看出来是邻接矩阵快速幂. 可是这里的边权不为 \(1\).不过可以发现, ...

  5. python之pandas模块高级用法

    一 agg,聚合,可以使用内置的函数 >>> import pandas as pd >>> import numpy as np >>> pp ...

  6. sql 中 exists用法

    SQL中EXISTS的用法   比如在Northwind数据库中有一个查询为SELECT c.CustomerId,CompanyName FROM Customers cWHERE EXISTS(S ...

  7. 在VMware中配置网卡之NAT模式

    为什么要在VMware中配置网卡? 因为在远程连接服务器时,需要虚拟机连接网络 虚拟机网络配置的三种模式:桥接模式,NAT模式,主机模式 NAT模式也称之为网络转换模式,两层路由: 第一层路由:物理机 ...

  8. php strtoupper()函数 语法

    php strtoupper()函数 语法 作用:把所有字符转换为大写 语法:strtoupper(string) 参数: 参数 描述 string 必须,规定要转换的字符串 说明:strtouppe ...

  9. Python中的时间模块和日期模块

    Python 日期和时间 Python 程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能. Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间. 时间间 ...

  10. 部署Jenkins完整记录

    Jenkins通过脚本任务触发,实现代码的自动化分发,是CI持续化集成环境中不可缺少的一个环节.下面对Jenkins环境的部署做一记录.-------------------------------- ...