您的位置:

c语言float和scanf,c语言float和int转换

本文目录一览:

在c语言里,float f1,f2;scanf("%3.2f%2.1f",&f1,&f2);然后输入4.52(回车)3.5,为什么会出现错误呢?

float f1,f2;

scanf("%f,%f",f1,f2); // 应该这样输入数据:4.52,3.5

1、在scanf()函数读入浮点数(float类型和double类型)数据时,不能指定精度

2、以格式"%f,%f"读入浮点数时,键盘输入时也以半角逗号“,”隔开

c语言 float a;scanf("%f",&a); 怎样保证键盘录入的字符一定是数字

使用scanf()不能保证录入的数据类型。因为它只会尽可能地从输入中读取正确的数据。如果你输入字符串"1234A",就会得到数字1234,“A”将被忽略。你没机会做数据验证。

如果需要验证用户的输入,我建议你接收字符串类型,然后再判断输入是否合法。

char s[15];

scanf("%s", s);

// 判断这个字符串是否为浮点数的形式,如果是就转换为浮点数。代码略。

望采纳,谢谢支持!

C语言里 scanf float char 各表示什么,在什么情况下使用?

scanf 用于输出,scanf(格式控制,地址表列)int scanf(char *format[,argument,...]);“格式控制”的含义同printf函数;“地址表列”是由若干个地址组成的表列,可以是变量的地址,或字符串首地址。

float 指浮点数据。

char 指字符型数据。

求c语言中各个语句如int,float,scanf的用法和区别?

int为整形变量占2个字节,共16位,值域为-32768~32767

char为字符型变量例如'a','b'等,存储时是存储的ascii码,ascii码是8位,所以char只需一个字节

例如'a'为01100001,一个字节就可以存8位

float为单精度实型,占4字节,可放32位二进制数,而且可以是小数,值域为-3.4e+38~3.4e+38

所说的变量其实只是一段内存空间,例如定义了int

a;则开辟了2个字节的内存空间,char

a;则开辟1个字节内存空间,float

a;则开辟4个字节内存空间。

printf函数是把变量的值输出在屏幕上;

scanf函数是从键盘上输入的值赋给变量。

C语言中printf输出float和double都用%f么(scanf又如何)

答:

1.C语言中printf输出float和double都可以用%f,而double型数据还可以用%lf。

2.scanf当中若是对双精度的变量赋值是必须是%后跟lf,而printf当中可以用%f也可以用%lf没有限制。

拓展资料:

c语言中的格式控制符:

%d十进制有符号整数

%u十进制无符号整数

%f浮点数

%s字符串

%c单个字符

%p指针的值

%e指数形式的浮点数

%x,%X无符号以十六进制表示的整数

%0无符号以八进制表示的整数

%g自动选择合适的表示法

参考资料:c语言-百度百科

C语言程序设计,关于float 和scanf

int用来定义整型变量(整数).float用来定义浮点型变量(实数).float和int一样是用来定义变量的,它不是函数.赋值语句value = 700 * weight * 14.5833之所以不在前面是因为变量weight还没有赋值(scanf函数是来给变量weight赋值的).

建议找本基础的C语言书看看.C语言中的float是用来定义浮点数的,浮点数并不是"浮动的数",它既可以表示整数也可以表示小数,浮点数的存储方式和整型数不太一样,使用上效率要低于整型数据.