C语言基础2

目录

一、进制转换

1.1 十进制转二进制(128 64 32 16 8 4 2 1)

1.2 二进制转十进制 

1.3 十六进制转二进制(8 4 2 1)

1.4 二进制转十六进制

1.5 八进制转二进制(4 2 1)

1.6 二进制转八进制

综合运用

二、数据存储方式

三、数据类型

3.1 基本数据类型

3.1.1 整型数据---int

3.1.2 浮点型/实型---小数类型

3.1.3 字符型---char

3.1.4 关键字sizeof

3.2 数据常量和数据变量

3.2.1 数据常量

3.2.2 数据变量

四、printf函数与scanf函数

4.1 printf函数

4.2 scanf函数


一、进制转换

        十进制:0-9   例:1234

        二进制:0-1   B/b   例:11

        八进制:0-7   O/o/0  例:075

        十六进制:0-15  10-a  11-b  12-c  13-d  14-e  15-f

                        代码书写:0x/0X  : 0xa6 

                        实体资料一般用h/H表示 : a6H

1.1 十进制转二进制(128 64 32 16 8 4 2 1)

        例:126 --- 10000010

1.2 二进制转十进制 

        例:1   0   0   0   1   1   0   1

       1*2^7+0*2^6+0*2^5+0*2^4+1*2^3+1*2^2+0*2^1+1*2^0=141

1.3 十六进制转二进制(8 4 2 1)

        一位十六进制转四位二进制

        例:0xa7c – 1010 0111 1100

1.4 二进制转十六进制

        例:b101 0010 1111 0001 0110 --- 0x52f16

               b0110 1010 1000 1110 1001 --- 0x6a8e9

1.5 八进制转二进制(4 2 1)

        例:012 --- b001 010

               045736 --- b100 101 111 011 110

1.6 二进制转八进制

        例:b1 101 000 010 --- 01502

               b110 101 000 000 000 --- 065000

综合运用

(1) 将0x45ad转换为八进制

      先转二进制:b0 100 010 110 101 101

      再转八进制:042655

(2) 将65转换为十六进制

      65  ---  b100 0001  ---  0x41

(3) 将076转换成十进制

      076  ---  b111 110  ---  62

二、数据存储方式

        正负数以原码、反码、补码形式存储

正数:三码都一样

负数:原码:最高位代表符号,0代表正,1代表负

           反码:在原码基础上,除符号位,1变0,0变1

           补码:反码+1

三、数据类型

        数据类型主要是为了定义数据在内存中所占的空间大小以及分配数据的位置及其数据大小范围。1字节=8位(1byte=8bit

        数据类型分为:基本数据类型、构造数据类型、空类型

3.1 基本数据类型

3.1.1 整型数据---int

        整型数据是指不包含小数的数值(例:11、-12)。int类型数据至少占2个字节,通常为4个字节(8位、16位单片机中int占2个字节,32位单片机和PC电脑int占4个字节)以下所讲以32位为基础。

(1)整型:

        ①有符号类型 (signed)int

            最高位表示符号位(0正1负),取值范围:-2^31~2^31-1

        ②无符号类型 unsigned int

            取值范围:0~2^32-1

(2)短整型 short (int):

        占2个字节空间。有符号短整型:-2^15~+2^15-1,无符号短整型:02^16-165535

(3)长整型 long(int):

        与int一样

(4)长长整型 long long int:

        占8个字节空间。有符号:-2^31~+2^31-1,无符号:0~2^32-1

3.1.2 浮点型/实型---小数类型

        浮点型数据也称为实型数据类型,用于存储小数(例:0.125、-12.5、3.0 ),数据为有符号类型。

(1)单精度浮点型float

      占4个字节空间,精确到小数点后6~7位

(2)双精度浮点型double

      占8个字节空间,精确到小数点后16~17位

3.1.3 字符型---char

   字符型数据是通过存储一个特殊的正数来表示一个特定字符,表示方法:‘0’、‘a’

字符型数据意义:

1)存放整数  

        C语言中规定“char”占1个字节空间大小,字符型同样分“有符号(char/signed char,数据的取值范围是:-2^7~+2^7-1)”和“无符号(unsigned char,数据的取值范围是:0~2^8-1)”。

2)存放字符

        C语言中字符分为两类,一类为打印字符(可见字符,普通字符),例如:‘a’、‘1’;另一类为控制字符(不可见字符,转义字符),使用反斜杠(\)+字符来表示。例如:\n(换行)、\r(空格)、\b(退格)、\t:Tab。

3.1.4 关键字sizeof

        用于计算数据类型所占字节空间大小

        Sizeof(基本数据类型/变量名)

#include "stdio.h"

int main()
{
	int a=10;
	char b=3;
	short c;
	long d;
	long long w;
	float f;
	double e;
	
	printf("int:%d\n",sizeof(a));
	printf("char:%d\n",sizeof(b));
	printf("short:%d\n",sizeof(c));
	printf("long:%d\n",sizeof(d));
	printf("long long:%d\n",sizeof(w));
	printf("float:%d\n",sizeof(f));
	printf("double:%d\n",sizeof(e));
	
	d=a/b;
	printf("d:%d\n",d);
}

3.2 数据常量和数据变量

3.2.1 数据常量

        数据常量是指在程序运行过程中不可改变的数据。

(1)数值型常量

        整型常量默认为int,浮点型常量默认为double。

(2)字符型常量

        字符常量:用单引号‘’引起来的,占用1个字节。

        字符串常量:用双引号“”引起来的,占用字节位字符串字符个数+1。

3.2.2 数据变量

(1) 概述

        数据变量是指在程序运行过程中,其值可以改变的数据。因其数值变化所以一般用一个固定名称代表一个变量。

(2) 组成

        数据变量由变量名(标识符)和变量值(常量数值、变量、表达式)两部分组成。

(3)命名规则

        ① 可由数字、字母、下划线以及$组成

        ② 不能用数字开头

        ③ 不能与关键字相同

         例:int  a_12=6

四、printf函数与scanf函数

4.1 printf函数

           printf函数是一个标准输出函数,将内容输出到电脑屏幕上

打印函数常用格式符:  

%d:  以十进制格式输出    

%o:  以八进制格式输出  

%x:  以十六进制格式输出  

%c:  以字符格式输出       

%s:  以字符串格式输出  

%f:  以单精度格式输出(只能用于输出浮点型数据)float

%lf: 以双精度格式输出(只能用于输出浮点型数据)double

%.nf:输出n个小数位(只能用于输出浮点型数据)

%%:  输出一个%   

%u:  打印无符号数值

%p:  输出变量的地址或者指针地址  

%nd : 以右对齐的方式打印十进制数值

%-nd : 以左对齐的方式打印十进制数值

#include "stdio.h"

int main()
{
	
	float c=0.123456789; 
	printf("c:%f\n",c);
	printf("hello world\n");
	
}

4.2 scanf函数

        scanf函数是标准输入函数,可以按用户指定的格式从键盘上把数据输入到指定的变量中。

#include "stdio.h"

int main()
{
	char ch;

	printf("请输入:\n");
	scanf("%c",&ch);
	printf("%c\n",ch);

}

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值