欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語言中printf()函數(shù)的全面介紹及用法(簡單易懂)

 更新時間:2024年09月16日 10:22:24   作者:.jc7  
在C語言中,printf()是常用的輸出函數(shù),包含在頭文件中,它使用格式控制字符串,其中包括格式字符、轉(zhuǎn)義字符和普通字符,格式字符以"%"開頭,文中將用法介紹的非常詳細(xì),需要的朋友可以參考下

【說明】這是 C語言中的輸出函數(shù),當(dāng)然在 C++ 中也可以使用,只是有的需要改變一下形式,下面會提及,C++中一般使用 cout。(這里篇幅比較長,可以收藏一下哦)

一:頭文件

printf()函數(shù)的頭文件是 <stdio.h>。

二:格式控制字符串

格式控制字符串就是用雙引號括起來的字符串,包括三類:

1.格式字符。

格式字符是由 "%" 引導(dǎo),它是用來控制輸出字符的格式。有這個字符串時,必須要保持輸出值參數(shù)表中的數(shù)量和類型格式與格式字符一致,否則輸出的值可能不是我們想要的。

格式字符說明
%c字符型
%d十進(jìn)制數(shù)
%i讀入十進(jìn)制、八進(jìn)制、十六進(jìn)制數(shù),輸入的時候正常是十進(jìn)制,若輸入0前綴的數(shù)將讀入八進(jìn)制,0X前綴讀入16進(jìn)制
%ffloat型浮點數(shù)
%o八進(jìn)制
%s字符串,碰到空格或回車結(jié)束
%x16進(jìn)制
%p指針
%n至此已讀入值的等價字符數(shù)
%lfdouble型浮點數(shù)

2.轉(zhuǎn)義字符。

按照轉(zhuǎn)義后的含義輸出,比如 "\n" ,意思是輸出后換行。

3.普通字符。

意思是需要在輸出時原樣輸出的字符,比如下面代碼中的 "a="。

#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
	int a=31;
	printf("a=%d",a);// a是int型整數(shù),所以用 %d
}

【輸出結(jié)果】

三:格式字符輸出示例

1. %c-----------輸出字符

#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
	char ch='d';
	printf("%c",ch);
} 

【輸出結(jié)果】

2. %s-----------輸出字符串

#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
	printf("%s","Hello World!");
} 

【輸出結(jié)果】

【注意】上述是 C語言的寫法,當(dāng)你在C++中用 printf()時,下面的寫法肯定是錯誤的,因為 printf()函數(shù)不支持 std::string 類型,它期望的是 C 風(fēng)格的字符串。

#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
	string str="Hello World!";
	printf("%s",str);
}

那么要怎么改呢?std::string 類提供了一個成員函數(shù) c_str(),該函數(shù)返回一個指向以 null 結(jié)尾的字符數(shù)組的指針(即 C 風(fēng)格的字符串),這個數(shù)組包含了字符串的內(nèi)容。這個指針可以被 printf()函數(shù)接受。

【代碼如下】

#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
	string str="Hello World!";
	printf("%s",str.c_str());
}

【輸出結(jié)果】

【說明】其實關(guān)于 std::string 中的 c_str()函數(shù),也有很多類似用處,比如——atoi()函數(shù),atoi()函數(shù)可以將字符串轉(zhuǎn)化成 int 型整數(shù),這在字符串相關(guān)問題中是比較常用的,還是掌握一下比較好,具體的可以點進(jìn)我的主頁中,里面的一篇文章詳細(xì)介紹了這個函數(shù)以及其他字符串中常用的函數(shù)。當(dāng)轉(zhuǎn)換 std::string 類型的字符串時就要用 c_str()函數(shù)。

四:還可以指定輸出數(shù)據(jù)的指定數(shù)據(jù)寬度和小數(shù)位數(shù),即 %m.nf。

1.其中 m 表示輸出數(shù)據(jù)的寬度,即占 m 列,n 表示小數(shù)點后保留 n 位小數(shù),如題目中沒有強(qiáng)調(diào)輸出數(shù)據(jù)的寬度,直接 %.nf 即可。

【代碼如下】

#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
	double a=3.7839127;
	printf("%8.4f\n",a);
} 

【運(yùn)行結(jié)果】

可以從結(jié)果中看出,輸出的數(shù)據(jù)保留了四位小數(shù),而且數(shù)據(jù)前有兩個空格,還有換行。(還有 double 型數(shù)只能保證15位有效小數(shù),即使指定小數(shù)位數(shù)為20或其他超過15的,比如 %.20f,也不能保證輸出的20位小數(shù)都是有效數(shù)值)

【說明】保留小數(shù)還可以用 setprecision(n),n 是要保留的小數(shù)位數(shù),注意前面要加上 fixed。比如,cout<<fixed<<setprecision(5)<<num;意思是保留 num 的五位小數(shù)并輸出。

2.在 m.nf 前面加上一個負(fù)號,可以讓輸出的數(shù)據(jù)在域內(nèi)向左靠齊。以上面代碼為例。

#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
	double a=3.7839127;
	printf("%-8.4f\n",a);
} 

【運(yùn)行結(jié)果】

