1、puts函數(shù)——輸出字符串的函數(shù)
創(chuàng)新互聯(lián)是一家專業(yè)提供定安企業(yè)網(wǎng)站建設(shè),專注與成都做網(wǎng)站、網(wǎng)站設(shè)計、H5場景定制、小程序制作等業(yè)務(wù)。10年已為定安眾多企業(yè)、政府機構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站制作公司優(yōu)惠進行中。
一般的形式為puts(字符串組)
作用:將一個字符串輸出到終端。如,char一個string,并賦予初值。調(diào)用puts(string);進行字符串的輸出。
2、gets函數(shù)——輸入字符串的函數(shù)
一般的形式:gets(字符數(shù)組)
作用:從終端輸入一個字符串到字符數(shù)組,并且得到一個函數(shù)值成為字符數(shù)組的起始地址。
gets(str);
鍵盤輸入,,,,你懂得。
注意:puts和gets函數(shù)只能輸出或者輸入一個字符串。
3、strcat函數(shù)——字符串連接函數(shù)
一般的形式:strcat(字符數(shù)組1,字符數(shù)組2);
作用:把兩個字符串?dāng)?shù)組中字符串連接起來,把字符串2連接到字符串1的后面。
說明:字符數(shù)組1必須足夠大,以便容納連接后的新字符串。
4、strcpy/strncpy函數(shù)——字符串復(fù)制函數(shù)
一般形式:strcpy(字符數(shù)組1,字符串2);
作用:將字符串2復(fù)制到字符數(shù)組1中去。
如:char str1[10],str2[]="DongTeng";
strcpy(str1,str2);
執(zhí)行后的結(jié)果為:你懂得
注意:
1. 不能用賦值語句直接將一個字符串常量或者字符數(shù)組直接給一個字符數(shù)組。
2. 用strncpy可以賦值指定的位置的字符。strncpy(str1,str2,3);將str2中的第3個字符復(fù)制到str1中。
5、strcmp函數(shù)——字符串比較函數(shù)
一般形式:strcmp(字符串1,字符串2);
作用:用來比較兩個字符串的差異。具有不同的比較規(guī)則。
6、strlen函數(shù)——測字符串長度的函數(shù)
一般形式:strlen(字符數(shù)組);
如:char str[10]="DongTeng";
printf("%d",strlen(str));
得到的結(jié)果是:5
7、strlwr函數(shù)——轉(zhuǎn)換為小寫的函數(shù)
一般形式:strlwr(字符串);
8、strupr函數(shù)——轉(zhuǎn)換為大寫的函數(shù)
一般形式:strupr(字符串)。
在C語言中,輸入輸出字符串有以下兩種方式:
1 用scanf/printf輸入輸出。
scanf/printf是C語言的格式化輸入輸出函數(shù),可以用于輸入輸出各種基礎(chǔ)類型,字符串(char*)也
其支持范圍內(nèi)。
格式化字符為%s。
定義
char str[100];
輸入
scanf("%s",str);
輸出
printf("%s",str);
2 C語言還支持專門的字符串輸入輸出函數(shù):gets/puts。
gets的作用為,讀入一行輸入,并將讀到的換行符替換為字符串結(jié)束符。
puts的作用為,將字符串單行輸出,即輸出字符串內(nèi)容后,會自動在結(jié)尾增加換行。
定義
char str[100];
輸入
gets(str);
輸出
puts(str);
擴展資料:
起初,C語言沒有官方標準。1978年由美國電話電報公司(ATT)貝爾實驗室正式發(fā)表了C語言。布萊恩·柯林漢(Brian Kernighan) 和 丹尼斯·里奇(Dennis Ritchie) 出版了一本書,名叫《The C Programming Language》。
這本書被 C語言開發(fā)者們稱為KR,很多年來被當(dāng)作 C語言的非正式的標準說明。人們稱這個版本的 C語言為KR C。
KR C主要介紹了以下特色:
結(jié)構(gòu)體(struct)類型
長整數(shù)(long int)類型
無符號整數(shù)(unsigned int)類型
把運算符=+和=-改為+=和-=。因為=+和=-會使得編譯器不知道使用者要處理i = -10還是i =- 10,使得處理上產(chǎn)生混淆。
即使在后來ANSI C標準被提出的許多年后,KR C仍然是許多編譯器的最 準要求,許多老舊的編譯器仍然運行KR C的標準。
1970到80年代,C語言被廣泛應(yīng)用,從大型主機到小型微機,也衍生了C語言的很多不同版本。
1983年,美國國家標準協(xié)會(ANSI)成立了一個委員會X3J11,來制定 C語言標準。
1989年,美國國家標準協(xié)會(ANSI)通過了C語言標準,被稱為ANSI X3.159-1989 "Programming Language C"。因為這個標準是1989年通過的,所以一般簡稱C89標準。有些人也簡稱ANSI C,因為這個標準是美國國家標準協(xié)會(ANSI)發(fā)布的。
1990年,國際標準化組織(ISO)和國際電工委員會(IEC)把C89標準定為C語言的國際標準,命名為ISO/IEC 9899:1990 - Programming languages -- C? 。
因為此標準是在1990年發(fā)布的,所以有些人把簡稱作C90標準。不過大多數(shù)人依然稱之為C89標準,因為此標準與ANSI C89標準完全等同。
1994年,國際標準化組織(ISO)和國際電工委員會(IEC)發(fā)布了C89標準修訂版,名叫ISO/IEC 9899:1990/Cor 1:1994,有些人簡稱為C94標準。
1995年,國際標準化組織(ISO)和國際電工委員會(IEC)再次發(fā)布了C89標準修訂版,名叫ISO/IEC 9899:1990/Amd 1:1995 - C Integrity?[7]??,有些人簡稱為C95標準。
參考資料:百度百科-c語言
C語言怎么用printf輸出字符串
printf函數(shù)的一般格式
printf(格式控制字符串,輸出表列);
以圖1所示為例。
圖1.
函數(shù)參數(shù)包括兩部分:
【1】格式控制字符串,是用雙引號括起來的字符串,也稱為轉(zhuǎn)換控制字符串,它指定輸出數(shù)據(jù)項的類型和格式。
它包括兩種信息:
●格式說明項:由%和格式字符組成,如%d,%f等。格式說明總是由%字符開始,到格式字符終止。它的作用是將輸出的數(shù)據(jù)項轉(zhuǎn)換為指定的格式輸出。輸出表列中的每個數(shù)據(jù)項對應(yīng)一個格式說明項。
● 普通字符:即需要原樣輸出的字符,如逗號和換行符。
【2】輸出列表,是需要輸出的一些數(shù)據(jù)項,可以是表達式。
例如:假如a=3,b=4,那么printf("a=%db=%d",a,b);,輸出a=3b=4。其中兩個?“%d”是格式說明,表示輸出兩個整數(shù),分別對應(yīng)變量a,b?!癮=”,“b=”是普通字符,原樣輸出。
由于printf是函數(shù),因此,格式控制字符串和輸出表列實際上都是函數(shù)的參數(shù)。printf函數(shù)的一般形式可以表示為:
printf(參數(shù)1,參數(shù)2,參數(shù)3,…,參數(shù)n)
printf函數(shù)的功能是將參數(shù)2到參數(shù)n按照參數(shù)1給定的格式輸出。
【3】格式字符?(構(gòu)成格式說明項)
對于不同類型的數(shù)據(jù)項,應(yīng)當(dāng)使用不同的格式字符構(gòu)成的格式說明項。常用的有以下幾種格式字符:(按不同類型數(shù)據(jù),列出各種格式字符的常用用法)
【d格式符】用來輸出十進制整數(shù)。有以下幾種用法:
●?%d,按照數(shù)據(jù)的實際長度輸出。
●?%md,m指定輸出字段的寬度?(整數(shù))。如果數(shù)據(jù)的位數(shù)小于m,則左端補以空格(右對齊);若大于m,則按照實際位數(shù)輸出。
●?%-md,m指定輸出字段的寬度?(整數(shù))。如果數(shù)據(jù)的位數(shù)小于m,則右端補以空格?(左對齊);若大于m,則按照實際位數(shù)輸出。
●?%ld,輸出長整型數(shù)據(jù),也可以指定寬度%mld。
【o格式符】以八進制形式輸出整數(shù)。注意:是將內(nèi)存單元中的各位的值按八進制形式輸出,輸出的數(shù)據(jù)不帶符號,即將符號位也一起作為八進制的一部分輸出。
例如:
inta=-1;
printf("%d,%o,%x",a,a,a);
-1的原碼:1000,0000,0000,0001。
-1在內(nèi)存中的補碼表示為:
1111,1111,1111,1111=1,111,111,111,111,111=1,7,7,7,7,7=ffff
輸出:-1,177777,ffff
【s格式符】用來輸出一個字符串。有以下幾種用法:
●?%s,輸出字符串。
●?%ms,輸出的字符串占m列,如果字符串長度大于m,則字符串全部輸出;若字符串長度小于m,則左補空格?(右對齊)。
●?%-ms,輸出的字符串占m列,如果字符串長度大于m,則字符串全部輸出;若字符串長度小于m,則右補空格?(左對齊)。
●?%m.ns,輸出占m列,但只取字符串左端n個字符,左補空白?(右對齊)。
●?%-m.ns,輸出占m列,但只取字符串左端n個字符,右補空白?(左對齊)。
【 f 格式符】用來輸出實數(shù)?(包括單、雙精度,單雙精度格式符相同),以小數(shù)形式輸出。有以下幾種用法:
●?%f,不指定寬度,使整數(shù)部分全部輸出,并輸出6位小數(shù)。注意,并非全部數(shù)字都是有效數(shù)字,單精度實數(shù)的有效位數(shù)一般為7位?(雙精度16位)。
●?%m.nf,指定數(shù)據(jù)占m列,其中有n位小數(shù)。如果數(shù)值長度小于m,左端補空格(右對齊)。
●?%-m.nf,指定數(shù)據(jù)占m列,其中有n位小數(shù)。如果數(shù)值長度小于m,右端補空格(左對齊)。
【 e 格式符】以指數(shù)形式輸出實數(shù)??捎靡韵滦问奖硎荆?/p>
●?%e,不指定輸出數(shù)據(jù)所占的寬度和小數(shù)位數(shù),由系統(tǒng)自動指定。如6位小數(shù),指數(shù)占5位,-e占1位,指數(shù)符號占1位,指數(shù)占3位。數(shù)值按照規(guī)格化指數(shù)形式輸出?(小數(shù)點前必須有而且只有1位非0數(shù)字)。
char ch[5]表示的是定義了一個字符數(shù)組(即字符串),數(shù)組單元有5個,每個單元都是字符型,由于字符串是用\0作結(jié)束的,5個單元的字符數(shù)組實際上能完整存儲的只能是長度不超過4個字符的字符串,多了的話就要占用其他單元了(這些單元有可能會被系統(tǒng)分配給其他變量,而能夠用來存儲字符串的就是你定義的這5個單元的字符數(shù)組),可能會出現(xiàn)溢出,也就是有時候會出現(xiàn)輸出的字符串后面有亂碼
char ch表示定義了一個字符變量,用scanf為其賦值的話應(yīng)該用%c,即scanf("%c",ch),它只能表示一個字符
char ch[]數(shù)組定義不允許[]里為空
char ch[1]表示的也是一個字符數(shù)組,所以你可以輸入字符串,同樣隨便輸入就有可能溢出
需要準備的材料分別有:電腦、C語言編譯器。
1、首先,打開C語言編譯器,新建一個初始.cpp文件,例如:test.cpp。
2、在test.cpp文件中,輸入C語言代碼:char *a = "hello";printf("%s", a); 。
3、編譯器運行test.cpp文件,此時成功通過%s輸出了字符串。
#include stdio.h
main()
{
int number;
char *name;
int score;
printf("%d %s %d",number,name,score);
}
這樣也是可以的,
另外C還提供了函數(shù)輸入輸出字符串
上面用gets(name);輸入
puts(name) 輸出也是可以的