#include<stdio.h>
#define PI 3.14159 //宏定义
int main(void)
{
//黄瓜 3元每斤 买五斤
//常量 在程序运行过程中值不能改变的量 const 数据类型 常量名 = 值;
const int price = 3;//只读变量
//变量 在程序运行过程中值可以发生改变 在定义局部变量是可以记上auto,也可以省略
auto int weight = 5;
int sum = price * weight;
** printf("%d\n", sum);**
//圆的面积和周长
const float pi = 3.1415926;
float r = 6;
float s = pi * r * r;
float l = 2 * pi * r;
// 占位符%f 输出一个浮点型 float(默认保存6位)会四舍五入
printf(“圆的面积:%f\n”, s);
printf(“圆的面积:%.2f\n”, s);//保留2位**
printf(“圆的周长%f\n”, l);**
//标识符
/*1.不能使用系统关键字
2.允许字母、数字、下划线
3.不允许数字开头
4.标识符区分大小写
5.见名知义(建议)RoleLevel role_level
*/
return 0;
}
#include<stdio.h>
int main0301(void)
{
//数据类型 标识符 = 值
//无符号 unsigned 有符号 signed(可以省略)
signed int a = -10;
unsigned int b = 10;//不能有符号
printf("%d\n", a);//%u 占位符 输出一个有符号十进制数据
printf("%u\n", a);//%u 占位符 输出一个无符号十进制数据
printf("%d\n", a);
printf("%d\n", a);
printf("%d\n", b);
return 0;
}
int main0104(void)
{
//进制 2、8、16进制0-1、0-7、0-9 10-15(a-f A-F)
int a = 10;
printf("%d\n", a);
//%x 输出一个16进制整型
printf("%x\n", a);
printf("%X\n", a);
//%o 输出一个8进制整型
printf("%o\n", a);
//定义八进制数据 以0开头
int b = 0123;
定义16进制数据 以0x开头
int c = 0xabc;
//计算机定义数据时,不可以直接定义二进制
printf("%d", b);
printf("%x", b);
printf("%o", b);
printf("%d", c);
printf("%x", c);
printf("%o", c);
return 0;
}
//#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#pragma warning(disable:4996)
int main(void)
{
int a;**
//通过键盘输入赋值
//&运算符 表示取地址运算符
**scanf("%d", &a);
printf("%d\n", a);
return 0;
}
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main(void)
{
int a = 10;//整型
short b = 20;//短整型
long c = 30;//长整型
long long d = 40;//长长整型
//short <= int <= long <= long long
printf("%d\n", a);//%d 输出整型
printf("%hd\n", b);//%hd 输出短整型
printf("%ld\n", c);//%ld 输出长整型
printf("%lld\n", d);//%lld 输出长长整型
//sizeof 计算数据类型在内存中占用的字节(BYTE)大小
//1B=8bit
//sizeof(数据类型) sizeof(变量名) sizeof 变量名
unsigned int len = sizeof(int);
//printf("%d\n", len);
printf("整型:%d\n", sizeof(a));//4B = 32bit
printf("短整型%d\n", sizeof(b));//2B = 16bit
printf("长整型:%d\n", sizeof(c));//4B = 32bit
printf("长长整型:%d\n", sizeof(d));//8B = 64bit
return 0;
}
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>
int main(void)
{
//字符型变量
char ch = 'a';
char ch1 = 'A';
//打印字符型变量
printf("%c\n", ch);
//打印字母a对应十进制数
printf("%d\n", ch - ch1);
//unsigned int len = sizeof(ch);
printf("%d\n", sizeof(ch));
return 0;
}
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>
int main0701(void)
{
float a = 3.14f;
double b = 3.14;
printf("%.2f\n", a);
printf("%lf\n", a);
//sizeof 字节大小
//浮点型数据类型 存储在内存中的格式分为 符号位 指数位 小数位
printf("%d\n", sizeof(a));
printf("%d\n", sizeof(b));
return 0;
}
int main(void)
{
int a = 10;
float b = 3.14;
float c = 3.2e5f;
float d = 3145.256;
//%e 占位符 科学计数法输出
printf("%e\n", d);
printf("%f\n", c);
//%p占位符 输出一个变量对应的内存地址编号(无符号十六进制整型数)
printf("%p\n", &a);
printf("%p\n", &b);
}
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>
int main(void)
{
//符号位溢出导致数的正负发生变化
char e = 127;
char f = 2;
char g = e + f;
printf("%d\n", g);
// 0111 1111
//+2后 1000 0001 ,这是负数补码,其原码为1111 1111,结果为-127
//
//最高位溢出会导致最高位丢失
unsigned char ch2;
ch2 = 255 + 1;//255+1
printf("%d\n", ch2);
// 1111 1111
//加1后 10000 0000,char只有8位最高位的溢出,结果为0000 0000,十进制为0
return 0;
}