五:printf()函數(shù)中的格式修飾符

1.字母 l 修飾字符 f、e、g 時,用于輸出 long double 型數(shù)據(jù)。

2.字母 i 修飾字符 d、u、o、x 時,用于輸出 long 型數(shù)據(jù)。

3.字母 h 修飾字符d、o、x 時,用于輸出 short 型數(shù)據(jù)。

4.還有上面提到的 輸出域?qū)抦、顯示精度n、(m、n都是整數(shù)),以及減號 -(輸出數(shù)字或字符 ,在域內(nèi)向左靠)。

六:printf()函數(shù)的返回值

這個其實用的并不多,也可以了解一下。

printf()函數(shù)返回值 int型,也就是說在進(jìn)行嵌套使用時,它的打印格式是 %d。它返回的內(nèi)容就是打印字符的個數(shù)。下面會舉兩個例子來說明。

【樣例一】

#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
	printf("%d",printf("%d",printf("%d",54)));
	return 0;
}

【輸出結(jié)果】

先輸出54,因為 printf("%d,54)打印出來的是兩個字符,所以 printf("%d",printf("%d",54))輸出的是2,同理,最終輸出的是5421。

【樣例二】

#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
	printf("%d ",printf("%d ",printf("%d ",54)));
	return 0;
}

【輸出結(jié)果】

這個和上面的差不多,只是 %d 后面有了一個空格,所以導(dǎo)致輸出了 “54 3 2 ”。

總結(jié)

到此這篇關(guān)于C語言中printf()函數(shù)的全面介紹及用法的文章就介紹到這了,更多相關(guān)C語言中printf()函數(shù)用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 基于Python執(zhí)行dos命令并獲取輸出的結(jié)果

    基于Python執(zhí)行dos命令并獲取輸出的結(jié)果

    這篇文章主要介紹了基于Python執(zhí)行dos命令并獲取輸出的結(jié)果,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-12-12
  • Python基于高斯消元法計算線性方程組示例

    Python基于高斯消元法計算線性方程組示例

    這篇文章主要介紹了Python基于高斯消元法計算線性方程組,結(jié)合實例形式分析了Python高斯消元法針對方程組求解的相關(guān)操作技巧,需要的朋友可以參考下
    2018-01-01
  • pandas中.loc和.iloc以及.at和.iat的區(qū)別說明

    pandas中.loc和.iloc以及.at和.iat的區(qū)別說明

    這篇文章主要介紹了pandas中.loc和.iloc以及.at和.iat的區(qū)別說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • python如何從鍵盤獲取輸入實例

    python如何從鍵盤獲取輸入實例

    在本篇內(nèi)容中小編給各位整理的是關(guān)于python怎么從鍵盤獲取輸入的實例內(nèi)容,需要的朋友們可以參考下。
    2020-06-06
  • django drf框架自帶的路由及最簡化的視圖

    django drf框架自帶的路由及最簡化的視圖

    這篇文章主要介紹了django-drf框架自帶的路由以及最簡化的視圖,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-09-09
  • Python中SQLite數(shù)據(jù)庫的使用

    Python中SQLite數(shù)據(jù)庫的使用

    SQLite是一種輕型關(guān)系型數(shù)據(jù)庫,常用于嵌入式設(shè)備和移動應(yīng)用中。Python中內(nèi)置了SQLite模塊,可用于連接和操作SQLite數(shù)據(jù)庫。通過Python SQLite模塊,可以方便地創(chuàng)建、查詢和修改數(shù)據(jù)庫中的數(shù)據(jù),支持事務(wù)處理和數(shù)據(jù)庫操作的原子性保證
    2023-04-04
  • pybaobabdt庫基于python的決策樹隨機(jī)森林可視化工具使用

    pybaobabdt庫基于python的決策樹隨機(jī)森林可視化工具使用

    這篇文章主要為大家介紹了pybaobabdt庫基于python的決策樹隨機(jī)森林可視化工具使用探索,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-02-02
  • 使用Python腳本實現(xiàn)批量網(wǎng)站存活檢測遇到問題及解決方法

    使用Python腳本實現(xiàn)批量網(wǎng)站存活檢測遇到問題及解決方法

    本文是小編自己編寫的一個使用python實現(xiàn)批量網(wǎng)站存活檢測。在項目測試中非常有用。本文給大家分享了遇到的問題及解決方案,非常不錯,具有參考借鑒價值,感興趣的朋友一起看看吧
    2016-10-10
  • Python進(jìn)階學(xué)習(xí)之特殊方法實例詳析

    Python進(jìn)階學(xué)習(xí)之特殊方法實例詳析

    一般說來,特殊的方法都被用來模仿某個行為。下面這篇文章主要給大家介紹了關(guān)于Python進(jìn)階學(xué)習(xí)之特殊方法的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來一起看看吧。
    2017-12-12
  • pytorch實現(xiàn)查看當(dāng)前學(xué)習(xí)率

    pytorch實現(xiàn)查看當(dāng)前學(xué)習(xí)率

    這篇文章主要介紹了pytorch實現(xiàn)查看當(dāng)前學(xué)習(xí)率,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06

最新評論