我正在编写简单的家庭作业代码。 当我用
定义时,我从用户那里得到一个数字,即3.4scanf("%d",&a)
它只需要3并且这样做。我将a
定义为
int a;
我该怎么办?
答案 0 :(得分:3)
我认为你对c编程很新。这是一项非常简单的工作。这可以这样做: -
float a;
// to input a data in the variable a
scanf("%f",&a);
//to display the stored data
printf("%f\n",a);
//or
printf("%.nf\n",a);//specify value of n
//maximum value of n is 6 also is its default value
//for e.g. printf("%.2f",a); will display decimal number upto two digits after the decimal place
//you can know more about displaying data as
%d: decimal value (int)
%c: character (char)
%s: string (const char *)
%u: unsigned decimal value (unsigned int)
%ld: long int (long)
%f: float value (float or double)
%x: decimal value in Hexadecimal format
%o: decimal value in octal format
对于avialabe格式规范列表,请转到here
答案 1 :(得分:2)
使用float
float a;
scanf("%f", &a);
答案 2 :(得分:1)
您应该将a
定义为
float a;
并将%d
替换为%f
scanf
scanf("%f", &a);
我该怎么办?
答案 3 :(得分:1)
%d代表int。 3.4不是int类型,可以使用float。
float x;
scanf("%f", &x);
有关数据类型的详细信息,请访问以下网址:http://en.wikipedia.org/wiki/C_data_types
还有:http://www.techonthenet.com/c_language/variables/index.php
答案 4 :(得分:0)
对于int变量非常简单,我们使用%d格式说明符,如果我们想要float,我们使用%f格式说明符。因为根据IEEE int和float位图格式不同。
答案 5 :(得分:0)
你正在声明一个只能取整数值的int,所以你需要做的是使它浮动,用于具有小数点的数字
浮动a; 的scanf(%F,安培;一个);