#include<stdio.h>
int main(void)
{
float weight, value;
printf("Are you worth your weight in rhodium?
");
printf("Let's check it out.
");
printf("Please enter your weight in pounds:");
scanf_s("%f", &weight);
value = 770 * weight * 14.5833;
printf("Your weight in rhodium is worth $%.2f.
", value);
printf("You are easily worth that!If rhodium prices drop,
");
printf("eat more to maintain your value.
");
return 0;
}
int
类型
int是符号的整数,其取值范围依赖于计算机系统
int num_1;
int num_1,num_2;
printf("number:%d",number)//"%d"是要求打印整数,即decimal
八进制和十六进制
#include<stdio.h>
int main(void)
{
int x = 100;
printf("dec = %d;octal = %o:hex = %x
", x, x, x); //"%o"和"%x"分别显示八进制和十六进制
printf("dec = %d;octal = %#o;hex = %#x
", x, x, x);//在前面的基础上显示符号
return 0;
}
其他int
数据类型
short int
类型
可能占用比int类型更少的储存空间,用于仅需要小数值的场合以节省空间。
long int
类型
可能占用比int类型更少的储存空间,用于使用大数值的场合。
long long int
类型
可能占用比long类型更多的储存空间,用于使用更大数值的场合。
unsigned int
类型
无符号的int
类型。
还有unsigned long int
、unsigned long long int
等等。
数值溢出
#include<stdio.h>
int main(void)
{
int num_1 = 2147483647;
unsigned int num_2 = 2147483647 * 2;
printf("num_1:%d %d %d",num_1,num_1+1, num_1+2);
printf("num_2:%d %d %d", num_2, num_2 + 1, num_2 + 2);
}
/*
num_1:2147483647 -2147483648 -2147483647
num_2:-1 0 1
*/
//int num_1和unsigned int num_2达到最大值都会溢出,但是int的起始点是-2147483648,而unsigned int的起始点是0
long
常量与long long
常量
如果希望把一个较小的常量作为long
类型对待,可以使用“l”或“L”后缀,同理·还有“ll”(“LL”)、“ull”(“ULL”)等
打印short
、long
、long long
和unsigned
类型数
#include<stdio.h>
int main(void)
{
unsigned int un = 10000;
short end = 200;
long big = 6553710241024;
long long verybig = 123456789012254;
printf("un = %u and not %d
", un, un); //使用"%u"打印
printf("end = %hd and %d
", end, end); //使用"%hd"打印
/*"%hd"和"%d"打印的是也一样的,因为int被认为是最有效的整数类型*/
printf("big = %ld and not %d
", big, big); //使用"%ld"打印
printf("verybig = %lld and not %d
", verybig, verybig); //使用"%lld"打印
return 0;
}
char
类型
char
类型用于储存字母和标点符号之类的字符,但是在技术上char
却是整数类型,这是因为char类型实际储存的是整数而不是字符。
其中,单引号中的是字符常量;不使用单引号的是一个变量名;使用双引号的是一个字符串。
转义字符 | 意义 | ASCII码值(十进制) |
---|---|---|
a | 响铃 | 007 |
退一格 | 008 | |
f | 换页(在cmd里是垃圾字符) | 012 |
换行 | 010 | |
水平制表符 | 009 | |
回车 | 013 | |
v | 垂直制表符 | 011 |
\ | 代表一个反斜字符“” | 092 |
' | 代表一个单引号 | 039 |
" | 代表一个双引号 | 034 |