一.循环(重点)

什么时候用循环?

想让一段代码执行多次, 这段代码可能不一样但是一定有一个规律.

1.while 循环

格式: 

while(循环条件)

{

  循环执行的代码;

}

循环的机制:  当循环条件为真, 执行循环体内的代码, 然后再判断循环条件, 为真一直继续这个过程, 知道判断出循环条件为假, 终止并跳出整个while循环.

注意: 

1.一定要在外界定义一个循环变量;

2.一定要在循环的内部更改循环变量!

这两点缺一不可, 不然会陷入死循环!!!

练习:

1> 从键盘上随机输入一个数, 求出这个数的位数

Console.WriteLine("请输入一个数:");
int num = int.Parse(Console.ReadLine());
int i = ;
while (num != )
{
num /= ;
i++;
}
Console.WriteLine(i);

2> 从键盘上随机输入一个数, 求出这个数的二进制

 int i = , c = ;
Console.WriteLine("请输出一个数:");
int num = int.Parse(Console.ReadLine());
while (num != )
{
c += (num % ) * i;
i *= ;
num = num / ; }

2.do while 循环

格式:

do

{

  循环要执行的代码;

}while(循环条件)

练习

1.求使 sum = 1+2+3+4+...+N 小于10000的最大的整数N

int sum = , n = ;
do
{
sum += n;
n++;
} while (sum <= );
n--;
sum -= n;
n--;
Console.WriteLine(""+n+sum);
// 要注意这里n必须要减两次, 第一次是因为sum 多加了上一个n的值,导致直接打印出Sum的值超过了10000, n再减一次是因为那个使sum临界的n的值应当是上一个.

 

3.for循环

格式:

for (初始化循环变量; 循环条件; 循环变量自身的变化)

{

  循环执行的代码;

}

练习

1.打印1-100内既不包含7又不是7的倍数的数

for (int i = ; i <= ; i++)
{
if (!(i % == || i / == || i % == ))
{
Console.WriteLine(i);
}
}

2.打印1-100的奇数之和

int sum = ;
for (int i = ; i <= ; i++)
{
if (i % != )
{
sum += i;
}
}
Console.WriteLine(sum);

3.2continue 和 break

continue 是用来终止本次循环,   也就是说如果在程序执行的过程中遇到了continue 那么在循环执行的代码中continue之后的代码就不会被执行; 直接跳到一下个循环里, 也就是到了"循环变量自身的变化";

break 是用来终止循环, 在程序执行过程中如果遇到break, 那么不管有没有达到循环结束的条件, 整个循环(本层)都会被停止, 提前结束生命;

练习

1.从键盘上输入一个数, 判断这个数是否是质数;

int num = int.Parse(Console.ReadLine());
bool isB = false;
for (int i = ; i < num / ; i++)
{
if (num % i == )
{
isB = true;
break;
}
}
if (!isB)
{
Console.WriteLine("是质数");
}

2.打印图形

            for (int i = ; i <= ; i++)
{
for (int j = ; j <= - i; j++)
{
Console.Write(" ");
}
for (int k = ; k <= i; k++)
{
Console.Write("* ");
}
Console.WriteLine();
}
for (int i = ; i >= ; i--)
{
for (int j = ; j >= i; j--)
{
Console.Write(" ");
}
for (int k = ; k <= i; k++)
{
Console.Write("* ");
}
Console.WriteLine();
}

3.打印九九乘法表

            for (int i = ; i <= ; i++)
{
for (int j = ; j <= i; j++)
{
Console.Write("{0} * {1} = {2} ", j, i, j * i);
}
Console.WriteLine();
}

怎么选择这几种循环呢?

知道循环的次数   使用for 循环

知道循环的条件  使用while循环

也不一定非要这个样, 但是这样选择会让代码和逻辑更清晰简洁一点.

二.一维数组

数组的定义:

1.数据类型[] 数组名 = new 数据类型[数组长度] [  {元素1, 元素2, ...}]; 一开始可以不先赋值

2.数组是存放相同数据类型的容器;

3.数组的访问形式是通过下标的形式    数组名[下标]     下标是从0开始的;

4.数组的下标必须不能越界;

5.数组必须指定长度,  要么直接指定(第二个中括号直接写上长度), 要么间接指定(第二个中括号不写长度, 但必须赋值, 赋值的个数就自动决定了数组的长度);

6.数组是一个整体 , 不能直接参与运算, '=' 号除外;

foreach

专门遍历集合里的元素(只有只读性, 不能改写  只能使用它)

格式:

foreach( 类型 变量 in 集合名)

{

  代码;

}

