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

C語(yǔ)言文字藝術(shù)之?dāng)?shù)據(jù)輸入輸出

 更新時(shí)間:2022年07月06日 09:54:41   作者:王小王_123???????  
這篇文章主要介紹了C語(yǔ)言文字藝術(shù)之?dāng)?shù)據(jù)輸入輸出,C語(yǔ)言的語(yǔ)句用來(lái)向計(jì)算機(jī)系統(tǒng)發(fā)出操作指令。一條語(yǔ)句編寫完成經(jīng)過(guò)編譯后產(chǎn)生若干條機(jī)器指

語(yǔ)句

C語(yǔ)言的語(yǔ)句用來(lái)向計(jì)算機(jī)系統(tǒng)發(fā)出操作指令。一條語(yǔ)句編寫完成經(jīng)過(guò)編譯后產(chǎn)生若干條機(jī)器指令。實(shí)際程序中包含若干條語(yǔ)句,因此語(yǔ)句的作用就是完成一定的操作任務(wù)。

字符數(shù)據(jù)輸入輸出

字符數(shù)據(jù)輸出

字符數(shù)據(jù)輸出使用的是putchar函數(shù),作用是向顯示設(shè)備輸出一個(gè)字符。該函數(shù)的定義為:

int putchar( int ch );

使用時(shí)要添加頭文件stdio.h,其中的參數(shù)ch是要進(jìn)行輸出的字符,可以是字符型變量或整型變量,也可以使用常量。例如輸出一個(gè)字符A的代碼如下:

putchar('A');

使用putchar函數(shù)也可以輸出轉(zhuǎn)義字符,例如輸出字符A:

putchar('\101');

【實(shí)例5.1】 使用putchar函數(shù)實(shí)現(xiàn)字符數(shù)據(jù)輸出。在程序中使用putchar函數(shù),輸出字符串“Hello”并且在字符串輸出完畢之后進(jìn)行換行。

#include<stdio.h>
int main()
{
char cChar1,cChar2,cChar3,cChar4; /*聲明變量*/
cChar1='H'; /*為變量賦值*/
cChar2='e';
cChar3='l';
cChar4='o';
putchar(cChar1); /*輸出字符變量*/
putchar(cChar2);
putchar(cChar3);
putchar(cChar3);
putchar(cChar4);
putchar('\n'); /*輸出轉(zhuǎn)義字符*/
return 0;
}

字符數(shù)據(jù)輸入

字符數(shù)據(jù)輸入使用的是getchar函數(shù),此函數(shù)的作用是從終端(輸入設(shè)備)輸入一個(gè)字符。getchar函數(shù)與putchar函數(shù)的區(qū)別在于沒(méi)有參數(shù)。

該函數(shù)的定義為:

int getchar();

使用getchar函數(shù)時(shí)也要添加頭文件stdio.h,函數(shù)的值就是從輸入設(shè)備得到的字符。例如從輸入設(shè)備得到一個(gè)字符賦給字符變量cChar:

cChar=getchar();

【實(shí)例5.2】 使用getchar函數(shù)實(shí)現(xiàn)字符數(shù)據(jù)輸入。在本實(shí)例中,使用getchar函數(shù)獲取在鍵盤上輸入的字符,再利用putchar函數(shù)進(jìn)行輸出。本實(shí)例演示了將getchar作為putchar函數(shù)表達(dá)式的一部分,進(jìn)行輸入和輸出字符的方式。

#include<stdio.h>
int main()
{
char cChar1; /*聲明變量*/
cChar1=getchar(); /*在輸入設(shè)備得到字符*/
putchar(cChar1); /*輸出字符*/
putchar('\n'); /*輸出轉(zhuǎn)義字符換行*/
getchar(); /*得到回車字符*/
putchar(getchar()); /*得到輸入字符,直接輸出*/
putchar('\n'); /*換行*/
return 0; /*程序結(jié)束*/
}

【實(shí)例5.3】 使用getchar函數(shù)取消獲取回車符。

#include<stdio.h>
int main()
{
char cChar1; /*聲明變量*/
cChar1=getchar(); /*在輸入設(shè)備得到字符*/
putchar(cChar1); /*輸出字符*/
putchar('\n'); /*輸出轉(zhuǎn)義字符換行*/
/*將此處getchar函數(shù)刪掉*/
putchar(getchar()); /*得到輸入字符,直接輸出*/
putchar('\n'); /*換行*/
return 0; /*程序結(jié)束*/
}

