當前位置:首頁 » 編程語言 » c語言如何輸出漢字

c語言如何輸出漢字

發布時間: 2022-12-08 12:25:37

c語言輸入輸出漢字

我推薦用
數組

我不太清楚
漢字
的編碼
反正漢字不超過10W個
但可以肯定是一個漢字對應一個類似與ascii的編碼
假設是100000-200000之間的int類型
ch
先定義
int
code[100000]={0};
讀取一個ch(int)就在
code[ch-100000]+=1;
最後遍歷code數組就OK

千萬別用
鏈表
什麼的,小文件還好說
但文件大了,讀取N慢,不幸你試試

② 請問在C語言中如何輸出漢字

1、引入標准輸入輸出庫:sdtio.h。

2、定義字元串形式的漢字(採用字元數組存儲)。

3、使用printf函數,或者puts函數輸出字元串形式的漢字。

例如:

#include<stdio.h>
intmain()
{
charstr[]="輸出漢字";
printf("%s ",str);
puts(str);
return0;
}
/*
運行結果:
輸出漢字
輸出漢字
*/

③ c語言怎樣才能輸出中文(最簡單的方法)

起初,C語言沒有官方標准。1978年由美國電話電報公司(AT&T)貝爾實驗室正式發表了C語言。布萊恩·柯林漢(Brian Kernighan) 和 丹尼斯·里奇(Dennis Ritchie) 出版了一本書,名叫《The C Programming Language》。

這本書被 C語言開發者們稱為K&R,很多年來被當作 C語言的非正式的標准說明。人們稱這個版本的 C語言為K&R C。

K&R C主要介紹了以下特色:

結構體(struct)類型

長整數(long int)類型

無符號整數(unsigned int)類型

把運算符=+和=-改為+=和-=。因為=+和=-會使得編譯器不知道使用者要處理i = -10還是i =- 10,使得處理上產生混淆。

即使在後來ANSI C標准被提出的許多年後,K&R C仍然是許多編譯器的最 准要求,許多老舊的編譯器仍然運行K&R C的標准。

1970到80年代,C語言被廣泛應用,從大型主機到小型微機,也衍生了C語言的很多不同版本。

1983年,美國國家標准協會(ANSI)成立了一個委員會X3J11,來制定 C語言標准。

1989年,美國國家標准協會(ANSI)通過了C語言標准,被稱為ANSI X3.159-1989 "Programming Language C"。因為這個標準是1989年通過的,所以一般簡稱C89標准。有些人也簡稱ANSI C,因為這個標準是美國國家標准協會(ANSI)發布的。

1990年,國際標准化組織(ISO)和國際電工委員會(IEC)把C89標準定為C語言的國際標准,命名為ISO/IEC 9899:1990 - Programming languages -- C 。

因為此標準是在1990年發布的,所以有些人把簡稱作C90標准。不過大多數人依然稱之為C89標准,因為此標准與ANSI C89標准完全等同。

1994年,國際標准化組織(ISO)和國際電工委員會(IEC)發布了C89標准修訂版,名叫ISO/IEC 9899:1990/Cor 1:1994,有些人簡稱為C94標准。

1995年,國際標准化組織(ISO)和國際電工委員會(IEC)再次發布了C89標准修訂版,名叫ISO/IEC 9899:1990/Amd 1:1995 - C Integrity [7] ,有些人簡稱為C95標准。

④ 怎麼在C語言里用printf輸出一個中文

一般情況下,應用程序採用的字元集為gbk,
gb2312,該字元集中一個漢字由兩個位元組組成,所以在普通的C語言中,漢字是按字元串進行存儲和輸出的。(另:還有utf8字元集,一個漢字由三個位元組組成,詳情可查閱utf8字元集)
char
*
p
=
"張三";
輸出多個中文:
printf("%s\n",
p
);
//按字元串輸出完整的數據
輸出一個中文:
printf("%c%c",
*p,
*p+1
);
//按字元輸出,同時輸出兩個位元組
輸出一個中文串的長度:
printf("sizeof(p)=%d\n",
sizeof(p)
);
//p變數是指針,所以,這里輸出的是指針的寬度,一般32位機是4
printf("sizeof(張)=%d\n",
sizeof("張")
)
;
// "張"是個常量字元串,sizeof是得到其占內存的大小,字元串都有一個結束符,一個」張「字占兩位元組,加上字元串結束\0,所以,佔三個位元組的內存空間
printf("length
of
(張)=
%d\n",
strlen("張")
);
//strlen得到的是字元串有效字元長度(位元組數),不包括結束符,所以,長度是兩個位元組

⑤ 如何在在C語言裡面輸入漢字

定義一個字元串變數,這個變數的值中就可以輸入漢字了。

