“变量表达式”和“流程控制”. 总结: 1、简单类型 sbyte (在-128~127之间的整数); byte(在0~255之间的整数); short (在-32768~32767之间的整数); ushort(在0~65535之间的整数); int (在-2147483648~2147483648之间的整数);uint(在0~2147483648之间的整数); long (在-9223372036854775808~9223372036854775808之间的整数); ulong(在0~9223372036854775808之间的整数); char (一个Unicode字符,存储0~65535之间的整数); bool (布尔值:true 或 false); string(一组字符); 三种浮点型(有小数点):float;double;decimal -------------------------------------------------------------------------------- 2、转义符 说明: myString="/"myInteger/" is"; ("/""是"/"转义""") -------------------------------------------------------------------------------- 3、数字运算符 二元 + var1=var2+var3; var1的值是var2与var3的和; — var1=var2-var3;var1的值是var2的值减去var3的值所得的值; * var1=var2*var3; var1的值是var2与var3的乘积; / var1=var2/var3; var1的值是var2除以var3所得的值; % var1=var2%var3;var1的值是var2除以var3所得的余数; 一元 + var1=+var2; var1的值等于var2的值; — var1=-var2; var1的值等于var2的值除乘-1; ++ var1=++var2; var1的值是var2+1,var2递增1; —— var1=——var2; var1的值是var2-1,var2递减1; ++ var1=var2++; var1的值是var2,var2递增1; —— var1=var2——; var1的值是var2,var2递减1; -------------------------------------------------------------------------------- 4、赋值运算符 二元 = var1=var2; var1被赋予var2的值; += var1+=var2; var1被赋予var1与var2的和; —= var1—=var2; var1被赋予var1与var2的差; *= var1*=var2; var1被赋予var1与var2的乘积; /= var1/=var2; var1被赋予var1与var2相除所得的结果; %= var1%=var2; var1被赋予var1与var2相除所得的余数; -------------------------------------------------------------------------------- 5、布尔逻辑运算符 二元 == var1=var2==var3; 如果var2等于var3,var1的值就是ture,否则为false; != var1=var2!=var3; 如果var2不等于var3,var1的值就是ture,否则为false; < var1=var2 var1=var2>var3; 如果var2大于var3,var1的值就是ture,否则为false; <= var1=var2<=var3; 如果var2小于或等于var3,var1的值就是ture,否则为false; >= var1=var2>=var3; 如果var2大于或等于var3,var1的值就是ture,否则为false; -------------------------------------------------------------------------------- 6、布尔运算符 一元 ! var1=!var2; 如果var2是false,var1的值就是true,否则为false(逻辑非); 二元 & var1=var2&var3; 如果var2和var3都是ture,var1的值就是true,否则为false(逻辑与); | var1=var2|var3; 如果var2或var3是true(或两者都是),var1的值就是true,否则为false(逻辑或); ^ var1=var2^var3; 如果var2或var3中有且仅有一个是ture,var1的值就是true,否则为false(逻辑异或); && var1=var2&&var3; 如果var2和var3都是ture,var1的值就是true,否则为false(逻辑与); || var1=var2||var3; 如果var2或var2是true(或两者都是),var1的值就是true,否则为false(逻辑或); 说明:“&&”和“||”性能比“&”和“|”强,主要是“&&”和“||”前者只要有不符合调教那么就不进行后面的判断,但是“&”和“|”就无论符合不符合都要进行全部判断,造成性能不佳。 -------------------------------------------------------------------------------- 7、布尔赋值运算符 二元 &= var1&=var2; var1的值是var1&var2的结果; |= var1|=var2; var1的值是var1|var2的结果; ^= var1^=var2; var1的值是var1^var2的结果; -------------------------------------------------------------------------------- 8、位移运算符 二元 >> var1=var2>>var3; 把var2的二进制值向右移动var3位,就得到var1的值; << var1=var3<>= var1>>=var2; 把var1的二进制值向右移动var2位,就得到var1的值; <<= var1<<=var2; 把var1的二进制值向左移动var2位,就得到var1的值; -------------------------------------------------------------------------------- 9、运算符优先级 优先级大致分为: 前缀数字运算符 > 数字运算符 > 二元位移运算符 > 布尔运算符 > 赋值运算符 > 一元位移运算符 > 后缀数字运算符 -------------------------------------------------------------------------------- 10、goto语句 goto语句可以让程序直接跳转goto语句指向的程序语句。 -------------------------------------------------------------------------------- 11、三元运算符 eg:string resultString = (myInteger<10)? "Less than 10" : "Greater than or equal to 10"; 把哪个哪个字符串赋给resultString?取决于myInteger的值与10的比较,如果myInteger的值小于10,就把第一个字符串赋给resultString;如果myInteger的值大于或等于10,就把第二个字符串赋给resultString。 -------------------------------------------------------------------------------- 12、if语句 if、else一般可以同时使用,比较方便合理,逻辑性强。 eg: static void Main(string[] args) { string comparison; Console.WriteLine("Enter a number:"); double var1 = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("Enter another 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 first number is {0} the second number.",comparison); Console.ReadKey(); } 示例说明:输入两个数字进行比较。 -------------------------------------------------------------------------------- 13、switch语句 switch语句可以一次将测试变量与多个值进行比较,而不是仅测试一个条件。 switch语句执行完每个部分中的代码后,还需有另一个语句break。在执行完一个case块后,再执行第二个case语句是非法的,所以要注意加break. eg:static void Main(string[] args) { const string myName = "karli"; const string sexyName = "angrlina"; const string sillyName = "ploppy"; string name; Console.WriteLine("What is your name?"); name = Console.ReadLine(); switch (name.ToLower()) { case myName: Console.WriteLine("You have the same name as me!"); break; case sexyName: Console.WriteLine("My, what a sexy name you have!"); break; case sillyName: Console.WriteLine("That's a very silly name."); break; } Console.WriteLine("Hello {0}!",name); Console.ReadKey(); } 示例说明:比较字符串(名字)。 -------------------------------------------------------------------------------- 14、do循环 do循环:执行标记为循环代码,然后进行一个布尔测试,如果测试的结果为ture,就再次进行这段代码。当测试结果为false时,就退出循环。 eg:int i=1; do { Console.WriteLine("{0}", i++); } while ( i <= 10 ); 示例说明:可以把从1~10的数字输入到一列上。 -------------------------------------------------------------------------------- 15、while循环 while循环:while循环中的布尔测试是在循环开始时进行,而不是最后。如果测试结果为false,就不会执行循环。程序会直接跳转到循环后面的代码。 eg: int i=1; while ( i <= 10 ) { Console.WriteLine("{0}", i++); } 示例说明: 可以把从1~10的数字输入到一列上。 -------------------------------------------------------------------------------- 16、for循环(用得最多的循环) for循环:for循环的格式使代码更易于阅读,其语法食杂一个地方包括循环的全部规则,而不是把几个语句放在代码的不同地方。 eg:int i=1; for ( i=1; i <= 10; ++i ) { Console.WriteLine("{0}", i); } 示例说明: 可以把从1~10的数字输入到一列上。 -------------------------------------------------------------------------------- 17、循环中断 C#的循环中断有4个命令: (1)break——立即终止循环。 (2)continue——立即终止当前的循环(继续执行下一次循环)。 (3)goto——可以跳出循环,到goto语句指定的程序代码继续执行代码。(最好不要用这个命令,阻碍阅读性) (4)return——跳出循环及其包含的函数。 -------------------------------------------------------------------------------- 18、经典示例程序 eg: static void Main(string[] args) { double balance, interestRate, targetBalance; // balance=初始金额 interestRate=利率 targetBalance=目标金额 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?"); do { targetBalance = Convert.ToDouble(Console.ReadLine()); if (targetBalance <= balance) Console.WriteLine("You must enter an amount greater than" + "your cuttent balance!/nPlease enter another value."); } while (targetBalance <= balance); int totalYears = 0; while (balance < targetBalance) { balance *= interestRate; ++totalYears; } Console.WriteLine("In {0} year{1} you'll have a balance of {2}.", totalYears, totalYears==1?"":"s",balance); Console.ReadKey(); } 示例说明:使用一个循环,根据其实的金额和利率,计算该账户的金额要花多长时间才能达到某个指定的数值。 本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/Kitchanin/archive/2009/06/29/4308258.aspx
“变量表达式”和“流程控制”.
最新推荐文章于 2024-08-19 22:45:00 发布