C語言入門第四篇,輸出

講了一些基本的,有些人可能會想爲什麼還不能寫出程序啊?不要着急,這篇文章過了,你就將寫出看了這個教程的第一個程序。

這裏我們先介紹兩個輸入輸出函數(輸入,輸出函數還有很多,但是現在用不到,後面要用了再講,函數這個概念我們先聽着,後面會講,這裏把它當成實現輸入輸出的功能的一個東西吧,實際上它們被定義在stdio.h這個頭文件裏),scanf()和printf()。

我們前面說了數據類型,變量,今天終於能派上用場啦。

上一節,我們說了給變量賦值,那麼怎麼把一個變量顯示出來呢?我們來看看printf這個函數。

printf
前面我也提到過這個函數,我們先不管其他的,先用。用好了漸漸深入再去了解其他的。

printf可以輸出你想輸出的任意的東西,例如:

#include<stdio.h>
int main()
{
        printf("hello world!");
        return 0;
}

這段代碼可以輸出hello world。

那麼printf如何輸出變量的值呢?

printf是輸出格式化的,什麼意思呢,就是你輸出變量的時候,一定要給他一個類型。這就要用到我們之前說的數據類型啦。

#include<stdio.h>

int main()
{
    int a=2;
    float b=1.12312;
    double c=1.1221312;
    char d='a';
    printf("%d\n",a);//輸出變量a
    printf("%f\n",b);//輸出變量b
    printf("%lf\n",c);//輸出變量c
    printf("%c\n",d);//輸出變量d
    return 0;
}

上面的代碼我們很清楚的看到數據類型所對應的格式(試着將這段代碼放到編譯器裏看看)。我們先忽略\n,下面再講,先看前面。

數據類型 對應格式
int %d
float %f
double %lf
char %c

這些是我們代碼裏面所包含的對應格式,也就說我們要輸出變量要先看他的數據類型,根據數據類型來選擇格式。下面再介紹幾種格式。

格式 對應數據類型 用途
o unsigned int 無符號8進制整數
u unsigned int 無符號10進制整數
x / X unsigned int 無符號16進制整數,x對應的是abcdef,X對應的是ABCDEF
e / E double 科學計數法表示,此處”e”大小寫代表在輸出時用“e”的大小寫
%s char * 字符串

其實printf裏面還有很多類型,但是我們常用的差不多都在這,如果你對其他的感興趣可以百度一下printf這個函數。大家還是記一記。說不定那天就用到了呢?

下面我們來介紹後面那個\n。他們有個名字叫轉義字符。轉義字符顧名思義就是將字符原本的意思轉化了,這裏的\n意思是換行。如果沒有它的話上面的所有輸出的內容都會在同一行,並且挨在一起(大家可以試試上面的代碼刪除\n)。

轉義字符 用途
\n 換行
\t 水平製表符,相當於隔一個tab的距離
\\ 輸出反斜槓\|

這裏我只列出了我們常用的,我覺得其他的我都沒怎麼用過,這裏要注意兩個反斜槓\\代表一個斜槓,因爲一個斜槓作爲了轉義的開頭。還有就是因爲在輸出的時候printf默認就要用兩個雙引號,所以想要輸出引號的話也必須轉義。

printf("\"");

這裏還有一點,就是前面在格式化輸出的時候,用了百分號%,那麼百分號如何輸出呢,答案是和上面的反斜槓差不多兩個百分號%%

我們有時在輸出小數的時候會要求保留多少位,我們可以在%後面添加數字,如果我要保留2位小數可以使用%.2f。這裏肯定有人好奇在小數點前面加數字是什麼意思呢?在小數點前面加的話代表輸出的內容佔用多大的寬度(這裏注意是最小寬度,如果你超過這個寬度還是會顯示出來的,下面的代碼的變量b就是)。可以試試下面的代碼。

#include<stdio.h>

int main()
{
    int a=2;
    float b=112312.231;
    double c=1.123;
    char d='a';
    printf("%5d%5.2f %5.3lf%5c\n",a,b,c,d);
    printf("000000000000000000000");
    return 0;
}

這段代碼大家放在編譯器裏面就知道我剛剛講的東西了,下面輸出的0是爲了讓你把上面的寬度看清楚。

總結
printf函數是C語言裏面很重要的格式化輸出函數。
1.它有自己輸出格式,一定要注意輸出格式,不然輸出結果和你想象的可能不一樣。
2.輸出時一定要注意輸出的內容是否需要轉義,也要學會使用轉義字符。
3.輸出的時候格式是可控制的需要多大的寬度,多少位的小數都是可以控制的。
最後大家一定要敲敲上面的代碼,會記得更牢靠一些的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章