漢字是多位元組的,一個char放不下,可以使用字元數組,但需要給數組分配空間,或者使用string

例如:

#include<stdio.h>
intmain(void)
{
chara[7]="你好";
scanf("%*s",a);
printf("%s ",a);
return0;
}

(5)c語言如何輸出漢字擴展閱讀:

其實從語言學的角度來說,英文是線性的一維語言,而中文是平面的二維語言。而程序恰恰是線性的一維的。也就是說,線性的英文正好能契合線性的程序。所以,中文並不適合現有的編程方式。

然而,未來的發展可能超出你的想像。未來可能會有多維度的量子計算,也許二維的中文反而會比一維的英文更適合。

程序員對比過中文編程和英文編程就會明白,中文編程反而會提高門檻。因為編程的核心根本就不是什麼語言,而是程序化思維方式。最簡單的並不是英文編程,而是數學符號編程,極度抽象,普通人很難理解,但代碼量特別少。

⑥ c語言編程中,怎麼輸入輸出 姓名,漢字。

如果您是用TC進行編程,那麼只能顯示英文,如果您是用VC進行編程就可以顯示中文了。兩者只是編譯工具不一樣,編程語言的使用是一樣的。

代碼如下:

#include<stdio.h>

#include<string.h>

int main(){

char name[6][20];

char temp[20];

printf("請輸入6個人的名字: ");

int i;

for (i = 0; i < 6; i++){

gets(name[i]);

}

printf(" 這六個人的名字如下: ");

for (i = 0; i < 6; i++){

printf("%s ", name[i]);

}

printf(" ");

printf("按字典排序後如下所示: ");

int j, k;

for (j = 0; j < 6; j++)

for (k = j + 1; k < 6; k++)

{

if (strcmp(name[j], name[k])>0)

{

strcpy(temp, name[j]);

strcpy(name[j], name[k]);

strcpy(name[k], temp);

}

}

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

printf("%s ", name[i]);

}

拓展資料

C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。

盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。



⑦ 這樣在C語言中輸出漢字

Windows
XP與DOS是完全不同的兩種內核。Windows
XP幾乎把DOS完全摒棄了。
而TC則是DOS時代的遺留物。
所以用TC編出來的程序在WINDOWS
XP中運行時,許可權是非常有限的。特別是對屏幕的操作。所以畫點陣的方法是行不通的(更何況這個方法編出的程序也是很復雜的)。如果你用的是98以前的操作系統的話,用UCDOS就可以實現,但在XP中UCDOS已經不能用了。
如果想要用C語言編程時輸出漢字,可以用以下幾種方法:
1.最值得推薦的一種。摒棄TC,改用為WINDOWS編程設計的Visual
C++,或者C++
Builder,lcc等。
用這幾種工具的話,在代碼中可以直接輸入漢字。編譯出來的是32位windows程序不存在兼容問題。
2.改用98以前的操作系統。
3.裝個虛擬機,在虛擬機中裝上DOS或者98。當然還要裝上UCDOS。然後,在其中用TC寫程序。

⑧ C語言中如何輸入輸出文字

需要准備的材料分別有:電腦、C語言編譯器。

1、首先,打開C語言編譯器,新建一個初始.cpp文件,例如:test.cpp。

⑨ C語言中如何使漢字一個一個的輸出

簡單寫了個例子,僅供參考(註:漢字中有可能有單位元組符號):
#include
"stdio.h"
#include
"windows.h"
void
main()
{
char
str[]
=
"你好,你是我的!";
char
tmp[3]
=
{0};
int
i
=
0;
int
len
=
strlen(str);
for(i
=
0;
i
<
len;
)
{
memset(tmp,0,3);
if(str[i]
>=
0x80)
{
strncpy(tmp,&(str[i]),2);
i
+=
2;
}
else
{
strncpy(tmp,&(str[i]),1);
i
+=
1;
}
printf("%s",tmp);
Sleep(1000);
}
printf("\n");
}

熱點內容
解壓到當前文件夾右鍵 發布:2024-04-26 03:57:08 瀏覽:979
html5android教程視頻下載 發布:2024-04-26 03:09:59 瀏覽:867
伺服器的描述是什麼 發布:2024-04-26 03:08:32 瀏覽:394
個人加密 發布:2024-04-26 03:01:23 瀏覽:521
linuxusbgadget 發布:2024-04-26 02:52:54 瀏覽:304
我的世界空島世界伺服器地址 發布:2024-04-26 01:39:08 瀏覽:248
尼爾機械紀元加密 發布:2024-04-26 01:37:11 瀏覽:868
在控制台輸出sql語句 發布:2024-04-26 01:08:12 瀏覽:432
動畫java 發布:2024-04-26 01:02:40 瀏覽:12
得力文件夾5302 發布:2024-04-26 00:21:32 瀏覽:91