1.数据的表现形式
1.格式符:
%d是打印十进制数的格式符
%c是打印单个字符的格式符
%o是打印八进制的格式符
%x是打印十六进制的格式符
%s是打印字符串的格式符
%e科学计数法打印的格式符
// printf("%d\n",12);
// printf("%c\n",'b');
// printf("%o\n",'c');
// printf("%s\n","pxc");
// printf("%x\n",'d');
// printf("%e\n",56.23);//科学计数法只针对小数,不能用整数去打印
// printf("%d\n",'\1');
// printf("%d\n",'\11');
// printf("%d\n",'\111');
// printf("%d\n",'\xF');
// printf("%d\n",'\x67');
// printf("%s\n","hello world");
// printf("%c\n","hello world");
2.整形常量
列如:100,200,-50等
3.实型常量
列如:0.3,1.4等
4.字符常量
为数字或字母或转义序列
注意:字符串使用双引号进行标识
转义序列:
\b 退格
\n 换行
\r 回车
\t 制表符
\\ 反斜杠(\)
\' 单引号
\" 双引号
\Ooo 八进制
\xhh 十六进制
// printf("1234\b56789\n");
// printf("12345\b7895\n");
// printf("hello world\r");
// printf("hello world\r");
// printf("world\n");
// printf("oidaghtgf\tasuhdg\n");
// printf("sdfa\tahgsdg\n");
// printf("pxc\\\n");
// printf("pxc\'\n");
5.变量
定义:一个有名字、具有特定属性的一个储存单元。
功能:用来存放数据,也就是存放变量的值;程序运行期间可以改变其值。
使用:先定义后使用。
2 数据类型
1.原码、补码、反码概念
原码:最高位是符号位,0为正数,1为负数,除了符号以外,其余的数字为这个数的二进制数
反码:正数的反码与原码一样,负数的反码是除了符号以外,对其余的原码的每一位取反
补码:负数的补码是反码加1
正数的原码、反码、补码一样
2.整型
定义:整数
储存:正数以二进制原码储存,负数以补码储存
// int e = 0xFFFFFFFF;//0x为定义十六进制数值0为定义八进制数值的开头
// printf("%d\n",e);
类型 占用空间 字节
int 16bit或32bit 4字节
// int a;//加unsigned int则定义为无符号 ,用%u打印无符号的十进制数
// a = -5;//声明一个变量 :数据类型 变量名(标识符);
short 16bit 2字节
// short b = 9;
// printf("%hd\n",b);//短整型输出格式
long 32bit 4字节
long long 64bit 8字节
// long int c = 12;
// long long int d = 28;
// printf("%ld\n",c);//长整型输出格式
// printf("%lld\n",d); //长长整型输出格式
// printf("%\n",sizeof(int));
// printf("%\n",sizeof(short int));
// printf("%\n",sizeof(long int));
// printf("%\n",sizeof(long long int));
这是查看整型的字节长度,其中sizeof()不是函数,是运算符
3.字符型
定义:储存字符和标点符号的字符,用特定的整数表示特定的字符
在ASCII中在能被识别,范围是:0-127,只需要7位即可。char类型是八位,刚好可以容纳。
存储:以整数存储,占用8bit
c语言使用:
// char ch = 'a';//声明一个字符型的变量ch并初始化
// printf("%c\n",ch) ;
// char ch;
// char chi;
// ch = getchar();//只接受单个字符,打印单个字符
// chi = getchar();//getchar()是从键盘输入一个字符的函数
// putchar(ch);//putchar是打印一个字符的函数
// putchar(chi);
// printf("%d\n",sizeof(char));
// printf("%d\n",sizeof(ch));
// char ch1;
scanf("%c",&ch1);
// ch1 = getchar();
// printf("%c\n",ch1);
// int ch2;
// char ch1;
// scanf("%d%c",&ch1,&ch2);
// printf("ch1=%d,ch2=%c\n",ch1,ch2);
// printf("请输入你的年龄:\n");
// char ch1;
// char ch2;
// char ch3;
// scanf("%c%c%c",&ch1,&ch2,&ch3);
// printf("%c,%c,%c\n",ch1,ch2,ch3);
//
// printf("请输入你的姓名:\n");
// char p;
// char x;
// char c;
//
// scanf("%c%c%c",&p,&x,&c);
// printf("%c,%c,%c\n",p,x,c);
4.浮点型
定义:用于储存小数类型,分为单精度float,双精度double,长双精度long double
存储:指数形式保存
占用空间:float 4字节,double 8字节
long double 16字节
float:1bit符号+8bit指数+52bit数值
C语言使用 :
float a = 0.3;//float为7位有效数字
// printf("%f\n",a);
// double b = 3.12345678;
// printf("%f\n",b);
// printf("%.数字f\n",a);//精确到小数点后数字位
// double b = 12.8164845;
// printf("%10f\n",b);//精确几位数字
// float a = 3.123456;
// int b = 4;
// float c = a+b;
// printf("%f\n",c);
// int a = 1;
// int b = 2;
// printf("%d\n",a+b);
// float c = 1.2;
// float d = 2.3;
// printf("%f",c+d);
// int a = 1;
// int b = 2;
// printf("%d\n",a-b);
// float c = 1.2;
// float d = 2.3;
// printf("%f",c-d);
// int a = 1;
// int b = 2;
// printf("%d\n",a*b);
// float c = 1.2;
// float d = 2.3;
// printf("%f",c*d);
// int a = 1;
// int b = 2;
// printf("%d\n",a/b);
// float c = 1.2;
// float d = 2.3;
// printf("%f",c/d);
// int a = 1;
// int b = 2;//浮点型不能取余
// printf("%d\n",a%b);
// int a = 2;
// float b = 4.5;//float型优先级比int型高,进行强制类型转换
// printf("%f\n",a+b);
// int a;
// int b;
// scanf("%d",&a);
// b = a%2;
// printf("%d",b);
// float a;
// int b;
// scanf("%f",&a);
// scanf("%d",&b);
// printf("%f\n",a+b);
// printf("%f",a);