C#学习笔记03--循环和一维数组的更多相关文章

  1. SaToken学习笔记-03

    SaToken学习笔记-03 如果排版有问题,请点击:传送门 核心思想 所谓权限验证,验证的核心就是一个账号是否拥有一个权限码 有,就让你通过.没有?那么禁止访问! 再往底了说,就是每个账号都会拥有一 ...

  2. 机器学习实战(Machine Learning in Action)学习笔记————03.决策树原理、源码解析及测试

    机器学习实战(Machine Learning in Action)学习笔记————03.决策树原理.源码解析及测试 关键字:决策树.python.源码解析.测试作者:米仓山下时间:2018-10-2 ...

  3. OpenCV 学习笔记03 边界框、最小矩形区域和最小闭圆的轮廓

    本节代码使用的opencv-python 4.0.1,numpy 1.15.4 + mkl 使用图片为 Mjolnir_Round_Car_Magnet_300x300.jpg 代码如下: impor ...

  4. OpenCV 学习笔记03 findContours函数

    opencv-python   4.0.1 1 函数释义 词义:发现轮廓! 从二进制图像中查找轮廓(Finds contours in a binary image):轮廓是形状分析和物体检测和识别的 ...

  5. 《python基础教程(第二版)》学习笔记 语句/循环/条件(第5章)

    <python基础教程(第二版)>学习笔记 语句/循环/条件(第5章) print 'AB', 123 ==> AB 123 # 插入了一个空格print 'AB', 'CD' == ...

  6. C++ GUI Qt4学习笔记03

    C++ GUI Qt4学习笔记03   qtc++spreadsheet文档工具resources 本章介绍创建Spreadsheet应用程序的主窗口 1.子类化QMainWindow 通过子类化QM ...

  7. Redis:学习笔记-03

    Redis:学习笔记-03 该部分内容,参考了 bilibili 上讲解 Redis 中,观看数最多的课程 Redis最新超详细版教程通俗易懂,来自 UP主 遇见狂神说 7. Redis配置文件 启动 ...

  8. Julia 学习笔记(一):数组

    个人向,只会记录一些需要注意的点. 前言 学习 Julia 已经有一段时间了,但是进步缓慢.这一方面是最近代码写得少,一方面是 Julia 学习资料少.中文资料更少,但也有我没做笔记的缘故导致学习效率 ...

  9. xml基础学习笔记03

    继续上篇xml学习笔记,坚持.坚持.再坚持啊.... 本篇主要记录: 35.XML节点的删除与修改 36集.用XML制作RSS订阅源 <?php /* 笔记: 35.XML节点的删除与修改 使用 ...

随机推荐

  1. django-URL之include函数(五)

    三种格式:(1)incude(module,namespace=None) from django.urls import path,include from book import urls url ...

  2. 第三篇 Flask中的request

    每个框架中都有处理请求的机制(request),但是每个框架的处理方式和机制是不同的,下面我们来了解一下Flask的request中都有什么东西 from flask import request 1 ...

  3. 有Bug?你的代码神兽选对了吗

    传说每一个优秀的程序员都有自己专属的镇码神兽 通过 工具网址 http://www.makepic.net/Tool/Image2ascii.html 将自己喜欢的神兽图片转成文本, 可以选择不同的分 ...

  4. 基本的sql 语句

    1,登陆数据库:mysql -u root -p2,退出数据库:exit quit ctr+d3,创建数据库:create database 数据库名 charset=utf84,使用数据库:use ...

  5. vue项目中v-for渲染失败

    在项目中,v-for渲染列表失败,无报错,数组有数据.上网查,好多说是因为动态绑定class的原因,但是经过几番测试,都无效果. 在经过不断尝试,搜索,终于找到原因所在. 问题原因:在v-for循环中 ...

  6. Python基础知识-运算符

    今日学习内容 用户交互 用户交互就是人向机器发出指令,机器分析处理后,给人们返回操作结果(装13的说法).直白地讲,就是人往计算机中输入(input)数据,计算机输出(output)结果.交互的本质就 ...

  7. 基于华为物联网IOT的应用开发 ---界面管理开发

    在前面随笔<基于华为物联网IOT的应用开发 --- 基于.net 的SDK封装>介绍过IOT中应用侧SDK的封装,主要就是基于华为IOT的应用侧封装,以便在应用系统中进行调用.应用侧SDK ...

  8. Spring MVC-------文件上传,单文件,多文件,文件下载

    Spring MVC 框架的文件上传是基于 commons-fileupload 组件的文件上传,只不过 Spring MVC 框架在原有文件上传组件上做了进一步封装,简化了文件上传的代码实现,取消了 ...

  9. 通过ISO镜像简单搭建本地yum仓库

    本文参考链接:https://segmentfault.com/a/1190000015155966 *有时候在我们本地搭建一些Linux上的程序运行环境或者安装一些软件的时候,难免会遇到需要使用yu ...

  10. UiPath之如何打印PDF

    各位小伙伴,大家好,今天写一点基础知识,如何在UiPath中打印PDF. ---小U的QQ群(714733686):小U的订阅号[UiPath8888]--- 当然,我们最希望的就是有一个Activi ...