C#入门篇3

目录

一、练习

二、显示类型转换(强制类型转换)

 三、Convert的转换工厂转换

 四、算数运算符号之(++ /--)

五、关系运算符(比较运算)

 六、逻辑运算符

七、复合运算符


一、练习

  1. 计算半径为5的圆的面积和周长并打印出来,(pi为3.14)面积:pi*r*r,perimeter(周长)
    using System;
    using System.Collections.Generic;
    using System.Data.SqlTypes;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks; //引用命名空间
    
    namespace ConsoleAp //命名空间
    {
    
        
        internal class Program //类
        {
    
            static void Main(string[] args)
            {
                int radius = 5;
                double pi = 3.14;
                double area =( radius * radius) * pi ;
                double penmeter = radius * pi * 2;
                Console.WriteLine("圆的面积为:{0},圆的周长为:{1}",area,penmeter);
                Console.ReadKey();
    
            }
    
        }
    }
    
    

    2、某商店T恤(T-shirt)的价格为35元/件,裤子(trousers)的价格为120元/条,小明在该店买了3件T恤和2条裤子,请计算并显示小明打8.8折后的价格?

    using System;
    using System.Collections.Generic;
    using System.Data.SqlTypes;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks; //引用命名空间
    
    namespace ConsoleAp //命名空间
    {
    
    
        internal class Program //类
        {
            /*某商店T恤(T-shirt)的价格为35元/件,裤子(trousers)的价格为120元/条,小明在该店买了3件T恤和2条裤子,请计算并显示小明打8.8折后的价格?*/
    
            static void Main(string[] args)
            {
                int Tshirt = 35;
                int trousers = 120;
                double value = ((3 * Tshirt) + (2 * trousers)) * 0.88;
                Console.WriteLine("打折后的价格为{0}",value);
                Console.ReadKey();
    
    
    
            } 
    
        }
    }
    
    
    

    3、我们要求两边参与运算的操作数的类型必须一致,如果不一致,满足下列条件会发生自动类型转换(隐式类型转换)

  • 两种类型兼容:例如 int和double兼容(数字类型)

  • 小的转成大的(隐式类型转换)大的转成小的(强制类型转换)

二、显示类型转换(强制类型转换)

  • 两种类型兼容:例如 int和double兼容(数字类型)
  • 大的转成小的(强制类型转换)
  • 如果一个操作数为double型,则整个表达式可提升为double型

语法:(待转换的类型)要转换的值

注意:强制类型转换是不安全的,可能会导致数据丢失

using System;
using System.Collections.Generic;
using System.Data.SqlTypes;
using System.Linq;
using System.Text;
using System.Threading.Tasks; //引用命名空间

namespace ConsoleAp //命名空间
{


    internal class Program //类
    {
        /*某商店T恤(T-shirt)的价格为35元/件,裤子(trousers)的价格为120元/条,小明在该店买了3件T恤和2条裤子,请计算并显示小明打8.8折后的价格?*/

        static void Main(string[] args)
        {
            int n1 = 10;
            int n2 = 3;
            double d = n1 * 1.0 / n2; //如果一个操作数为double型,则整个表达式可提升为double型
            Console.WriteLine("{0:0.00}",d);//保留小数点后两位小技巧 
            Console.ReadKey();



        } 

    }
}

 三、Convert的转换工厂转换

1、类型如果兼容的两个变量,可以使用自动类型转换或者强制类型转换

2、如果两个类型的变量不兼容可以使用Convert的转换工厂进行转换

注意:使用Conver转换:面上必须过的去(看起来能转换就转换,看起来根本转换不了就不转)

using System;
using System.Collections.Generic;
using System.Data.SqlTypes;
using System.Linq;
using System.Text;
using System.Threading.Tasks; //引用命名空间

namespace ConsoleAp //命名空间
{


    internal class Program //类
    {
        /*某商店T恤(T-shirt)的价格为35元/件,裤子(trousers)的价格为120元/条,小明在该店买了3件T恤和2条裤子,请计算并显示小明打8.8折后的价格?*/