字符串輸入輸出

字符串輸出函數(shù)

字符串輸出使用的是puts函數(shù),作用是輸出一個(gè)字符串到屏幕上。

該函數(shù)的定義為:

int puts( char *str );

使用該函數(shù)時(shí),先要在其程序中添加stdio.h頭文件。其中,形式參數(shù)str是字符指針類型,可以用來(lái)接收要輸出的字符串。例如使用puts函數(shù)輸出一個(gè)字符串:

puts("I LOVE CHINA!");  /*輸出一個(gè)字符串常量*/

這行語(yǔ)句是輸出一個(gè)字符串,之后會(huì)自動(dòng)進(jìn)行換行操作。這與printf函數(shù)有所不同,在前面的實(shí)例中使用printf函數(shù)進(jìn)行換行時(shí),要在其中添加轉(zhuǎn)義字符'\n'。puts函數(shù)會(huì)在字符串中判斷“\0”結(jié)束符,遇到結(jié)束符時(shí),后面的字符不再輸出并且自動(dòng)換行。例如:

puts("I LOVE\0 CHINA!");  /*輸出一個(gè)字符串常量*/

在上面的語(yǔ)句中加上“\0”字符后,puts函數(shù)輸出的字符串就變成:I LOVE。

【實(shí)例5.4】 使用字符串輸出函數(shù)顯示信息提示。在本實(shí)例中,使用puts函數(shù)對(duì)字符串常量和字符串變量都進(jìn)行操作,在這些操作中觀察使用puts函數(shù)的方式。

#include<stdio.h>
int main()
{
char* Char="ILOVECHINA"; /*定義字符串指針變量*/
puts("ILOVECHINA!"); /*輸出字符串常量*/
puts("I\0LOVE\0CHINA!"); /*輸出字符串常量,其中加入結(jié)束符'\0'*/
puts(Char); /*輸出字符串變量的值*/
Char="ILOVE\0CHINA!"; /*改變字符串變量的值*/
puts(Char); /*輸出字符串變量的值*/
return 0; /*程序結(jié)束*/
}

字符串輸入函數(shù)

字符串輸入函數(shù)使用的是gets函數(shù),作用是將讀取字符串保存在形式參數(shù)str變量中,讀取過(guò)程直到出現(xiàn)新的一行為止。其中新的一行的換行字符將會(huì)轉(zhuǎn)化為字符串中的空終止符“\0”。gets函數(shù)的定義如下:

char *gets( char *str );

在使用gets字符串輸入函數(shù)前,要為程序加入頭文件stdio.h。其中的str字符指針變量為形式參數(shù)。例如定義字符數(shù)組變量cString,然后使用gets函數(shù)獲取輸入字符的方式如下:

gets(cString);

在上面的代碼中,cString變量獲取到了字符串,并將最后的換行符轉(zhuǎn)化成了終止字符。

【實(shí)例5.5】 使用字符串輸入函數(shù)gets獲取輸入信息。

#include<stdio.h>
int main()
{
char cString[30]; /*定義一個(gè)字符數(shù)組變量*/
gets(cString); /*獲取字符串*/
puts(cString); /*輸出字符串*/
return 0; /*程序結(jié)束*/
}

格式輸出函數(shù)

前面章節(jié)的實(shí)例中常常使用格式輸入輸出函數(shù)scanf和printf。其中printf函數(shù)就是用于格式輸出的函數(shù),也稱為格式輸出函數(shù)。

printf函數(shù)的作用是向終端(輸出設(shè)備)輸出若干任意類型的數(shù)據(jù)。printf函數(shù)的一般格式為:

printf(格式控制,輸出列表)

括號(hào)內(nèi)包括兩部分:

格式控制:格式控制是用雙引號(hào)括起來(lái)的字符串,此處也稱為轉(zhuǎn)換控制字符串。其中包括兩種字符,一種是格式字符,另一種是普通字符。

