五一放假三天

······续写第三天的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. Kotlin 匿名内部类对象引用当前Activity的this用法

    一,Kotlin中匿名内部类,引用Activity的this用法为 this@MainActivity (对应自己的Activity),还是上代码吧 class Main17Activity : Ap ...

  2. Vue-选项卡切换

    <html> <head> <title>Vue实现tab切换效果</title> <script src="vue.js"& ...

  3. source insight 4.0.86.0安装破解问题

    source insight 4.0.86.0安装过程中碰到导入lic文件一直不正确 解决办法: 需要将SourceInsight\SW_Install\SI4安装及破解文件 目录下的sourcein ...

  4. JVM参数说明

    转载于https://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html文章 JVM参数说明 -Xms:初始堆大小  默认值=物理内存的1 ...

  5. [CodeForces - 1225E]Rock Is Push 【dp】【前缀和】

    [CodeForces - 1225E]Rock Is Push [dp][前缀和] 标签:题解 codeforces题解 dp 前缀和 题目描述 Time limit 2000 ms Memory ...

  6. apache2 配置入门

    ServerRoot "/usr/local/apache2" #服务器根目录 Listen #监听端口 语法格式为Listen [IP地址:]端口 [协议],其中IP地址与协议为 ...

  7. Linux复制命令cp进阶

    cp -a:连同属性和权限也一起复制 cp -i:如果不带该参数,默认覆盖同名文件而不会提醒. cp -u:只拷贝符合以下条件的文件到目标目录:目标目录中不存在的文件或目标目录中文件版本较旧的文件. ...

  8. dotnet 跨平台编译发布

    dotnet publish 命令,bash脚本如下(Windows安装git即可建议sh关联) publish.sh #!/usr/bin/env bash # one line command: ...

  9. Python3解leetcode Maximum SubarrayHouse Robber

    问题描述: You are a professional robber planning to rob houses along a street. Each house has a certain ...

  10. 09-排序2 Insert or Merge(25 分)

    According to Wikipedia: Insertion sort iterates, consuming one input element each repetition, and gr ...