C语言-数据类型
数据类型:
1、基本类型:(整型、浮点型和字符型、枚举)(常量、变量)
符号常量使用前必须先定义(#define 标识符 常量)标识符一般大写
#include <stdio.h>
#define PRICE 30;
void main(){
int num,total;
num=10;
total=num*PRICE;
printf("total=%d\n",total);
}
2、构造类型(数组类型,结构体类型,共用体(联合)类型)
3、指针类型
4、空类型
八进制:以0开头
十六进制:以0X或0x开头
一个字节BYTE=8位bit
正数的补码和原码相同
负数的补码:该数绝对值的二进制形式按位取反再+1。
数据溢出:
整型数据溢出:范围216 /2= 32768,除去0 ,最大值为32767 +1后溢出得-32768
实型数据:浮点数356f与356.等价
存储形式:
#include <stdio.h>
void main(){
printf("%f\n",1/3*3);
}
//0.000000
#include <stdio.h>
void main(){
printf("%f\n",1.0/3*3);
}
//1.000000
字符常量:只能用单引号括起来,数字被定义为字符型后不能参与运算。
字符变量:char a,b;
大写字母:65~90(A~Z)97~122(a~z) 相应的相差32
#include <stdio.h>
void main(){
char a,b;
a=100;
b=97;
printf("%c,%c\n",a,b);
printf("%d,%d\n",a,b);
}
/*ASCII对应的值和字符*/
字符串常量由双引号括起来,可以包含多个字符,所占内存字节数等于其中的字节数+1,(增加的为字符串结尾符\o),字符串常量不能赋予字符变量。
混合运算:
自由转换
转换成运算中长度大的数据类型再进行计算
char,short-->int-->unsigned-->long-->double
赋值右边的数据类型将转换成左边的数据类型,会导致数据丢失。
强制转换
(类型说明符)(表达式)
只是本次运算的临时性转换,不改变数据说明时对变量定义的类型。
循环:
i=0;i<n Vs i=1;i<=n 一样的
如果有固定次数,用for
如果必须执行一次,用do_while
其他情况用while
for(i=2;i<x;i++){
isPrime=0;
break; !!!跳出循环,节约成本
}
continue:循环体内下面的语句不再执行,重新循环
goto 多重循环需要从里跳到外面时使用