c語言中怎麼將中文字元存入字元陣列

時間 2021-05-05 16:27:37

1樓:

1、首先新建乙個dev c++的專案。

2、接下來在專案中新建c語言程式檔案,如下圖所示。

3、然後在c語言檔案中宣告乙個位元組陣列。

4、接下通過printf函式提示使用者輸入字串,通過scanf接收使用者輸入的字串。

5、接著在通過printf函式輸出使用者輸入的內容。

6、最後執行c語言程式,輸入內容以後就存入字元陣列了。

2樓:風雷九州

乙個中文字占用2個位元組來儲存,首先保證空間足夠。如果4個中國字,就需要9個位元組來儲存,前8個儲存中國字,最後乙個儲存結束符\0,就可以了。

3樓:

準備知識:

1、在中文windows作業系統下,中文預設是採用bgk字符集,每個字元佔16bit(2位元組)。

2、c語言規定char型別的具體實現至少8bit。一般gcc等編譯器都將char型別實現為8bit(1位元組)。

答案:所以在中文windows下,一般使用c語言的內建char型別的陣列,就可以儲存中文了。比如char[2]可以儲存乙個中文。

char ch[11] = "我來測試的";//5個漢字*2位元組/漢字=10位元組,再加乙個'\0'結尾符,一共需11位元組

printf("%s\n", ch);

4樓:匿名使用者

char ch[20] = "我來測試的"

printf("%s\n", ch);

輸出:我來測試的

c語言中如何讀取檔案中的漢字並將其存入陣列中?

5樓:匿名使用者

為了方便文字檔案的操作,標準函式程式設計庫提供了,行讀寫函式,

char *gets(char *s);

char *fgets(char *s, int n, file *stream);

-----------------------精通unix下c語言程式設計與專案實踐p66

行輸出函式族

int puts(const char *s);

int fputs(const char *s, file *stream);

-----------------------精通unix下c語言程式設計與專案實踐p67

塊讀寫函式

能夠輸入輸出任意數量的字元,在操作二進位制檔案時常常使用,

fread 和fwrite

塊讀寫函式經常操作二進位制檔案。

-----------------------精通unix下c語言程式設計與專案實踐p70

再有就是編碼的知識了

當你輸出的ascii碼在漢字的範圍內的時候,漢字系統會認識到

然後把相應的ascii碼變成漢字。

6樓:

建立乙個足夠大的字元型陣列;

以文字方式讀開啟原檔案;

按字元方式讀取檔案,每讀乙個字元判斷一下是否為漢字編碼(<0),若是則存入字元陣列,不是則跳過讀取下乙個字元,直到檔案結束。

設原檔案在當前目錄下,名為123.txt,舉例**如下:

//#include "stdafx.h"//if the vc++6.0, with this line.

#include "stdio.h"

#include "stdlib.h"

int main(void)

while((ch=fgetc(fp))!=eof)if(ch<0)

s[i++]=ch;

fclose(fp);

s[i]='\0';

printf("%s\n",s);//打出來看看return 0;

}注:原檔案內容是「fjkslauti我rophk134是2315學jkal 習c語言jks新da;jus手jfkdsla」

輸出是「我是學習語言新手」

7樓:匿名使用者

漢字處理跟字串處理是一樣的。乙個漢字就是兩個字元。

c語言中怎樣將存放在字元陣列中的漢字乙個乙個輸出出來啊?而不是用%s全部輸出。

8樓:匿名使用者

#include

#include

void main();

for(i=0;i<6;i++)}//

9樓:一意孤行

例題:本題要求編寫乙個解密藏頭詩的程式。

輸入格式:

輸入為一首中文藏頭詩,一共四句,每句一行。注意:乙個漢字佔兩個位元組。

輸出格式:

取出每句的第乙個漢字並連線在一起形成乙個字串並輸出。

輸入:一葉輕舟向東流

帆稍輕握楊柳手

風纖碧波微起舞

順水任從雅客流

輸出:一帆風順

#include

struct spf

;int main()

for(i=0;i<4;i++)

return 0;}1

2345

6789

1011

1213

1415

1617

1819

2021

222312

3456

78910

1112

1314

1516

1718

1920

2122

23其中的精髓在於:printf("%c%c",a[i].b[0],a[i].b[1]);;

也就是說,要想一句話放進陣列中,輸入指定漢字,其實就是注意漢字佔據兩個位元組,在字元陣列中也是佔據連續的兩個位元組,輸出時選擇儲存漢字的位址就好。

c語言中如何將中文字元倒序輸出,C語言中如何將中文字元倒序輸出

先用strrev庫函式把整個字串倒過來,然後利用漢字編碼為負數的特點判斷為漢字的倒序連續輸出兩個字元即可達到目的。舉例 如下 include stdafx.h if the vc 6.0,with this line.include stdio.h include string.h int main...

c語言中如何將結構中變數清空,在C語言中如何把陣列清空

夏老師問一問 可以利用memset函式對變數進行清空操作。memset 函式原型是extern void memset void buffer,int c,int count buffer 為指標或是陣列,c 是賦給buffer的值,count 是buffer的長度.這個函式在socket中多用於清...

c語言中怎麼用,C語言中 怎麼用

按位與 屬於位操作 一般用在取記憶體中特定位的值 如有 11111111 我要取其中從左起第三位的值,就用它按位與 00001000 關於 位操作的技巧還有很多,你可以去自己搜一下還有一個應用就是用於關係運算中,如 有兩小段程式 sample 1 int main cout sample 2 int...