最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語(yǔ)言實(shí)現(xiàn)輸入ascii碼,輸出對(duì)應(yīng)的字符方式

 更新時(shí)間:2023年01月28日 08:48:05   作者:久許  
這篇文章主要介紹了C語(yǔ)言實(shí)現(xiàn)輸入ascii碼,輸出對(duì)應(yīng)的字符方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

C語(yǔ)言輸入ascii碼,輸出對(duì)應(yīng)的字符

源代碼

/**********  ascii.c  ************/
#include<stdio.h>
#include<string.h>
//下面的字符串總共有714個(gè)字符。
char strs[714]= "0,NUL,16,DLE,32, ,48,0,64,@,80,P,96,`,112,p,1,SOH,17,DC1,33,!,49,1,65,A,81,Q,97,a,113,q,2,STX,18,DC2,34,\",50,2,66,B,82,R,98,b,114,r,3,ETX,19,DC3,35,#,51,3,67,C,83,S,99,c,115,s,4,EOT,20,DC4,36,$,52,4,68,D,84,T,100,d,116,t,5,ENQ,21,NAK,37,%,53,5,69,E,85,U,101,e,117,u,6,ACK,22,SYN,38,&,54,6,70,F,86,V,102,f,118,v,7,BEL,23,ETB,39,',55,7,71,G,87,W,103,g,119,w,8,BS,24,CAN,40,(,56,8,72,H,88,X,104,h,120,x,9,HT,25,EM,41,),57,9,73,I,89,Y,105,i,121,y,10,LF,26,SUB,42,*,58,:,74,J,90,Z,106,j,122,z,11,VT,27,ESC,43,+,59,;,75,K,91,[,107,k,123,{,12,FF,28,FS,44,,,60,<,76,L,92,\\,108,l,124,|,13,CR,29,GS,45,-,61,=,77,M,93,],109,m,125,},14,SO,30,RS,46,.,62,>,78,N,94,^,110,n,126,~,15,SI,31,US,47,/,63,?,79,O,95,_,111,o,127,DEL,";
char words[128][5];//共有128個(gè)ascii碼字符
int main(){
	int len = strlen(strs);
	//printf("len=%d\n",len);
	int i = 0;
	int j = 0;
	int result = 0;
	memset(words,0,sizeof(words));
	while(i < len) //strs的長(zhǎng)度(字符的個(gè)數(shù))
	{
		result = 0;
		while(strs[i] != ',' && i < len)
		{
			result = result * 10 + (strs[i++] - '0');//計(jì)算對(duì)應(yīng)的ascii十進(jìn)制數(shù)值
		}
		i++;
		j = 0;
		while(strs[i] != ',' || i == 548) //逗號(hào)","本身作為分隔符存在,但是逗號(hào)本身也是一個(gè)ascii符號(hào),這里需要做一下特殊處理,逗號(hào)對(duì)應(yīng)的字符在strs中的下標(biāo)是548
		{
			words[result][j++] = strs[i++];
		}
		//printf("%d\n%s\n----------------\n",result,words[result]);
		i++;
	}
	int a = 0;
	while(scanf("%d",&a)) //開(kāi)始輸入十進(jìn)制的ascii碼
	{
		printf("%s",words[a]);
	}
	return 0;
}

C語(yǔ)言ASCII碼與轉(zhuǎn)義字符與代碼間關(guān)系

基礎(chǔ)知識(shí)回顧

1.c語(yǔ)言中對(duì) 字符串常量 是按照 字符數(shù)組 處理的

2.字符型數(shù)據(jù) 是以 ASCII代碼 存儲(chǔ)在存儲(chǔ)單元中

    #include <stdio.h>
    int main() {
      char ch = '6';
      int i = 54;
      printf("%d,%c\n", ch, i);
      return 0;
    }

由結(jié)果可知char可直接轉(zhuǎn)換為int型值,int也可直接轉(zhuǎn)換為char字符,十進(jìn)制54對(duì)應(yīng)字符為‘6’

3.關(guān)系運(yùn)算符的值

