簡體   English   中英

如何在沒有數組的C中掃描字符串

[英]how to scan a string in C without arrays

我們在C中有一個項目,在項目中我們有一個十進制(正數或負數)數字並打印所有數字。說明頁說,程序可能會得到一個不是雙精度數的數字,因此“我們不能使用雙精度數”,我們不能使用數組。 它說“我們必須要有創造力”。 這是我所做的:

For(I=0;I<=2;I++){ Scanf("%d", &a); printf("%d", a);}

因此,如果我得到“ 12.3456”(在同一行中)作為輸入,則僅打印前3位數字(123)。 如何打印任何輸入的所有數字。 否則您可能會有不同的想法...謝謝

int n1, n2, i1,i2;
int status;

status = scanf("%d.%n%d%n", &n1, &i1, &n2, &i2);
if(status == 2)
    printf("%d%0*d\n", n1, i2-i1, n2);
else if(status == 1)
    printf("%d\n", n1);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM