日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

scanf

發布時間:2023/12/19 综合教程 34 生活家
生活随笔 收集整理的這篇文章主要介紹了 scanf 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

scanf函數,與printf函數一樣,都被定義在stdio.h里,因此在使用scanf函數時要加上#include。它是格式輸入函數,即按用戶指定的格式從鍵盤上把數據輸入到指定的變量之中,其關鍵字最末一個字母f即為“格式”(format)之意。

函數原型

int scanf( const char *format, ... );

scanf()函數是格式化輸入函數,它從標準輸入設備(鍵盤) 讀取輸入的信息。

其調用格式為: scanf("<格式化字符串>",<地址表>);

函數 scanf() 是從標準輸入流 stdio 中讀內容的通用子程序,可以讀入全部固有類型的數據并自動轉換成機內形式。

返回值

scanf()函數返回成功賦值的數據項數,讀到文件末尾出錯時則返回EOF。

如:

scanf("%d,%d", &a, &b);

如果a和b都被成功讀入,那么scanf的返回值就是2

如果只有a被成功讀入,返回值為1

如果a和b都未被成功讀入,返回值為0

如果遇到錯誤或遇到end of file,返回值為EOF。

且返回值為int型.

例:使用scanf函數輸入數據。

#include<stdio.h>

int main()

{

int a,b,c;

printf("輸入 a, b, c
");

scanf("%d,%d,%d", &a, &b, &c);

printf("a = %d b = %d c = %d
", a, b, c);

fflush(stdin);

return 0;

}

注意上面的scanf("%d,%d,%d",&a,&b,&c);中%d,%d,%d之間有逗號,在輸入數據時也要加逗號,如果去掉逗號,輸入時就不用逗號,而用空格,tab鍵或回車鍵將各個數據隔開

&a,&b,&c中的&是地址運算符,&a指a在內存中的地址。scanf的作用是:按照a,b,c的內存地址將a,b,c的值存進去。變量a,b,c的地址是在編譯連續階段分配的。

這里注意:如果scanf中%d是連著寫的如“%d%d%d”,在輸入數據是,數據之間不可以加逗號,只能是空格或tab鍵——“2 3 4”/“2(按tab)3(按tab)4(按tab)”。若是“%d,%d,%d”,則在輸入數據時需要加“,”——“2,3,4”.

注意問題

(1)對于字符串數組或字符串指針變量,由于數組名和指針變量名本身就是地址,因此使用scanf()函數時,不需要在它們前面加上"&"操作符。

(2)可以在格式化字符串中的"%"各格式化規定符之間加入一個整數,表示任何讀操作中的最大位數。

(3) scanf()函數中沒有精度控制。

如: scanf("%5.2f",&a); 是非法的。不能企圖用此語句輸入小數為2位的實數。

(4) scanf中要求給出變量地址,如給出變量名則會出錯

如 scanf("%d",a);是非法的,應改為scanf("%d",&a);才是合法的。

(5)在輸入多個數值數據時,若格式控制串中沒有非格式字符作輸入數據之間的間隔則可用空格,TAB或回車作間隔。

C編譯在碰到空格,TAB,回車或非法數據(如對“%d”輸入“12A”時,A即為非法數據)時即認為該數據結束。

(6)在輸入字符數據(%c)時,若格式控制串中無非格式字符,則認為所有輸入的字符均為有效字符。

例如:scanf("%c%c%c",&a,&b,&c);

輸入為:

d e f

則把'd'賦予a, ' (空格)'賦予b,'e'賦予c。因為%c 只要求讀入一個字符,后面不需要用空格作為兩個字符的間隔,因此把' '作為下一個字符送給b。

只有當輸入為:def 時,才能把'd'賦于a,'e'賦予b,'f'賦予c。

備注:使用 scanf()時,對于參數列表應遵循以下規則:

如果希望讀取基本數據類型變量的值,應在變量名的前面加上符號&

當讀取指針變量指向的值時,在變量名前不能使用&

總結

以上是生活随笔為你收集整理的scanf的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。