關(guān)系運(yùn)算符的運(yùn)算結(jié)果只有 0 或 1。當(dāng)條件成立時(shí)結(jié)果為 1,條件不成立結(jié)果為 0

2>1  結(jié)果成立   則其值為1
1>2  結(jié)果不成立 則其值為0
#include <stdio.h>
int main(){
    char c='k';
    int i=1, j=2, k=3;
    int result_1 = 'a'+5<c;
    printf( "%d, %d\n", result_1, -i-2*j>=k+1 );
    return 0;
}

結(jié)果

4.對(duì)于字符指針的相關(guān)內(nèi)容`

#include <stdio.h>
int main(){
    char *string="i love china!";
		printf("%s\n",string);
	return 0;
}

結(jié)果

4.1 在代碼中沒(méi)有定義字符數(shù)組,只是定義了char*(字符指針)的變量,并用字符串常量“i love china!”進(jìn)行初始化 

注意1:c語(yǔ)言對(duì)字符串常量按照字符數(shù)組進(jìn)行處理,在內(nèi)存中開(kāi)辟了一個(gè)字符數(shù)組用來(lái)存放該字符串常量。但是這個(gè)數(shù)組沒(méi)有名字,所以只能用指針變量來(lái)引用。 

注意2:對(duì)于字符指針變量string初始化,實(shí)際上是把字符串第一個(gè)元素的地址(即存放字符串的字符數(shù)組的首元素地址)賦值給指針變量string,使string指向字符串的第一個(gè)字符。 

注意3:可以通過(guò)指針變量輸出字符串,如:

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

%s是輸出字符串時(shí)所用的格式符,在輸出項(xiàng)中給字符指針變量名string,則系統(tǒng)會(huì)輸出string所指向的第一個(gè)字符,然后自動(dòng)使string加1,使之指向下一個(gè)字符,再輸出該字符…直到遇到字符串結(jié)束標(biāo)志‘\0’為止 

注意4:在內(nèi)存中字符串最后被自動(dòng)加上一個(gè)‘\n’,可以看到,用%s可以對(duì)一個(gè)字符串進(jìn)行整體的輸入輸出。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 數(shù)據(jù)結(jié)構(gòu) 棧的操作實(shí)例詳解

    數(shù)據(jù)結(jié)構(gòu) 棧的操作實(shí)例詳解

    這篇文章主要介紹了數(shù)據(jù)結(jié)構(gòu) 順序棧的定義、初始化、空棧判斷、入棧、出棧操作的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • C++中的按位與&、按位與或|、按位異或^運(yùn)算符詳解

    C++中的按位與&、按位與或|、按位異或^運(yùn)算符詳解

    這篇文章主要介紹了C++中的按位與&、按位與或|、按位異或^運(yùn)算符,是C++入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2016-01-01
  • C語(yǔ)言通過(guò)三種方法實(shí)現(xiàn)屬于你的通訊錄

    C語(yǔ)言通過(guò)三種方法實(shí)現(xiàn)屬于你的通訊錄

    本文將實(shí)現(xiàn)一個(gè)通訊錄,來(lái)實(shí)現(xiàn)人員的增刪插改功能。文中通過(guò)三種形式來(lái)實(shí)現(xiàn)用戶的增刪插改,其實(shí)也就是一點(diǎn)點(diǎn)的優(yōu)化版本,從靜態(tài)的實(shí)現(xiàn),到動(dòng)態(tài)的實(shí)現(xiàn),最后以文件的形式來(lái)完成,請(qǐng)大家和我一起往下看吧
    2022-11-11
  • 深入理解結(jié)構(gòu)體中占位符的用法

    深入理解結(jié)構(gòu)體中占位符的用法

    本篇文章是對(duì)結(jié)構(gòu)體中占位符的用法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C++?Boost?StringAlgorithms超詳細(xì)講解

    C++?Boost?StringAlgorithms超詳細(xì)講解

    Boost是為C++語(yǔ)言標(biāo)準(zhǔn)庫(kù)提供擴(kuò)展的一些C++程序庫(kù)的總稱。Boost庫(kù)是一個(gè)可移植、提供源代碼的C++庫(kù),作為標(biāo)準(zhǔn)庫(kù)的后備,是C++標(biāo)準(zhǔn)化進(jìn)程的開(kāi)發(fā)引擎之一,是為C++語(yǔ)言標(biāo)準(zhǔn)庫(kù)提供擴(kuò)展的一些C++程序庫(kù)的總稱
    2022-11-11
  • C語(yǔ)言中l(wèi)seek()函數(shù)和fseek()函數(shù)的使用詳解

    C語(yǔ)言中l(wèi)seek()函數(shù)和fseek()函數(shù)的使用詳解

    這篇文章主要介紹了C語(yǔ)言中l(wèi)seek()函數(shù)和fseek()函數(shù)的使用詳解,是C語(yǔ)言入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-08-08
  • C語(yǔ)言分支和循環(huán)詳解

    C語(yǔ)言分支和循環(huán)詳解

    C語(yǔ)言是一門結(jié)構(gòu)化的程序設(shè)計(jì)語(yǔ)言,當(dāng)C語(yǔ)言用來(lái)描述生活中的事物時(shí),會(huì)用到三種結(jié)構(gòu):順序結(jié)構(gòu)(不去贅述),選擇結(jié)構(gòu)(對(duì)應(yīng)分支語(yǔ)句),循環(huán)結(jié)構(gòu)(對(duì)應(yīng)循環(huán)語(yǔ)句),分支語(yǔ)句:分支語(yǔ)句分為兩種,一種是if語(yǔ)句,一種是switch語(yǔ)句
    2021-10-10
  • C++和OpenCV實(shí)現(xiàn)圖像字符化效果

    C++和OpenCV實(shí)現(xiàn)圖像字符化效果

    圖像字符化的意思是將圖像以字符形式呈現(xiàn),具有一定的娛樂(lè)價(jià)值,許多開(kāi)發(fā)人員通過(guò)python實(shí)現(xiàn)該功能,C++實(shí)現(xiàn)的代碼較少,因此本文通過(guò)C++和OpenCV實(shí)現(xiàn),給予C++開(kāi)發(fā)人員一些可供借鑒的思路,需要的朋友可以參考下
    2022-06-06
  • C語(yǔ)言中進(jìn)制知識(shí)匯總

    C語(yǔ)言中進(jìn)制知識(shí)匯總

    在C語(yǔ)言里,整數(shù)有三種表示形式:十進(jìn)制,八進(jìn)制,十六進(jìn)制。 其中以數(shù)字0開(kāi)頭,由0~7組成的數(shù)是八進(jìn)制。以0X或0x開(kāi)頭,由0~9,A~F或a~f 組成是十六進(jìn)制。除表示正負(fù)的符號(hào)外,以1~9開(kāi)頭,由0~9組成是十進(jìn)制。
    2016-05-05
  • C語(yǔ)言如何與ARM匯編語(yǔ)言混合編程示例詳解

    C語(yǔ)言如何與ARM匯編語(yǔ)言混合編程示例詳解

    本文主要敘述了C與匯編語(yǔ)言混合編程,匯編語(yǔ)言指的是ARM匯編語(yǔ)言。本文用來(lái)幫助理解ARM嵌入式中的匯編程序,及C語(yǔ)言如何與匯編混合編程
    2021-10-10

最新評(píng)論

恩平市| 西畴县| 麟游县| 中西区| 辛集市| 洱源县| 高清| 武邑县| 临汾市| 蒙阴县| 融水| 白银市| 定日县| 太康县| 靖安县| 蓬溪县| 叶城县| 桃园市| 休宁县| 浦县| 阿荣旗| 仁寿县| 治多县| 丹江口市| 靖远县| 馆陶县| 康平县| 都昌县| 浠水县| 萨迦县| 若尔盖县| 武定县| 临洮县| 军事| 溧水县| 晋中市| 洱源县| 洛川县| 屯留县| 晋城| 白朗县|