二、基本运算

一、运算符

  • 运算符是指定要在表达式中执行哪些操作(数学、索引、函数调用等等)的符号。
  • 运算符分类:
    C#语言继承了C/C++原有所有运算符,并在此基础上增添了几个新的运算符。
    另外,根据运算符所使用的操作数(运算符所操作的变量或常量) 个数,可分为3类:
    一元运算符:一元运算符作用于一个操作数,例如-X、++X、X等。
    二元运算符:二元运算符对两个操作数进行运算,例如x+y。
    三元运算符:三元运算符只有一个:x?y:z。
运算符的分类
算术运算符
比较运算符
三目运算符
赋值运算符
成员访问、赋值、逻辑等运算符
运算符的优先级
几种进制的说明
位运算符

二、各运算符的用法

  • 1、算术运算符、比较运算符、赋值运算符
        static void Main(string[] args)
        {
            int a = 100, b = 10;
            Console.WriteLine(a--);//100  先用再自减1
            Console.WriteLine(a+b);//99+10
            Console.WriteLine(--a);//98  先自减1再用
            Console.WriteLine(a+b);//98+10

            int c = 50, d = 80;
            Console.WriteLine((c--)+d);//  50+80 
            Console.WriteLine((--c)+(d++));//48+80
   static void Main(string[] args)
        {
            int I=0;
            int n= 3;
            while (I++ < n) 
            {
                Console.WriteLine(I);
            }
            Console.WriteLine(I);
//第一次循环时I等于0比n小,执行循环体,此时I自加1等于1,输出的I等于1;第二次循环时I等于1,比n小,执行循环体,此时I自加1等于2,输出的I等
于2;第三次循环时I等于2,比n小,执行循环体,此时I自加1等于3,输出的I等于3;第四次循环时I等于3,不小于n,跳出循环体,此时I自加1等于4;

          while (++I < n) 
            {
                Console.WriteLine(I);
            }
            Console.WriteLine(I);
            Console.ReadKey();
        }
//第一次循环时I1此时I自加1等于1比n小,执行循环体,输出的I等于1;第二次循环时I自加1等于2,比n小,执行循环体,输出的I等于2;第三次循环时自
加1等于3,不小于n,跳出循环体,此时I等于3;
//计算12898秒等于几小时几分几秒
int A = 12898;
int H;
int M;
int T;
H = A / 3600;
M= (12898 % 3600)/60;
T = (12898 % 3600)%60;
Console.WriteLine(H);
Console.WriteLine(M);
Console.WriteLine(T);
int i = -2;
            --i; //-3
            ++i; //-2
            i++; //-1
            i+=3; //2
            ++i; //3
            i++; //4
           i*=2; //8
            ++i; //9
            i--; //8
            Console.WriteLine(--i);7
  • 2、三目运算符、逻辑运算符
Int a=5,b=4,c=6,d; 
d=a>b?(a>c?a:c):b; 三目运算
Console.Writeline(d);
Int f = 23;
Int h = 12;
bool a;
a = (!((f > 22 && h < f) || h == 2) || f >= 23);逻辑运算
Console.WriteLine(a);
  • 3、checked与unchecked运算符
            byte by1 = 255; 
            checked {

                by1++; // 256
            }
            unchecked {
                by1++;
                Console.WriteLine(by1);
            }
  • 4、is 、 as、
            int a11 = 10;
            object obj = 10;
            bool boo = true;
            string name = "face";

            boo = obj is int;
            Console.WriteLine(boo);
        // as 表达式1和表达式2必须是引用类型的变量或者常量
        // 引用类型 :起了一个名字来表示某件事
        // 值类型:就是存贮在内存栈空间的数值 10,20,30,
         obj = a11 as object;   // 某个类型的值 as Object  大的可以代表小的
         // as 必须与引用类型和Null类型的值一起使用
          a11 = obj as int  ; //  Object as 某个类型的值  小的不能代替大的

三、课后习题

  • 1、在Main方法中定义变量,用这些变量存储游戏中一个敌人应该有的一些属性,定义尽可能多的变量(最少5个)。
            string name="陈美丽";
            int age=18;
            string sex="女";
            double Fighting=10000;
            double grade=90;
  • 2、下面哪些变量名不合法?
            string myVariableIsGood; //正确,驼峰式命名,只是不够精简
            int 99Flake; //错误,不能以数字开头
            float Ji_floor; //正确
            string time2GetJiggyWidIt; //正确,但不够精简,不建议使用
            int x.com;  //错误,不能有特殊符号.
  • 3、接受用户输入的两个整数,存储到两个变量里面,交换变量存储的值。
            Console.WriteLine("请输入两个整数");
            int a = Convert.ToInt32(Console.ReadLine());
            int b = Convert.ToInt32(Console.ReadLine());
######方法一:
            int c;
            c = a;
            a = b;
            b = c;
######方法二:
            a = a + b;
            b = a - b;
            a = a - b;
            Console.WriteLine(a);
            Console.WriteLine(b);
  • 4、编写一个控制台应用程序,要求用户输入4个int值,并显示他们的乘积。
            Console.WriteLine("请输入4个整数");
            int a = Convert.ToInt32(Console.ReadLine());
            int b = Convert.ToInt32(Console.ReadLine());
            int c = Convert.ToInt32(Console.ReadLine());
            int d = Convert.ToInt32(Console.ReadLine());
            double num = a * b * c * d;
            Console.WriteLine("{0}*{1}*{2}*{3}={4}",a,b,c,d,num);
  • 5、从键盘输入一个三位的正整数,按数字的相反顺序输出。
            Console.WriteLine("请输入一个三位数的正整数");
            int num = Convert.ToInt32(Console.ReadLine());
            int a, b, c;
            a = num / 100;
            b = (num / 10) % 10;
            c= num % 10;
            num = c * 100 + b * 10 + a * 1;
            Console.WriteLine(num);
  • 6、编写一个程序,输入梯形的上底 下底 和高 ,计算出来梯形的面积并显示出来。
            Console.WriteLine("请输入梯形的上底:");
            int a = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("请输入梯形的下底:");
            int b = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("请输入梯形的高:");
            int c = Convert.ToInt32(Console.ReadLine());
            double num = (a +b )* c/2;
            Console.WriteLine("该梯形的面积为:"+num.ToString("#0.000"));
  • 7、计算半径为n的圆的周长和面积
            Console.WriteLine("请输入圆的半径:");
            float n = Convert.ToInt32(Console.ReadLine());
            double C,S;
            C = 2 * Math.PI * n;
            S = Math.PI * Math.Pow(n, 2);
            Console.WriteLine("该圆的周长为:"+C);
            Console.WriteLine("该圆的面积为:"+S);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,142评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,298评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,068评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,081评论 1 291
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,099评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,071评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,990评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,832评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,274评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,488评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,649评论 1 347
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,378评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,979评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,625评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,796评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,643评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,545评论 2 352

推荐阅读更多精彩内容