C#编程—第四天

五一放假三天

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

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

循环语句

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

#程序调试#
   
    1、写完一段程序后,想看下这段程序的执行过程。
    2、当你写完这段程序后,发现程序并没有按照你想象的样子去执行。
   
    调试方法:
    1、F11逐语句调试(单步调试)
    2、F10逐过程调试
    3、断点调试

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循环嵌套

例题:

/*
            (一)100以内与7相关的数。
                    1.从1一直找到100
                    2.对每个数判断是否满足以下条件之一
                        能被7整除 a%7==0
                        个位是7    a%10 == 7
                        十位是7 a/10==7
            (二)简陋的彩票生成器。
            (三)求100以内所有数的和。
              */  

              for (int i = 1; i <= 100; i++)
            {
               if (i % 7 == 0 || i % 10 == 7 || i / 10 == 7)
                   console.write(i + "\t");
            }

            random r=new random();//随机数生成器

            for (int i = 0; i < 6; i++)//for循环
            {
               int a = r.next(100);//声明a来接受生成的随机数 随机数范围100以内
               console.write(a+"\t");//不换行输出生成的随机数并且用tab分开,for每循环一次输出一个,直到循环条件不成立。
            }

            int sum = 0;//声明一个int变量 赋初值0
            for (int i = 0; i <= 100; i++)
            {
               sum = sum + i;//求100以内整数相加的和

               console.write(sum+"\t");//循环内效果
            }

            console.writeline("\n\n\n\t\v"+sum);//循环外效果

            int sum = 0;
            for (int i = 0; i <= 100; i++)
            {
               if ((i - 1) % 2 == 0)
               {
                   sum = sum + i;
               }
            }
            console.writeline(sum);

            int sum = 0;
            for (int i = 0; i <= 100; i+=2)//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

时间: 2024-08-25 09:26:11

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

关于shell脚本基础编程第四篇

shell脚本基础编程第四篇本章主要内容:函数 函数 function:             function 名称 { 命令 ; } 或 name () { 命令 ; }           定义 shell 函数.               创建一个以 NAME 为名的 shell 函数.当作为一个简单的命令启用时,           NAME 函数执行调用 shell 的上下文中的 COMMANDs 命令.当 NAME           被启用时,参数作为 $1...$n 被传递

生活编程(四)——学校图书馆简化

    每次在信号不好的图书馆打开图书检索的主页就是漫长的等待. 其实,所以便萌生了一个想法.我只要简单一个form就可以了.然后嵌入到移动设备就可以了.图书馆后台的查询处理是这样的 http://library.com/searchresult.aspx?anywords=%b7%bd%b7%a8&dt=ALL&cl=ALL&dp=20&sf=M_PUB_YEAR&ob=DESC&sm=table&dept=ALL anywords就是关键,之前以

面向对象编程(十四)——面向对象三大特性之多态②

面向对象最核心的机制——动态绑定,也叫多态. 通过下面的例子理解动态绑定,即多态 1 package javastudy.summary; 2 3 class Animal { 4 /** 5 * 声明一个私有的成员变量name. 6 */ 7 private String name; 8 9 /** 10 * 在Animal类自定义的构造方法 11 * @param name 12 */ 13 Animal(String name) { 14 this.name = name; 15 } 16

【UNIX网络编程(四)】TCP套接字编程详细分析

引言: 套接字编程其实跟进程间通信有一定的相似性,可能也正因为此,stevens这位大神才会将套接字编程与进程间的通信都归为"网络编程",并分别写成了两本书<UNP1><UNP2>.TCP套接字编程是套接字编程中非常重要的一种,仔细分析,其实它的原理并不复杂.现在就以一个例子来详细分析TCP套接字编程. 一.示例要求: 本节中试着编写一个完成的TCP客户/服务器程序示例,并对它进行深入的探讨.该示例会用到绝大多数的基本函数,未用到但比较重要的函数会在后面的补充上

iOS多线程编程(四)------ GCD(Grand Central Dispatch)

一.简介 是基于C语言开发的一套多线程开发机制,也是目前苹果官方推荐的多线程开发方法,用起来也最简单,只是它基于C语言开发,并不像NSOperation是面向对象的开发,而是完全面向过程的.如果使用GCD,完全由系统管理线程,我们不需要编写线程代码.只需定义想要执行的任务,然后添加到适当的调度队列(dispatch_queue).GCD会负责创建线程和调度你的任务,系统会直接提供线程管理. 二.任务和队列 GCD中有两个核心概念 (1)任务:执行什么操作 (2)队列:用来存放任务 GCD的使用就

嵌入式 Linux系统编程(四)——文件属性

嵌入式 Linux系统编程(四)--文件属性 一.文件属性概述 Linux 文件的属性主要包括:文件的节点.种类.权限模式.链接数量.所归属的用户和用户组.最近访问或修改的时间等内容.文件属性示例如下: 多个文件属性查看: ls -lih 1341714 -rw-r--r-- 1 root root 2.5K May 28 10:24 bit_marco.c 1341718 -rw-r--r-- 1 root root 2.1K May 28 09:08 bit_marco.c~ 1341706

shell编程(四)--- 条件判断之if判断

单分支if语句 if 判断条件;then     statement1     statement2 fi 双分支if语句 if 判断条件;then     statement1     statement2     -- else     statement3     statement4     -- fi 多分支if语句 if 判断条件1;then     statement1     statement2     -- elif 判断条件2;then     statement3    

并发编程实践四:实现正确和高效的锁

你是否觉得锁是一种很神奇的东西,在并发编程中,你只需要将你的代码加上锁,就能保证代码是线程安全的(当然现实和感觉有很大差别,代码的线程安全是非常复杂的),那么,这些都是怎么做到的呢?当存在大量线程同时竞争锁时,竞争失败的锁会怎么做呢?锁又是怎么保证这一切高效的执行的呢?这篇文章将为你回答这些问题,首先我将介绍怎样实现一个正确的锁,然后介绍高效的锁应该具备的条件,最后将介绍两种常用的队列锁算法:CLH锁和MCS锁. 文中将用到一些原子变量的特性,你可以将原子变量看作加强版的volatile变量,具

嵌入式 Linux网络编程(四)——Select机制

嵌入式 Linux网络编程(四)--Select机制 一.select工作机制 poll和select,都是基于内核函数sys_poll实现的,不同在于在linux中select是从BSD Unix系统继承而来,poll则是从SYSTEM V Unix系统继承而来,因此两种方式相差不大.poll函数没有最大文件描述符数量的限制.poll和 select与一样,大量文件描述符的数组被整体复制于用户态和内核的地址空间之间,开销随着文件描述符数量的增加而线性增大. select需要驱动程序的支持,驱动

c语言之良好的编程习惯(四)

1.在编写程序时,尽量减少内存的开销. 2.注释的内容要清楚明了,含义准确,防止二义性. 3.注释不要用缩写. 4.注释应与描述的代码相近,对代码的注释应放在代码的上方或右方. 5.编写程序使用缩进可以减少很多不必要的语法错误,同时也非常有利于调试. 6.在编辑实现一定功能的C语言程序时,首先要有一个清晰的思路,例如需要实现什么功能,关键是什么.语句流怎样控制.虽然不一定写出来,但至少心里有数. 7.养成边写边调试的习惯. 8.编译之前仔细检查是否有人为造成的编写错误,以免浪费时间. 9.在对运