        static void Main(string[] args)
        {
            string s = "123";

            //将字符串转换成int或者double类型
            double d = Convert.ToDouble(s);
            Console.WriteLine(d);
            int i = Convert.ToInt32(s);
            Console.WriteLine(i);
            Console.ReadKey();



        } 

    }
}

 四、算数运算符号之(++ /--)

1、++:分为前++和后++,不管是前++还是后++,最终结果都是给这个变量加1;

2、- -: 分为前- -和后- -,不管是前- -还是后- -,最终结果都是给这个变量减1;

区别:前置,先加再运算(先自身加1,再进行运算)  后置,先运算再加(原值先进行运算,然后自身加1)

3、只需要一个操作符称之为一元运算符(eg: ++ /--)

4、需要两个或两个以上操作符称之为二元运算符(eg: + - * % /)

namespace ConsoleAp //命名空间
{


    internal class Program //类
    {

        static void Main(string[] args)
        {
            int num = 10;
            //num++;
            //++num;给变量自身加1
            //num--;
            //--num;给变量自身减1

            //int result = 10 + ++num;
            int result = 10 + num++;


            Console.WriteLine(num);
            Console.WriteLine(result);
            Console.ReadKey();



        } 

    }
}

如果在一个表达式中有一元和二元运算符,一元的运算符优先级高于二元运算符

五、关系运算符(比较运算)

1、关系运算符返回的结果为bool类型(true / false)

2、 关系运算符( > < ==)

using System;
using System.Collections.Generic;
using System.Data.SqlTypes;
using System.Linq;
using System.Text;
using System.Threading.Tasks; //引用命名空间

namespace ConsoleAp //命名空间
{


    internal class Program //类
    {

        static void Main(string[] args)
        {
            //关系表达式的类型为bool类型
            bool b = 1500 > 1;

            Console.WriteLine(b);

            bool b1 = 1500 < 1;

            Console.WriteLine(b1);

            bool b2 = 1500 == 1;

            Console.WriteLine(b2);

            Console.ReadKey();




        }

    }
}

 六、逻辑运算符

1、逻辑运算符 (&&与 ||或 !非 ..........)

2、逻辑运算符两边放的一般是关系表达式 或者 bool类型的值,逻辑表达式的值同样为bool类型

using System;

class Program
{
    static void Main()
    {
        // 输入一个整数
        Console.Write("请输入一个整数:");
        int number = int.Parse(Console.ReadLine());

        // 定义范围
        int lowerBound = 10;
        int upperBound = 50;

        // 判断是否是质数的辅助函数
        bool IsPrime(int n)
        {
            if (n <= 1) return false;
            if (n == 2) return true;
            if (n % 2 == 0) return false;
            for (int i = 3; i * i <= n; i += 2)
            {
                if (n % i == 0) return false;
            }
            return true;
        }

        // 使用所有逻辑运算符
        bool isInRange = number >= lowerBound && number <= upperBound;
        bool isEven = number % 2 == 0;
        bool isNegative = number < 0;
        bool isPrime = IsPrime(number);

        // 逻辑运算符示例
        bool resultAnd = isInRange && isEven;       // 与
        bool resultOr = isInRange || isNegative;    // 或
        bool resultNot = !isEven;                   // 非
        bool resultXor = isInRange ^ isPrime;       // 异或

        // 输出结果
        Console.WriteLine($"数字在范围内且是偶数: {resultAnd}");
        Console.WriteLine($"数字在范围内或是负数: {resultOr}");
        Console.WriteLine($"数字不是偶数: {resultNot}");
        Console.WriteLine($"数字在范围内或是质数 (异或): {resultXor}");
    }
}

七、复合运算符

1、复合运算符(+= -= *= %= /=)

int num = 10;
num += 10; //==>num= num  + 10 

num -= 10; //==>num= num  - 10 

num *= 10; //==>num= num  * 10 

num /= 10; //==>num= num / 10 

num %= 10; //==>num= num  % 10 

  • 7
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值