Printf:讀取用戶輸入
前面的程序很好,但要是如果能從用戶那里讀入值5和7而不是使用固定的值的話,那就更好了。可以改為下面的程序:
#includeint main() {int a, b, c;printf("輸入第一個值:");scanf("%d",printf("輸入第二個值:"); scanf("%d", c = a + b;printf("%d + %d = %d n", a, b, c);return 0;}
以下是程序的執行過程:
?
?
? |
?
讓我們通過一些變量來完全理解printf。這是最簡單的printf聲明:
printf("您好");
它的格式字符串告訴printf把“您好”二字發送到標準輸出。對比:
printf("您好 ");
兩者的區別是后者在“您好”后跟一個回車換行,一起送到標準輸出。
下面這行顯示了如何使用printf輸出一個變量的值。
printf("%d", b)
%d是占位符,會在printf語句執行時替換為變量b的值。通常您需要把輸出值嵌入到一些文字之中。一種方法是這樣:
printf("溫度是");
printf("%d", b);
printf(" 度
");
更簡單的方法是這樣寫:
printf("溫度是 %d 度 ", b);
一個printf語句中可以使用多個%d占位符:
printf("%d + %d = %d ", a, b, c);
在printf語句中,格式字符串包含的操作符數目和后面的變量的數目和類型一定要一致,這一點極為重要。例如,如果格式字符串包含有三個%d操作符,那么格式字符串后面必須緊接正好三個參數,且參數的類型和先后順序必須和操作符指定的是一樣的。
使用不同形式的占位符,printf可以打印所有的C標準類型:
- int(整數)用%d
- float(浮點數)用%f
- char(單個字符)用%c
- 字符串(字符數組,見后面討論)用%s
評論
查看更多