浮点型变量和字符型变量

今天来说说起浮点型变量和字符型变量
顾名思义,浮点类型变量是用来存储带有小数的实数的。
C语言中有三种不同的浮点类型,以下是对这三种不同类型的声明示例:
float Amount; /单精度型/
double; /双精度型/
long double ; /长双精度型/
浮点型都是有符号的。
单精度浮点数:
通常占用4个字节(32位)存储空间,其数值范围为-3.4E38~3.4E38,单精度浮点数最多有7位十进制有效数字,单精度浮点数的指数用“E”或“e”表示。如果某个数的有效数字位数超过7位,当把它定义为单精度变量时,超出的部分会自动四舍五入。

双精度浮点数:

通常占8 个字节(64位)内存空间,其数值范围为1.7E-308~1.7E+308。双精度完全保证的有效数字是15位,16位只是部分数值有保证。

输出 float 使用 %f 控制符,输出 double 使用 %lf 控制符,如下所示:

#include <stdio.h>
#include <stdlib.h>
int main()
{
float a=46548.101;
float b=320.302;
float c=1.23002398;
double d=123;
double e = 78.429;
printf(“a=%f \nb=%f \nc=%f \nd=%lf \ne=%lf\n”, a, b, c, d, e);
system(“pause”);
return 0;
}
运行结果:
a=46548.101563
b=320.302000
c=1.230024
d=123.000000
e=78.429000

对代码的说明:

  1. %f 默认保留六位小数,不足六位以 0 补齐,超过六位按四舍五入截断。

  2. 将整数赋值给 float 变量时会转换为小数。

  3. 小数默认为 double 类型,加上后缀f才是float类型。

  4. 由于内存有限,小数的精度受限,所以输出 a 时只能获得一个近似数。

字符型.
字符串,它是多个字符的集合,例如 “abc123”、“123\141\142\143”;当然也可以只包含一个字符,例如 “a”、“1”、"\63"。

不过为了使用方便,我们可以用 char 类型来专门表示一个字符,例如:

char a=‘1’;
char b=’’;’;
char c=‘X’;
char d=’ ‘; // 空格也是一个字符
char e=’\63’; //也可以使用转义字符的形式
char 称为字符类型,只能用单引号’ ‘来包围,不能用双引号" “包围。而字符串只能用双引号” "包围,不能用单引号’ '包围。

输出字符使用 %c,输出字符串使用 %s。
先看下面一段代码:

#include <stdio.h>
#include <stdlib.h>
int main()
{
char a = ‘E’;
char b = 70;
int c = 71;
int d = ‘H’;
printf(“a=%c, a=%d\n”, a, a);
printf(“b=%c, b=%d\n”, b, b);
printf(“c=%c, c=%d\n”, c, c);
printf(“d=%c, d=%d\n”, d, d);
system(“pause”);
return 0;
}
输出结果:
a=E, a=69
b=F, b=70
c=G, c=71
d=H, d=72

在ASCII码表中,E、F、G、H 的值分别是 69、70、71、72。

字符和整数没有本质的区别。可以给 char 变量一个字符,也可以给它一个整数;反过来,可以给 int 变量一个整数,也可以给它一个字符。

char 变量在内存中存储的是字符对应的 ASCII 码值。如果以 %c 输出,会根据 ASCII 码表转换成对应的字符;如果以 %d 输出,那么还是整数。

int 变量在内存中存储的是整数本身,当以 %c 输出时,也会根据 ASCII 码表转换成对应的字符。
#include <stdio.h>
int main()
{
unsigned char A=‘0’;
while(A<=170)
{
printf("%c\t",A);
A++;
}
getchar();
getchar();
return 0;
}
如该代码后面输出有问题 ascll码表127位后面是扩展的,一般是输出不出来的。
下面介绍怎莫输出后面的扩展位。
在这里插入图片描述
右键点击边框 选择默认值 然后点击 936()那一行 然后选择437(OE—美国),然后点击确定,在编译就会正确输出ascll扩展位了;
在这里插入图片描述
ascll码表算上扩展位有256位,0-127是可以直接输出的,后面的全部是扩展位,直接输出不了。
这就是今天需要说的

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值