格式字符:格式字符用來(lái)進(jìn)行格式說(shuō)明,作用是將輸出的數(shù)據(jù)轉(zhuǎn)化為指定的格式輸出。格式字符是以 “ % ” 字符開(kāi)頭的。 普通字符是需要原樣輸出的字符,其中包括雙引號(hào)內(nèi)的逗號(hào)、空格和換行符。       輸出列表

輸出列表中列出的是要進(jìn)行輸出的一些數(shù)據(jù),可以是變量或表達(dá)式。

例如,要輸出一個(gè)整型變量時(shí):

int iInt=10;

printf("this is %d",iInt);

執(zhí)行上面的語(yǔ)句顯示出來(lái)的字符是this is 10。在格式控制雙引號(hào)中的字符是this is %d,其中的this is字符串是普通字符,而%d是格式字符,表示輸出的是后面iInt的數(shù)據(jù)。

由于printf是函數(shù),“格式控制”和“輸出列表”這兩個(gè)位置都是函數(shù)的參數(shù),因此printf函數(shù)的一般形式也可以表示為:

printf(參數(shù)1,參數(shù)2,……,參數(shù)n)

函數(shù)中的每一個(gè)參數(shù)按照給定的格式和順行依次輸出。例如,顯示一個(gè)字符型變量和整型變量:

printf("the Int is %d,the Char is %c",iInt,cChar);

下表列出了有關(guān)printf函數(shù)的格式字符。

 【實(shí)例5.6】 使用格式輸出函數(shù)printf。在本實(shí)例中,使用printf函數(shù)對(duì)不同類型變量進(jìn)行輸出,對(duì)使用printf函數(shù)所用到的輸出格式進(jìn)行分析理解。

#include<stdio.h>
int main()
{
int iInt=10; /*定義整型變量*/
char cChar='A'; /*定義字符型變量*/
float fFloat=12.34f; /*定義單精度浮點(diǎn)型*/
printf("the int is: %d\n",iInt); /*使用printf函數(shù)輸出整型*/
printf("the char is: %c\n",cChar);/*輸出字符型*/
printf("the float is: %f\n",fFloat);/*輸出浮點(diǎn)型*/
printf("the stirng is: %s\n","I LOVE YOU"); /*輸出字符串*/
return 0;
}

【實(shí)例5.7】 在printf函數(shù)中使用附加符號(hào)。(在本實(shí)例中,使用printf函數(shù)的附加格式說(shuō)明字符,對(duì)輸出的數(shù)據(jù)進(jìn)行更為精準(zhǔn)的格式設(shè)計(jì)。

#include<stdio.h>
int main()
{
long iLong=100000; /*定義長(zhǎng)整型變量,為其賦值*/
printf("the Long is %ld\n",iLong);/*輸出長(zhǎng)整型變量*/
printf("the string is: %s\n","LOVE");/*輸出字符串*/
printf("the string is: %10s\n","LOVE");/*使用m控制輸出列*/
printf("the string is: %-10s\n","LOVE");/*使用-表示向左靠攏*/
printf("the string is: %10.3s\n","LOVE");/*使用n表示取字符數(shù)*/
printf("the string is: %-10.3s\n","LOVE");
return 0;
}

格式輸入函數(shù)

與格式輸出函數(shù)printf相對(duì)應(yīng)的是格式輸入函數(shù)scanf。該函數(shù)的功能是指定固定的格式,并且按照指定的格式接收用戶在鍵盤上輸入的數(shù)據(jù),最后將數(shù)據(jù)存儲(chǔ)在指定的變量中。

scanf函數(shù)的一般格式為:

scanf(格式控制,地址列表)

通過(guò)scanf函數(shù)的一般格式可以看出,參數(shù)位置中的格式控制與printf函數(shù)相同。例如%d表示十進(jìn)制的整型,%c表示單字符。而在地址列表中,此處應(yīng)該給出用來(lái)接收數(shù)據(jù)變量的地址。例如得到一個(gè)整型數(shù)據(jù)的操作:

scanf("%d",&iInt);  /*得到一個(gè)整型數(shù)據(jù)*/

在上面的代碼中,&符號(hào)表示取iInt變量的地址,因此不用關(guān)心變量的地址具體是多少,只要在代碼中在變量的標(biāo)識(shí)符前加&符號(hào),就表示取變量的地址。

【實(shí)例5.8】 使用scanf格式輸入函數(shù)得到用戶輸入的數(shù)據(jù)。在本實(shí)例中,利用scanf函數(shù)得到用戶輸入的兩個(gè)整型數(shù)據(jù),因?yàn)閟canf函數(shù)只能用于輸入操作,所以若在屏幕上顯示信息則使用顯示函數(shù)。

