A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© muyan091115 中级黑马   /  2016-5-23 23:12  /  920 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Day03 笔记

3,变量类型转换

   为一个变量赋值的时候,赋值的数据的类型必须要个变量的类型一致。

   如果不一致,也可以编译链接执行,
   这时就会讲数据的类型转换为变量的类型然后再赋值。

   例如:int num = 2200000000;
   先会把2200000000转换为int类型的变量,然后再赋值。

4,自动类型转换

   1),为int类型变量赋值的时候,如果赋值整数不在int范围内,转换为int数据。
                2147483648=-2147483648
           为int类型变量赋值的时候,如果赋值的整数太大,编译直接报错。
           为int类型变量复制的时候,给的是浮点型数据,直接取整数部分,会丢失精度。

   2),为float变量赋值的时候,如果赋值的数据是一个double类型的
                 会自动转换为float类型
           为float变量复制的时候,如果赋值的数据是整数,会将整数转换为单精度浮点数。

   3),为double变量赋值的时候,。。。。。。

   4),为char变量赋值的时候,如果单引号中有多个字符,就会取最后一个字符。
           为char变量赋值的时候,如果赋值的是整数,会将整数按ASCII码表转换成char
           ‘a’ : 97  ‘0’ :48  ‘A’ = 65   ;

5,强制类型转换
   int num = (int) d1 ;
   显示的指令要讲数据转换成什么类型的。

6, 用何种类型保存

   看是否有可能取值为小数

   1),如果可能的取值只为整数,应用int
   2),如果可能有小数,有效位不超过7位,用float
   3),如果小数可能超过7位,用double
   4),如果只可能是单个字符,用char

   double 比 float 在内存中占用的空间大

   model 型号 price 价格 weight 重量


7,scanf 函数

   语法:scanf(“格式控制字符串”,变量地址列表);

   简单实用步骤
   a,在格式控制字符中使用占位符来限定用户输入的数据的类型
   b,将用户的数据存储到后面的变量的地址中。

   例如:int sum = 0;
            Scanf(“%d”,&sum);

   执行原理:

   scanf函数是一个阻塞式的函数,当CPU在执行这句代码的时候,CPU的执行会暂停
      等待用户输入,在输入完毕按下回车以后,继续执行。

   使用scanf的步骤:

   1),确定想要让用户输入什么类型的数据

   2),声明一个对应类型的变量 准备用来存储用户的输入数据

   3),使用scanf函数来接受输入,使用占位符,和变量地址。


8,scanf函数的高级使用

   1),当要求用户输入一个数的时候,用户在输入的时候,输入的空格键,回车键,
              tab键会自动忽略,知道输入一个数病回车结束才会继续执行。

   2),scanf一次接受用户输入的多个数据,
         scanf(“%d%d%d”,&a,&b,&c);
         多个数据可以用回车和空格来分隔

         注意当数和字符在一起混合输入的时候,会出问题。

   3),自定义用户输入数据的分隔符

         %d-%d-%d 但是用了其他的分隔符以后,不能再用空格和回车分隔。


9,scanf的缓冲区

   1),当使用Scanf函数接受用户输入数据的时候,
           会先将用户的输入的数据存储到缓冲区之中,
           输入的全部的数据都会存储到缓冲区之中。

   2),当执行Scanf函数的时候,会先检查缓冲区中是否有数据,
           如果有想要的,不会让用户输入,如果没有才会让用户输入

   3),当从缓冲区中那数据的时候,
           如果要拿的是一个数,会自动忽略空格 回车 tab
           如果scanf函数要拿的是字符数据,不会忽略任何缓冲区中的数据

   要想让字符数据成功让scanf拿到
   需要清空缓冲区
   rewind(stdin);


10,交换两个变量的值

   1),中间变量
           temp = a;
           a = b;
           b = temp;
   2),相加减
           a = a + b;
           b = a - b;
           a = a - b;


11,算术运算符和算术表达式

   1),算术运算符+-*/%(取余,不能用于小数)

   2),算术表达式:表达式都有一个结果,我们要处理这个结果才有意义。
           通过赋值符号来处理结果。


12,算术表达式的结果类型

   只有知道类型才能定义一个对应类型变量来保存

   如果参与算术表达式的数据类型一致,那么结果就是这个类型
   如果不一致,结果就是范围最大的那个
   int < float < double


13,算术运算符的优先级和案例

   先* / 后+ - 可以用括号改变


14,char类型数据参加

   char类型参加算术运算时,
   会将char类型变量的ASCII码拿出来运算


15,符合赋值运算符

   += —= *= /= %=
   num += 5  : num = num + 5;


16,自增自减

   ++ - -
   前置:先加1 后运算
   后置:先运算 后加1

   自增自减 的优先级 高于算术运算符



0 个回复

您需要登录后才可以回帖 登录 | 加入黑马