本篇內(nèi)容主要講解“如何使用C語言輸入輸出printf、scanf函數(shù)”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“如何使用C語言輸入輸出printf、scanf函數(shù)”吧!
若需要使用輸入輸出函數(shù),則需要包含
printf是最常用的輸出函數(shù),可以格式化輸出任意的基本數(shù)據(jù)類型的變量。
int printf(const char*format,...)
format:"格式控制符"是用雙引號括起來的字符串(格式控制符,也叫占位符)
...:"輸出列表"中的數(shù)據(jù)可以是合法的常量、變量和表達式,要與“格式控制字符串”中的格式一一對應(yīng)。
%[-][0][m][l]* %d 按整型數(shù)據(jù)的實際長度輸出 %[0]md以m指定的字段寬度輸出,若數(shù)據(jù)的位數(shù)小于m,則左端補空格;若m前面有“0”,則左端補以0。 %-md以m指定的字段寬度輸出,左對齊 %ld輸出long int
示例:
//一般 printf("hello world"); printf("圓周率為:%lf", 3.1415); printf("一周有%d天", 7); //使用可選格式 printf("%d\n", 52); printf("%3d\n", 52); //輸出的內(nèi)容占3個字符寬度,默認右對齊,用空格填充 printf("%03d\n", 52); //同上,只不過填充字符從空格換成了0 //只需要在%后面加上負號即可表示左對齊 printf("%-3d\n", 52);
很多同學(xué)在輸出的時候,會遇到很多的問題,大概就是以下幾點:
格式字符中,除了X、E、G外,其他均用小寫字母,如“%d”不能寫成“%D”。
不同類型的數(shù)據(jù)應(yīng)使用相應(yīng)類型的格式字符說明其輸出形式。
如需輸出雙引號,應(yīng)在“格式控制”中表示為轉(zhuǎn)義字符的形式并用單引號引起來,即“\””。
如需輸出字符“%”,在“格式控制”中用連續(xù)兩個“%”即可。 如:printf(“%d%%”,s);
當(dāng)“格式控制”中格式符個數(shù)少于輸出表中的輸出項時,多余的輸出項不予輸出。
當(dāng)“格式符”多于輸出項時,結(jié)果為不定值。
有些時候,僅僅為了打印一個字符在顯示器屏幕上,此時動用功能強大的printf函數(shù),則頗有高射炮打蚊子之嫌,C提供了一個庫函數(shù)putchar來完成這個簡單的任務(wù)。
int putchar(int ch); //使用 putchar('A'); putchar(65);
而有些時候僅僅是為了輸出一個字符串,使用printf函數(shù)也稍顯麻煩,可以使用C提供的一個庫函數(shù)puts,而且puts函數(shù)會在輸出字符串之后,自動進行換行。
int puts(const char*str); //使用 puts("hello world");
scanf是最常用的輸入函數(shù),可以格式化輸入任意基本數(shù)據(jù)類型的變量。
int scanf(const char* format,...);
format:"格式控制符"是用雙引號括起來的字符串
...:"輸入列表"中的數(shù)據(jù)必須是合法變量的地址表(即變量前面加&符),要與“格式控制字符串”中的格式一一對應(yīng)。
如果輸入的輸入不止一個,在format格式控制字符串中,必須以空格間隔。
const double PI = 3.1415; int radius = 0; printf("請輸入半徑:\n"); scanf("%d", &radius); printf("圓的面積為:%lf", PI * radius * radius);
scanf函數(shù)的格式字符串由以下三類字符組成:
1>格式符(也叫占位符)和printf函數(shù)類似,scanf函數(shù)的格式字符串以%開始,以一個格式字符結(jié)束,中間可以插入附加的字符。格式符告訴了scanf函數(shù)該讀取什么樣的數(shù)據(jù)。
2>空白符空白符可以是空格(用空格鍵輸入)、制表符(用Tab鍵輸入)和新行符(用回車鍵輸入)。
3>非空白符除去格式說明符合空白符之外,就是非空白符。非空白符在用戶輸入的時候,也必須一并輸入。
可以非常方便的輸入一個字符。
int getchar(); //使用 int ch =getchar(); putchar(ch);
可以非常方便的輸入一個字符串。
char* gets_s(char* _Buffer,size_t _Size); //使用 char name[50]=""; gets_s(name,50); puts(name);
好了,C語言基本的輸入輸出就介紹到這里,大家可以先練習(xí)一下,后面介紹復(fù)雜的示例。
到此,相信大家對“如何使用C語言輸入輸出printf、scanf函數(shù)”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。