C#编程(3_流程控制)

  • 一个简单的Bool循环:
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Please Enter an integer:");
            int myInt=Convert.ToInt32(Console.ReadLine());
            bool isLessThan10 = myInt < 10;
            bool isBetweenThan0And5 = (myInt >= 0) && (myInt <= 5);
            Console.WriteLine("Integer is less than 10?{0}",isLessThan10);
            Console.WriteLine("Integer between 0 and 5?{0}",isBetweenThan0And5);
            Console.WriteLine("Exactly one of the above is true?{0}",isLessThan10^isBetweenThan0And5);//对两个变量执行逻辑异或操作
            Console.ReadKey();

        }
    }
}
  • 一个简单的if循环:
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string comparison;
            Console.WriteLine("Enter a number:");
            double var1 = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("Enter anther number:");
            double var2 = Convert.ToDouble(Console.ReadLine());
            if (var1 < var2)
                comparison = "less than";
            else
            {
                if (var1 == var2)
                    comparison = "equal to";
                else
                    comparison = "greater than";
            }
            Console.WriteLine("The frist number is {0} the second number.",comparison);
            Console.ReadKey();

        }
    }
  • 一个简单的Switch循环:
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            const string myName = "karli";
            const string sexyName = "angelina";
            const string sillyName = "ploppy";
            string name;
            Console.WriteLine("What is you name?");
            name = Console.ReadLine();
            switch (name.ToLower())//name.ToLower()是一个标准命令,用于处理所有输入的字符串,使输入的字符串与与给定字符串匹配。
            {
                case myName:
                    Console.WriteLine("You have the same name with me!");
                    break;
                case sexyName:
                    Console.WriteLine("my,What a sexy name you have!");
                    break;
                case sillyName:
                    Console.WriteLine("That‘s a very ploppy name.");
                    break;
            }
            Console.WriteLine("Hello {0}!",name);
            Console.ReadKey();
        }
    }
}
  • 一个简单的do循环:
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            //代码利用固定的利率,对年度计算余额的过程重复必要的次数,知道满足临界条件为止,在每次循环中,递增一个计数器变量,就可以确定需要多少年:
            double balance, interestRate, targerBalance;
            Console.WriteLine("What is your current balance?");
            balance = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("What is your current annual interest rate(in %)?");
            interestRate = 1 + Convert.ToDouble(Console.ReadLine())/100.0;
            Console.WriteLine("What balance would you like to have?");
            targerBalance = Convert.ToDouble(Console.ReadLine());
            int totalYears = 0;
            do
            {
                balance *= interestRate;
                ++totalYears;
            }
            while (balance < targerBalance);
            Console.WriteLine("In {0} year {1} you‘ll have the blance of {2}.",totalYears,totalYears==1?"":"s",balance);//三元运算符
            Console.ReadKey();
        }
    }
}
  • 使用While循环:
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            double balance, interestRate, targerBalance;
            Console.WriteLine("What is your current balance?");
            balance = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("What is your current annual interest rate(in %)?");
            interestRate = 1 + Convert.ToDouble(Console.ReadLine()) / 100.0;
            Console.WriteLine("What balance would you like to have?");
            targerBalance = Convert.ToDouble(Console.ReadLine());
            int totalYears = 0;
            while (balance < targerBalance)
            {
                balance *= interestRate;
                ++totalYears;
            }
            Console.WriteLine("In {0} year {1} you‘ll have the blance of {2}.", totalYears, totalYears == 1 ? "" : "s", balance);//三元
            if (totalYears == 0)
                Console.WriteLine("To be honest,you realy didn‘t need to use this calculator.");
            Console.ReadKey();
        }
    }
}
  • for循环:(利用for循环显示一个Mandelbrot曼德布洛特集合)
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            //(Mandelbrot)曼德布洛特集合
            double realCoord, imagCoord;
            double realTemp, imagTemp, realTemp2, arg;
            int iterations;
            for (imagCoord = 1.2; imagCoord >= -1.2; imagCoord -= 0.05)
            {
                for (realCoord = -0.6; realCoord <= 1.77; realCoord += 0.03)
                {
                    iterations = 0;
                    realTemp = realCoord;
                    imagTemp = imagCoord;
                    arg = (realCoord * realCoord) + (imagCoord * imagCoord);
                    while ((arg < 4) && (iterations < 40))
                    {
                        realTemp2 = (realTemp * realTemp) - (imagTemp * imagTemp) - realCoord;
                        imagTemp = (2 * realTemp * imagTemp) - imagCoord;
                        realTemp = realTemp2;
                        arg = (realTemp * realTemp) + (imagTemp * imagTemp);
                        iterations += 1;
                    }
                    switch (iterations % 4)
                    {
                case 0:
                    Console.Write(".");
                    break;
                case 1:
                    Console.Write("o");
                    break;
                case 2:
                    Console.Write("O");
                    break;
                case 3:
                    Console.Write("@");
                    break;
                    }
                }
            Console.Write("\n");
            }
            Console.ReadKey();
        }
    }
}

Mandelbrot集合中的每个位置都对应于公式N=x+y*i中的一个复数。实数部分是x,虚数部分是y,i是-1的平方根。图像中的各个位置的x和y坐标对应于复数的x和y部分。图像中的每个位置用参数N来表示,它是x*x+y*y的平方根。如果这个值大于或者等于2,则这个数字对应的位置是0。如果这个参数小于2,就把N的值改为N*N-N(即N=(x*x-y*y-x)+(2*x*y-y)*i),并再次测试这个新的N值。如果这个值大于或者等于2,则这个值对应位置是1.这个过程将一直继续下去,直到给图像中的位置赋一个值,或迭代执行的次数超过指定的次数为止。根据给图像中每个点赋予的值,在图形环境下,屏幕上会显示某种颜色的像素。但是本例使用的文本环境,所以屏幕上显示的是一个字符。

  • 循环的中断
    1. break——立即终止循环
    2. continu——立即终止当前循环(继续执行下一次循环)
    3. goto——可以跳出循环,到已标记好的位置上(代码不易阅读和理解)
    4. return——跳出循环及其包含的函数
  • 无限循环(略)
  • 三元运算符,语法如下:

