C#语句2——循环语句(for循环与for循环嵌套)
循环:反复执行某段代码。
循环四要素:初始条件,循环条件,循环体,状态改变。
for(初始条件;循环条件;状态改变)
{
循环体
}
break ——中断循环,跳出整个循环
continue——停止本次循环,进入下次循环。
注:●执行步骤:初始条件——循环条件——循环体——状态改变。
●死循环:出不来,一直在执行
for (; ; )
{
Console.WriteLine("你好");
}
一、for循环例题
1、找出100以内与7有关的数并打印:(1).从1找到100(2).找出与7有关的数
●个位数是7 a%10==7
●十位数是7 a/10 ==7
●能被7整除 a%7 ==0
for (int i = 1; i <= 100; i++)
{
if (i % 10 == 7 || i / 10 == 7 || i % 7 == 0)
{
Console.Write(i+"\t");
}
}
Console.ReadLine();
2、输入一个正整数,求1~这个数的阶乘
Console.Write("请输入一个正整数:");
int a = int.Parse(Console.ReadLine());
int b=1;
for (int n = 1; n <= a; ++n)
{
b = b * n;
}
Console.WriteLine("这个数字的乘积是:"+b);
Console.ReadLine();
3、一个游戏,前20关是每一关自身的分数,,21-30关每一关是10分,31-40关,每一关是20分,41-49关,每一关是30分,50关,是100分,输入你现在闯到的关卡数,求你现在拥有的分数。两种做法:if嵌套for for嵌套if
法一:
Console.Write("请输入您现在闯到的关卡数:");
int a = int.Parse(Console.ReadLine());
int sum = 0;
if (a >= 1 && a <= 50)
{
if (a <= 20)
{
for (int i = 1; i <= a; i++)
{
sum += i;
}
}
else if (a <= 30)//a>20&&a<=30
{
for (int i = 1; i <= 20; i++)
{
sum += i;
}
for (int i = 21; i <= a; i++)
{
sum += 10;
}
}
else if (a <= 40)//a>30&&a<=40
{
for (int i = 1; i <= 20; i++)
{
sum += i;
}
for (int i = 21; i <=30; i++)
{
sum += 10;
}
for (int i = 31; i <= a; i++)
{
sum += 20;
}
}
else if (a <= 49)
{
for (int i = 1; i <= 20; i++)
{
sum += i;
}
for (int i = 21; i <= 30; i++)
{
sum += 10;
}
for (int i = 31; i <= 40; i++)
{
sum += 20;
}
for (int i = 41; i <= a; i++)
{
sum += 30;
}
}
else//a==50
{
for (int i = 1; i <= 20; i++)
{
sum += i;
}
for (int i = 21; i <= 30; i++)
{
sum += 10;
}
for (int i = 31; i <= 40; i++)
{
sum += 20;
}
for (int i = 41; i <= 49; i++)
{
sum += 30;
}
sum += 100;
}
}
else
{
Console.WriteLine("输入有误!");
}
Console.WriteLine("您的分数为:"+sum);
Console.ReadLine();
法二:
Console.Write("请输入您现在闯到的关卡数:");
int a = int.Parse(Console.ReadLine());
int sum = 0;
if (a >= 1 && a <= 50)
{
for (int i = 1; i <= a; i++)
{
if (i <= 20)
{
sum += i;
}
else if (i <= 30)//i>20&&i<=30
{
sum += 10;
}
else if (i <= 40)
{
sum += 20;
}
else if (i <= 49)
{
sum += 30;
}
else
{
sum += 100;
}
}
}
else
{
Console.WriteLine("输入有误!");
}
Console.WriteLine("您的分数是:"+sum);
Console.ReadLine();
4、篮球弹起问题,篮球初始所在高度是20米。每次弹起是上一次的五分之四,输入次数,求篮球弹起高度。
Console.Write("请输入次数:");
int a = int.Parse(Console.ReadLine());
double h = 20;
for (int i = 1; i <= a; i++)
{
h = h * 4 / 5;
}
Console.WriteLine("经过{0}次弹起,篮球高度是:{1}",a,h);
Console.ReadLine();
5、折纸:有一张超大的纸,可以无限次折叠,厚度为0.07毫米。问,折叠多少次可以超过珠峰的高度(8848米)。
int ci = 0;//标记变量,标记总共运行几次
double h = 0.07;//8848m=8848000
for (; ; )
{
ci++;
h *= 2;//h=h*2;
if (h > 8848000)
{
break;
}
}
Console.WriteLine("经过{0}次折叠,可以超过珠峰的高度。高度为:{1}米",ci,h/1000);
Console.ReadLine();
二、for循环的嵌套例题
1、输入一个整数,求1!+2!+...+n!
法一、
Console.Write("请输入一个正整数:");
int a = int.Parse(Console.ReadLine());
int sum = 0;
int jie = 1;
for (int i = 1; i <= a; i++)
{
jie *= i;
sum += jie;
}
Console.WriteLine("结果是:" + sum);
Console.ReadLine();
法二、嵌套
Console.Write("请输入一个正整数:");
int a = int.Parse(Console.ReadLine());
int sum = 0;
for (int i = 1; i <= a; i++)
{
int jie = 1;
for (int j = 1; j <= i; j++)
{
jie *= j;
}
sum += jie;
}
Console.WriteLine("结果是:" + sum);
Console.ReadLine();
2、九九乘法表
for (int i = 1; i <= 9; i++)
{
for (int j = 1; j <= i; j++)
{
Console.Write("{0}*{1}={2} \t", j, i, i * j);
}
Console.WriteLine();
}
Console.ReadLine();
3、打印四个方向的三角形
●直角在左下方
for (int i = 1; i <= 5; i++)
{
for (int j = 1; j <= i; j++)
{
Console.Write("★");
}
Console.WriteLine();
}
Console.ReadLine();
●直角在左上方
for (int i = 1; i <= 5; i++)
{
for (int j = 1; j <= 6 - i; j++)
{
Console.Write("★");
}
Console.WriteLine();
}
Console.ReadLine();
●直角在右下方
for (int i = 1; i <= 5; i++)
{
for (int j = 1; j <= 5 - i; j++)
{
Console.Write(" ");
}
for (int j = 1; j <= i; j++)
{
Console.Write("★");
}
Console.WriteLine();
}
Console.ReadLine();
●直角在右上方
for (int i = 1; i <= 5; i++)
{
for (int j = 1; j <= i - 1; j++)
{
Console.Write(" ");
}
for (int j = 1; j <= 6 - i; j++)
{
Console.Write("★");
}
Console.WriteLine();
}
Console.ReadLine();
3、打印菱形
Console.Write("请输入一个数:");
int a = int.Parse(Console.ReadLine());
for (int i = 1; i <= a; i++)
{
for (int j = 1; j <= a - i; j++)
{
Console.Write(" ");
}
for (int j = 1; j <=2*i-1; j++)
{
Console.Write("★");
}
Console.WriteLine();
}
for (int i = 1; i < a; i++)
{
for (int j = 1; j <= i; j++)
{
Console.Write(" ");
}
for (int j = 1; j <= 2 *(a-i) - 1; j++)
{
Console.Write("★");
}
Console.WriteLine();
}
Console.ReadLine();
4、输入任意数,打印出对应三角形
Console.Write("请输入一个数:");
int a = int.Parse(Console.ReadLine());
for (int i = 1; i <= a; i++)
{
for (int j = 1; j <= i; j++)
{
Console.Write("★");
}
Console.WriteLine();
}
Console.ReadLine();
C#语句2——循环语句(for循环与for循环嵌套)的更多相关文章
- while + else 使用,while死循环与while的嵌套,for循环基本使用,range关键字,for的循环补充(break、continue、else) ,for循环的嵌套,基本数据类型及内置方法
今日内容 内容概要 while + else 使用 while死循环与while的嵌套 for循环基本使用 range关键字 for的循环补充(break.continue.else) for循环的嵌 ...
- Python语法基础03(if语句,while循环与for循环)
if语句:语法:单分支if 判断条件:语句块 执行过程:首先执行判断条件,当条件成立则执行判断条件下面的语句块,若条件不成立,则不执行 双分支if 判断条件:语句块1else:语句块2执行过程: 首先 ...
- for循环与for循环嵌套
今天温习了下分支语句跟for循环,主要讲解了for循环嵌套,这里开始有点迷糊了,整理下思路在做练习 for循环嵌套用我自己的大白话来说就是一个外圈的for程序里面一个套着一个小的for程序,如果在范围 ...
- python while循环与for循环
今天刚看了一下python的while和for循环,所以打算记录一下: while语句是python中的循环条件语句,while 判断条件 : pass break 例如: i = 1 sum = 1 ...
- for循环与while循环
1.两中循环的语法结构 for循环结构: for(表达式1;表达式2;表达式3) { 执行语句; } while循环结构: while(表达式1) { 执行语句; } 2.两者区别: 应用场景:由于f ...
- 13 shell while循环与until循环
while 循环是 Shell 脚本中最简单的一种循环,当条件满足时,while 重复地执行一组语句,当条件不满足时,就退出 while 循环. unti 循环和 while 循环恰好相反,当判断条件 ...
- 房上的猫:while循环与do-while循环,debug的调试运用
一.循环结构 1.循环不是无休止进行的,满足一定条件的时候循环才会继续,称为"循环条件",循环条件不满足的时候,循环退出 2.循环结构是反复进行相同的或类似的一系列操作,称为&qu ...
- 浅谈C#中的for循环与foreach循环
for循环和foreach循环其实可以算得上是从属关系的,即foreach循环是可以转化成for循环,但是for循环不一定能转换成foreach循环. 下面简单介绍一下两种循环: 1.for循环 代码 ...
- 3.2.1 for循环与while循环的基本语法
不停地重复一件事情,时间久了会非常无聊,然后大脑就会由于疲劳而容易入睡. 重复性的劳动会使人疲劳,而计算机不会,只要代码写得正确,计算机就会孜孜不倦地重复工作.在Python中主要有两种形式的循环结构 ...
随机推荐
- SQL Server 索引和表体系结构(非聚集索引)
非聚集索引 概述 对于非聚集索引,涉及的信息要比聚集索引更多一些,由于整个篇幅比较大涉及接下来的要写的“包含列的索引”,“索引碎片”等一些知识点,可能要结合起来阅读理解起来要更容易一些.非聚集索引和聚 ...
- salesforce 零基础学习(五十八)通过sObject的field返回其对应的基础类型
项目中有时候会要求通过sObject的Field的type类型返回其对应的基本类型,然后对其进行相关的处理,创建sObject的field可以选择的type类型是固定多的. 上述类型可以转换成几种基本 ...
- 阿里云ECS安装lnmp环境-转载自:http://ninghao.net/blog/1368
远程控制你的服务器 远程控制 Linux 类型的系统的服务器,比如 CentOS 系统的服务器,一般不像 Windows 服务器那样,使用图形界面的远程控制.我们需要使用命令行工具,远程连接到服务器, ...
- WCF学习之旅—HTTP双工模式(二十)
WCF学习之旅—请求与答复模式和单向模式(十九) 四.HTTP双工模式 双工模式建立在上文所实现的两种模式的基础之上,实现客户端与服务端相互调用:前面介绍的两种方法只是在客户端调用服务端的方法,然后服 ...
- 在 CSS 预编译器之后:PostCSS
提到css预编译器(css preprocessor),你可能想到Sass.Less以及Stylus.而本文要介绍的PostCSS,正是一个这样的工具:css预编译器可以做到的事,它同样可以做到. “ ...
- ASP.NET Core 中文文档 第二章 指南(4.9)添加验证
原文:Adding Validation 作者:Rick Anderson 翻译:谢炀(Kiler) 校对:孟帅洋(书缘).娄宇(Lyrics).许登洋(Seay) 在本章节中你将为 Movie 模型 ...
- .NET正则表达式基础入门
这是我第一次写的博客,个人觉得十分不容易.以前看别人写的博客文字十分流畅,到自己来写却发现十分困难,还是感谢那些为技术而奉献自己力量的人吧. 本教程编写之前,博主阅读了<正则指引>这本入门 ...
- Autofac 组件、服务、自动装配 《第二篇》
一.组件 创建出来的对象需要从组件中来获取,组件的创建有如下4种(延续第一篇的Demo,仅仅变动所贴出的代码)方式: 1.类型创建RegisterType AutoFac能够通过反射检查一个类型,选择 ...
- 浅谈Static关键字
1.使用static关键字声明的属性为全局属性 未使用static关键字指定city之前,如果需要将Tom,Jack,Mary三人的城市均改成Beijing,需要再次声明三次对象的city为Beiji ...
- html文本垂直居中对齐
html文本垂直居中对齐,代码如下: <div id="box" style="height:100px; line-height:100px; border:1p ...