C语言(一)

linux系统的安装和使用

=======================

 1. 安装

        第一步:先安装虚拟机,wmware workstation,最后一步需要你输入密钥

        第二步:解压ubuntu(乌邦图)压缩包,在虚拟机中直接打开即可

                      如果你是自己去网站上下载的镜像文件(iso文件),你就需要新建虚拟机,设置之后就可以了

 2. 配置ubuntu联网,下载软件工具

        配置ubuntu自动获取ip

            点击网络配置,见笔记截图

3. ubuntu下载软件工具的命令

        更新软件源   sudo  apt-get  update

        下载软件       sudo  apt-get  install  软件的名字

        

 

在linux中写代码

========================

  1. 打开ubuntu上的shell终端

            快捷键:ctrl+alt+t或者双击terminal图标

  2. 打开或者新建一个文件

           vim   文件的名字  (输入i或者o或者a进入插入模式才可以输入,按下ESC键,输入冒号wq保存退出)

             gedit   文件的名字

C语言基础

=====================

 1. 学习方法

         多看+多敲+多思考总结

 2. C语言历史

        机器码:  01二进制去写代码,困难很大  10+11运算

                         +  ---》 01001

        汇编语言:用助记符替换掉机器码中的序列

                         + ---》add

        B语言

        1972年:  设计unix系统而发明了C语言

 3. C语言中变量类型及其使用

        变量:用来存放各种类型的数据

                   商品的价格---》小数表示  4.0    3.5

                   商品的数量---》整数

                   商品的名称---》中文字符串或者英文字符串

        变量类型:int(整型)  float(单精度浮点型)  double(双精度浮点型)  short(短整型)   long(长整型)    long  long  int(长长整型)   char(字符类型)  bool(类型)   struct(结构体)  union(联合体)  enum(枚举)  unsigned(无符号数)

        变量的使用:

              语法规则:  类型   变量名字;

                                  int  ab123;

                                  float  price;  //英文单词,或者缩写

                                  float  jiage; //最恶心的

        C语言命名规范:

                第一个:变量的名字中只能有字母,数字和下划线组成,并且首字母不能是数字           ab    Ab  ab78     a79      _abc    7mn(非法)     a#b(非法)   h@c(非法)

                第二个:命名的时候尽量通俗易懂,不要用汉语拼音,用英文单词缩写

              (1)整型

                       大小: 4个字节,32位二进制,知道大小是为了防止使用的时候数据溢出了(超出取值范围了)   

                       存储:

                                  原码:一个整数原本的二进制编码

                                                       比如: 8的二进制原码  1000(短除法求)

                                  反码:把原码依次取反

                                                        原码:1101  --》反码0010

                                  补码:反码加1

                                                        原码:1101 --》补码0010+1 --》0011

                                  正数在计算机中采用原码存放,并且最高位是符号位,0表示正数,1表示负数  

                                                           1010

                                  负数在计算机中采用补码存放   -88

 

练习: 熟悉一下短除法,求各种进制

            -1的二进制是多少

               (2)浮点型

                         float占4个字节

                         double占8个字节  

                         小数在计算机中是无法精准存储的

                         比如: 12.5

                                     12.6

              (3)short  2个字节

                  long    32位系统4字节    64位系统8字节

                  long  long int  12字节

              (4)char  存放单个字符的ASCII码值  占1个字节

                   @  #   $  %    'a'  'b'  'c'  '1'  '6'   8  9  0

                   美国人制定了ASCII码表,把字符编码成整数

                   man   ASCII命令可以查看ASCII码表

                   'A'  -->65  

                   'a'   -->97

                   '0'   -->48

                       char  a='@';  //C语言规定字符必须用单引号括起来

              (5)布尔类型bool  --》判断真假的,跟C语言的条件判断相配合

                     注意:  添加#include <stdbool.h>

                     只有两个值: true  真   false  假

                     定义:  bool  a=true;  //等价于  bool  a=1;

                                  bool  b=false; //等价于 bool  b=0;

              (6)无符号数

                      unsigned  int  a;  //无符号数a,不区分正负,当成纯粹的数字来计算,最高位不是符号位了

                      unsigned float  b;

                      unsigned  char  c;

练习:

          第一题:

               char b='b';  

               char c=b+5;  //请问c是多少

          第二题:

               char  a=389;   请问打印a的值是多少??  为什么??

                      考察数据溢出之后计算机是如何处理的

          第三题:

               字符跟整数之间的换算

                   '9'  -->转换成整数 9

                          '9'-'0'  或者  '9'-48  结果就是整数9

                   整数9 -->转换成字符'9'

                          9+'0'  或者9+48     结果是57

C语言程序的结构

=======================

   1. 最简单的C语言程序

        #include <stdio.h>  //头文件

        int main()  //C语言程序的入口,main函数

        {

                printf("hello  world!\n");  //帮助我们在屏幕上打印一句话

                return 0;  //结束整个main函数

        }

  2. linux中编译C语言程序

         gcc  hello.c    -o  hello

                gcc  --》linux中编译器的名字

                -o --》 output  输出

 3. linux中执行C语言程序

         ./程序的名字              

 

C语言的格式控制符号以及输入和输出

==================================

      1.  格式控制符号

            作用:由于C语言区分不同的数据类型,在输入输出这些数据的时候需要使用不同的格式控制符号来跟变量类型对应

            八进制数的标准写法:

                       int  a=10;  二进制10  --》2

                                         八进制10  --》8

                                         十六进制10 --》16

                      // int  a=b10;  //二进制

                       int  a=010;  //八进制10

                       int  a=0x10; //十六进制10

                       int  a=10;  //十进制的

            对应关系:

                     %d     --> int

                     %f      -->float    默认保留6位有效数字

                     %lf     -->double

                     %hu     -->short

                     %ld     -->long

                     %lld    -->long  long int

                     %c      -->char    输出的是字符本身

                     %d      -->char    输出是字符的ASCII码值

                     %x      -->十六进制,字符小写打印

                     %X      -->十六进制,字符大写打印

                     %#x    -->标准形式打印十六进制,前面加上0x

                     %o      -->八进制

                     %#o    -->标准形式打印八进制,前面加上0

                     %10.2f    -->前面10表示位宽   后面的2表示保留2个小数位

                     %-10.2f    -->前面10表示位宽   后面的2表示保留2个小数位

                     %.9f --》指定了保留9个小数位,位宽没有指定,默认位宽

                     %10d -->10是位宽,靠右对齐,左边补空格

                     %-10d --> 靠左对齐,右边补空格

                     %s      -->字符串

                     %5s

                     %p      -->变量地址

作业:二进制,八进制,十六进制加减法

          二进制 0110-1  结果

          八进制  75-67等于多少   

          十六进制  4F-54等于

                          F0-3D等于

         2  8  10  16进制之间的相互转换

          二进制--》转换八进制

          二进制--》转换16进制

 

 

 

 

 

 

    

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值