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 = 0; i < n; i++)
scanf("%d", a + i);
printf("您輸入的數是:\n");
for(i = 0; i < n; i++)
printf("%d ", a[i]);
free(a); /*釋放內存*/
return 0;
}
擴展資料
1、scanf()函數開始每次讀取壹個輸入字符,它跳過空白字符直到遇到壹個非空白字符。因為它試圖讀取壹個整數,所以scanf()期望發現壹個數字字符或者壹個符號(+或-)。
2、如它發現了壹個數字或壹個符號,那麽它就保存之並讀取下壹個字符。scanf()持續讀取和保存字符直到它遇到壹個非數字的字符。如遇到了壹個非數字的字符,它就得出結論,它已經講到了整數的尾部。
3、scanf()把這個非數字字符放回輸入。這就意味著程序下壹次開始讀取輸入時,它將從前面被放棄的那個非數字字符開始。最後,scanf()計算它讀取到的數字的相應數值,並將該值放到指定的變量中。