close
輸入同樣也是在stdio.h內
輸入
scanf("格式化字串",變數位址,...);
scanf與printf相同都採用格式化字串來做輸入,但是scanf一定要有變數在後方,為甚麼?因為沒東西存怎麼輸入
但注意到的是,scanf的變數是以位址的方式,也就是一般輸入的時候要在變數前面加上&(取得變數位址)這個operator
在這樣的用法下,&並不是作為字元且運算
格式化字串表取自wiki(藍色常用)
關鍵字 |
格式化字串 |
---|---|
char |
%c |
unsigned char |
%c, %hhu |
signed char |
%c, %hhd, %hhi |
int |
%i, %d |
unsigned int |
%u |
signed int |
%i, %d |
short int |
%hi, %hd |
unsigned short |
%hu |
signed short |
%hi, %hd |
long int |
%li, %ld |
unsigned long |
%lu |
signed long |
%li, %ld |
long long |
%lli, %lld |
unsigned long long |
%llu |
float |
%f, %e, %g |
double |
%lf, %e, %g |
long double |
%Lf, %Le, %Lg |
char*(字串) | %s |
範例
#include<stdio.h> int main() { int a; scanf("%d",&a); printf("Your input:%d",a); return 0; }
輸入限制 與 多個輸入
可以在格式化字串的地方加入限制,這樣輸入會照著格式抓取變數
範例 使用逗號分隔
#include<stdio.h> int main() { int a,b; printf("intput 2 integer (format AAAAA,BBBB)"); scanf("%d,%d",&a,&b);/*這裡會因為前面用逗號 所以電腦遇到逗號之後 就會把後面的值放進第二個變數*/ printf("Your input:%d,%d",a,b); return 0; }
文章標籤
全站熱搜
留言列表