C语言中用scanf输入双精度浮点数

Python010

C语言中用scanf输入双精度浮点数,第1张

C语言中用scanf输入双精度浮点数的源代码如下

#include <stdio.h>

#include <stdlib.h>

int main()

{

int n, *a, i

printf("请输入数组长度:")

scanf("%d", &n)

a = malloc(sizeof(int) * n)/*分配内存*/

printf("请输入%d个数:\n", n)

for(i = 0i <ni++)

scanf("%d", a + i)

printf("您输入的数是:\n")

for(i = 0i <ni++)

printf("%d ", a[i])

free(a)/*释放内存*/

return 0

}

扩展资料

1、scanf()函数开始每次读取一个输入字符,它跳过空白字符直到遇到一个非空白字符。因为它试图读取一个整数,所以scanf()期望发现一个数字字符或者一个符号(+或-)。

2、如它发现了一个数字或一个符号,那么它就保存之并读取下一个字符。scanf()持续读取和保存字符直到它遇到一个非数字的字符。如遇到了一个非数字的字符,它就得出结论,它已经讲到了整数的尾部。

3、scanf()把这个非数字字符放回输入。这就意味着程序下一次开始读取输入时,它将从前面被放弃的那个非数字字符开始。最后,scanf()计算它读取到的数字的相应数值,并将该值放到指定的变量中。

声明变量x为double型(浮点双精度)或float(浮点单精度)。

调用输入函数scanf("%lf",&x)或scanf("%f",&x)——其中%lf表示x是double型、%f表示float型。

调用printf("%.5f\n",x)输出——其中.5表示小数点后保留5位小数。

#include

int

main(void)

{

float

a[10]

int

i,j

float

average

float

sum=0.0

printf("请输入6个以内的

浮点数

,按回车分隔,输入0结束:\n")

scanf("%f",&a[0])

for(i=0a[i]!=0i++)

{

scanf("%f",&a[i+1])

}

i--

j=i

while(j>=0)

{

sum=sum+a[j]

j--

}

average=sum/(i+1)

printf("这几个数的平均值是:%f\n",average)

return

0

}