#include<stdio.h>
int main()
{
int iInt1,iInt2; /*定義兩個(gè)整型變量*/
puts("Please enter two numbers:");/*通過(guò)puts函數(shù)輸出提示信息的字符串*/
scanf("%d%d",&iInt1,&iInt2); /*通過(guò)scanf函數(shù)得到輸入的數(shù)據(jù)*/
printf("The first is : %d\n",iInt1);/*顯示第一個(gè)輸入的數(shù)據(jù)*/

printf("The second is : %d\n",iInt2);/*顯示第二個(gè)輸入的數(shù)據(jù)*/
return 0;
}

08

在printf函數(shù)中除了格式字符還有附加格式用于更為具體的說(shuō)明,相應(yīng)地,scanf函數(shù)中也有附加格式用于更為具體的格式說(shuō)明,如下表所示。

表示指定的輸入項(xiàng)在讀入后不賦給相應(yīng)的變量

順序程序設(shè)計(jì)應(yīng)用

【實(shí)例5.10】 計(jì)算圓的面積。在本實(shí)例中,定義單精度浮點(diǎn)型變量,為其賦值為圓周率的值。得到用戶輸入的數(shù)據(jù)并進(jìn)行計(jì)算,最后將計(jì)算的結(jié)果輸出。

#include<stdio.h>
int main()
{
float Pie=3.14f; /*定義圓周率*/
float fArea; /*定義變量,表示圓的面積*/
float fRadius; /*定義變量,表示圓的半徑*/
puts("Enter the radius:"); /*輸出提示信息*/

scanf("%f",&fRadius); /*輸入圓的半徑*/

fArea=fRadius*fRadius*Pie; /*計(jì)算圓的面積*/

printf("The Area is: %.2f\n",fArea); /*輸出計(jì)算的結(jié)果*/
return 0; /*程序結(jié)束*/
}

【實(shí)例5.11】 將大寫字符轉(zhuǎn)化成小寫字符。本實(shí)例要將一個(gè)輸入的大寫字符轉(zhuǎn)化成小寫字符,需要對(duì)其中的ASCII碼的關(guān)系有所了解。將大寫字符轉(zhuǎn)化成小寫字符的方法就是將大寫字符的ASCII碼轉(zhuǎn)化成小寫字符的ASCII碼。

#include<stdio.h>
int main()

{
char cBig; /*定義字符變量,表示大寫字符*/
char cSmall; /*定義字符變量,表示小寫字符*/
puts("Please enter capital character:");/*輸出提示信息*/
cBig=getchar(); /*得到用戶輸入的大寫字符*/
puts("Minuscule character is:"); /*輸出提示信息*/
cSmall=cBig+32; /*將大寫字符轉(zhuǎn)化成小寫字符*/
printf("%c\n",cSmall); /*輸出小寫字符*/
return 0; /*程序結(jié)束*/
}

其中,用于單個(gè)字符的輸入、輸出時(shí),使用的是getchar和putchar函數(shù),而gets和puts函數(shù)用于輸入、輸出字符串,并且puts函數(shù)在遇到終止符時(shí)會(huì)進(jìn)行自動(dòng)換行。為了能輸出其他類型的數(shù)據(jù),可以使用格式輸出函數(shù)printf和格式輸入函數(shù)scanf。在這兩個(gè)格式函數(shù)中,利用格式字符和附加格式字符可以更為具體地進(jìn)行格式說(shuō)明。