<test>?<resultIfTrue>:<resultIfFalse>

其中计算<test>可以得到一个bool值,运算结果根据这个bool值来确定是<resultIfTrue>还是<resultIfFalse>;

举例:

string resultString=(myInterger<10) ? "Less than 10":"Greater than or equal to 10";

把那个字符串赋给resultString,取决于myInterger的值与10的比较。如果myInterger的值小于10,就把第一个字符串赋给resultString;如果myInterger的值大于或者等于10,就把第二个字符串赋给resultString。这个运算符比较适用于这样简单赋值语句,但不适用于根据比较结果执行大量代码的情形。此时应该使用if语句。

时间: 2024-10-22 19:29:13

C#编程(3_流程控制)的相关文章

Linux进阶之bash编程(流程控制-while,break,continue)

在bash编程中,经常会涉及使用while语句,时常处理未知循环次数的情况. while语法 while [ express ] do #command Done 2. 实战练习 提示输入大于10小于20的整数: while1.sh: #!/bin/bash echo -n "please input a digit between 10 and 20:" read n while [ $n -lt 10 ]||[ $n -gt 20 ] do echo -n "please

关于Web前端 编程时流程控制中的流程控制图和 if 判断及九九乘法表

本次分享首先是流种植控制图的一些理论知识: 一.流程图:使用标准化的图形方案,分析某个功能的实现步骤(标准化:流程图规定的形状)   二.接下来说一下 if 判断一些知识点 1.在if判断中如果某个分支中的代码只有1行,则该分支的大括号可以省略: 2.同时在一个if结构中,if必须出现一次,else if可以出现任意多次, else可以出现0次或1次 : 3.三目运算符就是一个简单版的if判断 注释: 三目运算符:又叫做三元运算符,它需要三个操作数参与运算书写方式:操作数1 ? 操作数2 : 操

Linux进阶之bash编程(流程控制for循环)

bash脚本里定义后续命令执行日志输出路径 #!/bin/bash logDir=`date +%F` exec &>/tmp/logDir.log       //此次定义后续命令的执行输出日志路径 df -h top for循环 循环允许你重复一段代码固定次数,在循环代码执行期间,一个称为循环变量的特殊变量被赋予了不同的值: for循环很适合处理命令行上的参数以及文件集,for结构的语法如下: for name [in list] do statements done list为名称列表

Linux进阶之bash编程(流程控制if-else)

一:条件判断 if condition then     statements [elif condition     then statements. ..] [else     statements ] fi 整数比较: -lt,小于-le,小于等于-eq,等于-ge,大于等于-gt,大于-ne,不等于 bash脚本调试:bash -x  test.sh 练习: 1:编写一个bash程序,判断带入的参数大小. 2:提示用户输入一个数字,需要验证是否输入纯数字?并判断是奇数还是偶数! 方法1:

linux shell编程 之 流程控制

if 语句: 以前就是用的test 例子1:当硬盘超过80%,就进行通知管理者 例子2:Apache关闭时,自动重启 例子3:多分支if语句 例子4:备份etc目录 case语句: for语句: 批量进行解压缩类似 批量添加用户 while语句: until循环: 与while循环相反,只要判断条件不成立,一直循环,知道条件成立 用until达到和上面例子一样效果:

Linux学习笔记(18) Shell编程之流程控制

1. if语句 (1) 单分支if条件语句 格式为: # 注意条件判断式两端的空格if [ 条件判断式 ];then 程序员 fi 或者 if[ 条件判断式 ] then 程序 fi 例:判断分区使用率 #!/bin/bash #获取根分区的使用率 rate=$(df -h | grep "/dev/sda5" | awk '{print $5}' | cut -d "%" -f 1) if [ $rate -ge 10 ] then echo "/dev

shell编程 之 流程控制(条件语句和循环语句)

1 if ...else... 基本格式: if condition then commend else commend fi 当然也可以写到一行,用[ ]表明边界,用:表示分行.比如: if [ $(ps -ef | grep -c "ssh") -gt 1 ]; then echo "true"; fi    判断条件用方括号括起来表示分界,意思是统计当下进程中 带'ssh'的字符串数量,如果这个数量大于1,那就输出true,结束. 还有带elif的格式,如下:

Python黑帽编程2.4 流程控制

Python黑帽编程2.4  流程控制 本节要介绍的是Python编程中和流程控制有关的关键字和相关内容. 2.4.1 if …..else 先上一段代码: #!/usr/bin/python # -*- coding: UTF-8 -*- x=int(input('请输入一个整数:')) if x==0: print '%d ==0' % x elif x<0: print '%d <0' % x else: print '%d >0' % x 这段代码使用if,elif和else三个

shell脚本编程——流程控制

shell脚本编程--流程控制 目   录 一. if 二. case 三. for 四. while 五. until 六. 综合应用 一.if 1.语法 (1)单分支 if  判断条件:then fi (2)双分支 if 判断条件; then 条件为真的分支代码 else 条件为假的分支代码 fi (3)多分支 if 判断条件1; then 条件为真的分支代码 elif 判断条件2; then 条件为真的分支代码 elif 判断条件3; then 条件为真的分支代码 else 以上条件都为假