王尼玛 发表于 2014-10-12 19:24

C#初级开发原创教程第八课 循环结构(二)

本帖最后由 王尼玛 于 2014-10-24 01:13 编辑

大家好,我是王尼玛。今天起我给大家讲解C#开发教程,本次是第八课。大家在课后有什么疑问可以跟帖留言,我会尽我所能来解答。毕竟众口难调,大家有什么建议也可以跟帖告诉我。
此教程为本人原创,转载请注明"吾爱汇编论坛王尼玛原创"
好了,废话不多说,开始今天的学习.

有朋友说不太明白我写的教程,其实编程这东西很简单,一个字,练!你光看我写的多半是一头雾水,因为你没实际跟着我讲的代码去操作,你要跟着我的代码敲,多敲代码,多练习我给的例子,再配合我例子后面的讲解,自然就明白我讲的是什么了.还不明白?跟帖问吧



1.什么是for循环
语法:
for(表达式1,表达式2,表达式3){
   //循环体
}三个表达式的含义:

表达式 形式 功能
表达式1 赋值语句
循环结构的初始部分,为循环变量赋初值

表达式2 条件语句循环结构的循环条件
表达式3 赋值语句,通常使用++或--运算符 循环结构的迭代部分,通常用来修改循环变量的值
for关键字后面括号中的三个表达式必须用";"隔开.for循环中的三个部分以及{}中的循环体使循环结构必需的四个组成部分完美地结合在了一起

2.如何使用for循环
问题:
循环输入某同学结业考试的五门课成绩,并计算平均分
分析:
很明显,循环次数是固定的五次,因此我们首选for循环.使用for循环结构的步骤和使用while/do-while一样,首先要明确循环条件和
循环操作,这里的循环条件是"循环次数不足5次,继续执行",循环操作是"录入成绩,并计算成绩之和"
解决方案:
            int score;//每门课的成绩
            int sum = 0; ;//成绩之和
            double avg = 0.0;//平均分
            for (int i = 0; i < 5;i++ )
            {
                Console.WriteLine("请输入第"+(i+1)+"门成绩:");
                score = int.Parse(Console.ReadLine());
                sum = sum + score;
            }
            avg = sum / 5;//计算平均分
            Console.WriteLine("平均分是" + avg);运行结果:

3.break语句的使用
我们在学习switch结构时,已经使用过break了,break语句用于终止switch语句中的某个分支,使程序跳到switch外的下一条语句,那么在
循环中,break能发挥什么样的作用?
问题:
循环录入五门课的成绩并计算平均分,如果某分数录入为负,停止录入并提示录入错误!
分析:
在录入的过程中,进行条件判断.如果录入为负,立刻跳出循环.我们使用break语句来解决
解决方案:
            int score;//每门课的成绩
            int sum = 0; ;//成绩之和
            double avg = 0.0;//平均分
            bool isNegative = false;//是否为负数
            for (int i = 0; i < 5;i++ )
            {
                Console.WriteLine("请输入第"+(i+1)+"门成绩:");
                score = int.Parse(Console.ReadLine());
                if (score < 0)
                {
                  isNegative = true;
                  break;
                }
                sum = sum + score;
            }
            if(isNegative)
            {
                Console.WriteLine("录入错误");
            }
            else
            {
            avg = sum / 5;//计算平均分
            Console.WriteLine("平均分是" + avg);
            }运行结果:

4.continue语句的使用
根据要求,在循环语句中的if结构中使用break语句跳出循环.但是,可能你也会遇到,在某次循环中,我们不想执行完所有的循环体,就想跳出本次循环开始
执行下一次循环
问题:
循环录入学生C#成绩,统计分数大于80分(包括等于)的学生比例
分析:
使用循环语句录入学生成绩并累计人数,这对我们并不是难题,但是如果仅仅要累积满足分数大于等于80分的人数,该怎么办呢?有一种方法就是使用
continue语句控制累积操作是否进行
解决方案:
            int score= 0;//成绩
            int total;//班级总人数
            int num = 0;//成绩大于等于80的人数
            Console.WriteLine("输入班级总人数");
            total = int.Parse(Console.ReadLine());
            for(int i = 0;i<total;i++)
            {
                Console.WriteLine("请输入第" + (i + 1) + "个学生的成绩");
                score = int.Parse(Console.ReadLine());
                if(score<80)
                {
                  continue;
                }
                num++;
            }
            Console.WriteLine("80分以上的人数是{0}", num);运行结果:


这节课就到这,谢谢大家

王尼玛C#初级开发原创教程目录:
1.C#初级开发原创教程第一课Visual Studio 2013的安装
2.C#初级开发原创教程第二课 控制台的输出
3.C#初级开发原创教程第三课 数据类型转换
4.C#初级开发原创教程第四课 深入控制台应用程序
5.C#初级开发原创教程第五课 bool类型,关系运算符与if选择结构
6.C#初级开发原创教程第六课 复杂选择结构
7.C#初级开发原创教程第七课循环结构(一)
8.C#初级开发原创教程第八课 循环结构(二)
9.C#初级开发原创教程第九课 数组
10.C#初级开发原创教程第十课 面向对象之类和对象
11.C#初级开发原创教程十一课 类的无参方法
12.C#初级开发原创教程十二课 带参数的方法(一)
13.C#初级开发原创教程第十三课 字符串的操作


Shark恒 发表于 2014-10-12 19:27

每课都是精华,每课都要认真制作啊。尼玛,加油!

王尼玛 发表于 2014-10-12 19:33

Shark恒 发表于 2014-10-12 19:27
每课都是精华,每课都要认真制作啊。尼玛,加油!

感谢恒大支持!

彡墨鱼灬丶 发表于 2014-10-12 19:46

{:6_209:}每次我都不忍心打出大大名号

Dean 发表于 2014-10-12 20:43

课程出得好快,一定要支持

大官人 发表于 2014-10-12 21:03

for (int i = 0; i < 5;i++ )
int i=0 应该是把i赋予0
i<5应该是条件i+5 或者大于5就不再循环执行
i++啥意思

大官人 发表于 2014-10-12 21:06

如果我是循环5次 或者我不知道到底循环几次 这个i<5 要改成什么样子
比如我读一个文件 里面用;分开 为1个数组

比如
111111 2222222;
333333 4444444;
这个数组想把它输出出来为
账号11111密码 22222
账号33333密码44444

我用按键的For语句很好解决 看了半天 这个c#咋解决啊



王尼玛 发表于 2014-10-12 21:06

大官人 发表于 2014-10-12 21:03
for (int i = 0; i < 5;i++ )
int i=0 应该是把i赋予0
i

其实很好理解,int i = 0;i<5;i++
从0开始循环,循环到4,因为是小于5嘛,循环一次,i就自增一次,变成1,下一次循环变2,再下一次变3,懂了吧

大官人 发表于 2014-10-12 21:38

王尼玛 发表于 2014-10-12 21:06
其实很好理解,int i = 0;i

i++ 的意思是每次+1?

王尼玛 发表于 2014-10-12 21:47

本帖最后由 王尼玛 于 2014-10-13 15:35 编辑

大官人 发表于 2014-10-12 21:06
如果我是循环5次 或者我不知道到底循环几次 这个i
for循环的前提就是知道要循环几次,不确定的可以使用while或者do-while来限制循环条件,用你说的举个例子,
你要读取一个txt,但是不知道有多少行,这时候就可以用while循环了:<blockquote>StreamReader sr = File.OpenText(@"D:\hehe.txt");//文件读取流



页: [1] 2
查看完整版本: C#初级开发原创教程第八课 循环结构(二)