到此這篇關(guān)于C語(yǔ)言文字藝術(shù)之?dāng)?shù)據(jù)輸入輸出的文章就介紹到這了,更多相關(guān)C語(yǔ)言數(shù)據(jù)輸入輸出內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C++ Cartographer加載配置文件過(guò)程介紹

    C++ Cartographer加載配置文件過(guò)程介紹

    這篇文章主要介紹了Cartographer加載配置文件過(guò)程,谷歌優(yōu)秀的激光SLAM開(kāi)源框架Cartographer算法簡(jiǎn)單,但是程序部分太多需要學(xué)習(xí)的地方了,不論是整體框架的結(jié)構(gòu),還是數(shù)據(jù)的使用,都是非常優(yōu)美的
    2023-03-03
  • 一篇文章帶你入門C語(yǔ)言數(shù)據(jù)結(jié)構(gòu):緒論

    一篇文章帶你入門C語(yǔ)言數(shù)據(jù)結(jié)構(gòu):緒論

    這篇文章主要介紹了C語(yǔ)言的數(shù)據(jù)解構(gòu)基礎(chǔ),希望對(duì)廣大的程序愛(ài)好者有所幫助,同時(shí)祝大家有一個(gè)好成績(jī),需要的朋友可以參考下,希望能給你帶來(lái)幫助
    2021-08-08
  • VS2010 boost標(biāo)準(zhǔn)庫(kù)開(kāi)發(fā)環(huán)境安裝教程

    VS2010 boost標(biāo)準(zhǔn)庫(kù)開(kāi)發(fā)環(huán)境安裝教程

    這篇文章主要為大家詳細(xì)介紹了VS2010 boost標(biāo)準(zhǔn)庫(kù)開(kāi)發(fā)環(huán)境的安裝教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • C/C++語(yǔ)言中結(jié)構(gòu)體的內(nèi)存分配小例子

    C/C++語(yǔ)言中結(jié)構(gòu)體的內(nèi)存分配小例子

    當(dāng)未用 #pragma 指令指定編譯器的對(duì)齊位數(shù)時(shí),結(jié)構(gòu)體按最長(zhǎng)寬度的數(shù)據(jù)成員的寬度對(duì)齊;當(dāng)使用了 #pragma 指令指定編譯器的對(duì)齊位數(shù)時(shí),結(jié)構(gòu)體按最長(zhǎng)寬度的數(shù)據(jù)成員的寬度和 #pragma 指令指定的位數(shù)中的較小值對(duì)齊
    2013-10-10
  • Qt實(shí)現(xiàn)計(jì)算器功能

    Qt實(shí)現(xiàn)計(jì)算器功能

    這篇文章主要為大家詳細(xì)介紹了Qt實(shí)現(xiàn)計(jì)算器功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • 淺析C++中模板的那點(diǎn)事

    淺析C++中模板的那點(diǎn)事

    C++中的模板可分為函數(shù)模板和類模板,而把函數(shù)模板的具體化稱為模板函數(shù),把類模板的具體化成為模板類。下面讓我們分別看看什么是函數(shù)模板和類模板吧
    2013-09-09
  • VS Code C/C++環(huán)境配置教程(無(wú)法打開(kāi)源文件“xxxxxx.h”或者檢測(cè)到 #include 錯(cuò)誤,請(qǐng)更新includePath)(POSIX API)

    VS Code C/C++環(huán)境配置教程(無(wú)法打開(kāi)源文件“xxxxxx.h”或者檢測(cè)到 #include 錯(cuò)誤,請(qǐng)更新in

    這篇文章主要介紹了VS Code C/C++環(huán)境配置教程(無(wú)法打開(kāi)源文件“xxxxxx.h” 或者 檢測(cè)到 #include 錯(cuò)誤。請(qǐng)更新includePath) (POSIX API),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08
  • C++如何用智能指針管理內(nèi)存資源

    C++如何用智能指針管理內(nèi)存資源

    這篇文章主要介紹了C++如何用智能指針管理內(nèi)存資源,幫助大家更好的理解和使用c++開(kāi)發(fā),感興趣的朋友可以了解下
    2020-08-08
  • C++和C的混合編譯的項(xiàng)目實(shí)踐

    C++和C的混合編譯的項(xiàng)目實(shí)踐

    本文主要介紹了C++和C的混合編譯的項(xiàng)目實(shí)踐,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • C++ 中回調(diào)函數(shù)詳解及簡(jiǎn)單實(shí)例

    C++ 中回調(diào)函數(shù)詳解及簡(jiǎn)單實(shí)例

    這篇文章主要介紹了C++ 中回調(diào)函數(shù)詳解及簡(jiǎn)單實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-06-06

最新評(píng)論