- #include <stdio.h>
- int main()
- {
- //************一、运算符**********
- //1、赋值运算符 =
- int a = 1;
- //赋值运算符表示的是将等号右边的赋值给左边。
- //注意:和赋值运算符比较相似还有一个 ‘==’
- //两个等号表示的是判断
- //例如
- int b = 2;
- a==b;//判断a和b是否相等。
- //练习,交换a,b的值
-
- int c=0;//在定义变量的时候建议都要赋初始值。
- c = a;//将a的值赋值给c,c = 1;
- a = b;//将b的值赋值给a,a = 2;
- b = c;//将c的值赋值给b,b = 1;
- printf("a=%d,b=%d\n",a,b);
-
- //2、算术运算符(+,-,*,/,++,--,%)
- //++在前,先加1,在运算
- //++在后,先运算,在加1
- //-- 同样适用
- //++在后
- int num = 5;
- int num1 = num++; //在这一行(分号)之前(包含这一行)num = 5
- //num1 = 5;num在下一行的时候=6;
- printf("num=%d,num1=%d\n",num,num1);
- //++在前
- int num2 = 5;
- int num3 = ++num2;
- printf("num2 =%d,num3=%d\n",num2,num3);
- int num4 = 5;
- int num6 = --num4;
- printf("num6=%d,num4=%d\n",num6,num4);
-
- // 取余 %
- /*
- 变量的命名规则:一个变量只能有数字,字母,
- 下划线三部分组成,并且数字不能开头。
- */
- int num7 = 3;
- int num8 = 4;
- int num9 = num7 % num8; // 3/4 = 0...3
- printf("num9=%d\n",num9);
- //要求:%两边都必须int数据
-
- int num10 = 4;
- float num11 = 4.3;
- // int num12 = num10 % num11;
- //3、复合运算符(+=,-=,*=,/=,%=)(不推荐大家使用)
- int num12 = 6;
- num12 += 3;// num12 = num12 + 3
- num12 *= 3;// num12 = num12 * 3
-
- int num13 = 9;
- int num14 = ((num13+=1) *=2);
- //1、num13+=1 ==> num13 = num13+1 => 10;
- //2、num14 =10*=2 = 10*2 =20
- printf("num14=%d\n",num14);
-
- //4、逻辑运算符(||,&&,!)
- /*
- ||:表示或者的意思
- 表达式1||表达式2
- 表达式1正确,表达式2正确,结果正确
- 表达式1正确,表达式2错误,结果正确
- 表达式1错误,表达式2正确,结果正确
- 表达式1错误,表达式2错误,结果错误
- 总结:只有||的两边全是错误的,整个结果才是错误的
- &&:表示并且的意思
- 表达式1&&表达式2
- 表达式1正确,表达式2正确,结果正确
- 表达式1正确,表达式2错误,结果错误
- 表达式1错误,表达式2正确,结果错误
- 表达式1错误,表达式2错误,结果错误
- 总结:只有&&两边全部都正确,结果才正确
- !:表示非
- !表达式,
- 原来是正确的,加了!就表示不正确
- 原来不正确的,加了!就表示正确的
- */
-
-
- //******************二、表达式*****************
- /*
- 表达式:1、不能单独运行,
- 2、表达式通常用作判断条件。
- 3、表达式的有结果,而且结果如果是正确的,我们叫做真
- 如果结果是不正确,我们叫做假。
- 4、表达式当做判断条件的时候后面不加分号
- 5、单独的一个变量也可以叫做表达式。
- 6、在C语言中,非0即为真(0假,1真)。
- 7、通过运算符将变量链接起来的式子也叫做表达式
- */
- int h1 = 1;
- int h2 = 2;
- h1>h2;//假
- h1; //真
- h2; //真
- h1-h2;//真
- 4-3; //真
-
- //****************三、流程(分支)控制语句************
- //一、if语句
- //1种情况,要么做要么不做
- /*
- if(表达式)
- {
- 表达式成立的时候才会被执行的代码
- }
- 如果表达式不成立,就直接执行{}外面的代码了
- */
-
- int score = 98;
- if(score>90)
- {
- //只有表达式成立的时候才会进入到{}中
- printf("你好棒啊,奖励一百块\n");
- }
- //这一句话,将不受if管理,肯定会被执行的
- printf("你没有考到90分,要罚你100块");
- //2种情况,二者必选其一
- /*
- if(表达式)
- {
- 满足情况时执行的代码
- }
- else
- {
- 不满足情况的时候执行的代码
- }
- */
-
-
- if(score > 90)
- {
- printf("你好棒啊,奖励你100块\n");
- }
- else
- {
- printf("你没有考到90分,要罚你100块");
- }
- //多个条件来修饰一种情况(1、if的嵌套2、&&)
- /*
- if()
- {
- if()....
- }
- else
- {
- if()...
- }
- */
-
- int weekend = 4;
- int rain = 1;//1表示 下雨,0表示 __
-
- if(weekend<6)
- {
- //周一到周五
- if(rain == 1)
- {
- //下雨
- printf("今天是工作日,并且下雨了");
- }
- else
- {
- printf("今天是工作日,但是没下雨");
- }
- }
- else
- {
- //周六。周日
- if(rain == 1)
- {
- printf("今天是周末,下雨了");
- }
- else
- {
- printf("今天是周末,没有下雨");
- }
- }
-
- //多种情况,选择一种(找到第一个满足情况的后面就不在执行了)
-
- /*
- if()
- {}
- else if()
- {}
- ..
- ..
- ..
- else if()
- {}
- else
- {}
- */
-
- if(score>90)
- {
- printf("优秀\n");
- }
- else if(score>80)
- {
- printf("良好\n");
- }
- else if(score>70)
- {
- printf("中等\n");
- }
- else if(score>60)
- {
- printf("及格\n");
- }
- else//最后只需要写else就可以
- {
- printf("不及格\n");
- }
-
-
- //二、switch语句
- //switch和if语句的多种情况选择一个很类似。
-
- /*
- 1、有多少种情况就写多少个case
- 2、其他情况写在default里面
- 3、default可以省略不写
- 4、switch后面的表达式必须是int类型
- 5、当我们只需要让switch语句满足其中一个就退出,
- 需要在每个case后面添加break语句
- 6、break是跳出语句,在哪里遇到break,就在哪里跳出
- 7、switch语句,从满足条件的第一个情况开始,
- 会一直向下执行,一直向下执行到遇到break终止
- 如果没有遇到break,
- 就会把下面的所有情况都执行完毕
- switch(表达式)
- {
- case 表达式1:
- {
- }
- case 表达式2:
- {
- }
- 。。。。
- default:
- {
- }
- }
- */
-
- switch(score/10)
- {
- case 10:
- {
- printf("100分");
- break;
- }
-
- case 8:
- {
- printf("良好");
- break;
- }
- case 9:
- {
- printf("优秀");
- //break;
-
- }
- case 7:
- {
- printf("中等");
- break;
- }
- case 6:
- {
- printf("及格");
- // break;
- }
- default:
- {
- printf("不及格");
- }
-
-
- }
-
- return 0;
- }