c语言程序设计答案 编程实现,从键盘输入一个字符,则输出其后的字符,如输入‘A’则输出‘B’

c语言程序设计答案 编程实现,从键盘输入一个字符,则输出其后的字符,如输入‘A’则输出‘B’,第1张

程序源码如下:

#define _CRT_SECURE_NO_WARNINGS//VS环境下需要,VC不需要

#include<stdioh>

void main()

{

char a;//定义一个字符

printf("请输入一个字符:");//文字提示

scanf("%c", &a);//输入一个字符

printf("其后续字符为:");//文字提示

printf("%c\n", a + 1);//输出其之后的字符

}

序运行结果如下:

扩展资料:

在计算机中,所有的数据在存储和运算时都要使用二进制数表示(因为计算机用高电平和低电平分别表示1和0),例如,像a、b、c、d这样的52个字母(包括大写)以及0、1等数字还有一些常用的符号(例如、#、@等)在计算机中存储时也要使用二进制数来表示。

而具体用哪些二进制数字表示哪个符号,当然每个人都可以约定自己的一套(这就叫编码),而大家如果要想互相通信而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了ASCII编码,统一规定了上述常用符号用哪些二进制数来表示。

ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。标准ASCII 码也叫基础ASCII码,使用7 位二进制数(剩下的1位二进制为0)来表示所有的大写和小写字母,数字0 到9、标点符号,以及在美式英语中使用的特殊控制字符。其中:

1、0~31及127(共33个)是控制字符或通信专用字符(其余为可显示字符),如控制符:LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BS(退格)、BEL(响铃)等;

通信专用字符:SOH(文头)、EOT(文尾)、ACK(确认)等;ASCII值为8、9、10 和13 分别转换为退格、制表、换行和回车字符。它们并没有特定的图形显示,但会依不同的应用程序,而对文本显示有不同的影响 。

2、32~126(共95个)是字符(32是空格),其中48~57为0到9十个阿拉伯数字。

3、65~90为26个大写英文字母,97~122号为26个小写英文字母,其余为一些标点符号、运算符号等。

同时还要注意,在标准ASCII中,其最高位(b7)用作奇偶校验位。所谓奇偶校验,是指在代码传送过程中用来检验是否出现错误的一种方法,一般分奇校验和偶校验两种。

奇校验规定:正确的代码一个字节中1的个数必须是奇数,若非奇数,则在最高位b7添1;

偶校验规定:正确的代码一个字节中1的个数必须是偶数,若非偶数,则在最高位b7添1。

后128个称为扩展ASCII码。许多基于x86的系统都支持使用扩展(或“高”)ASCII。扩展ASCII 码允许将每个字符的第8 位用于确定附加的128 个特殊符号字符、外来语字母和图形符号

常见ASCII码的大小规则:0~9<A~Z<a~z。

1)数字比字母要小。如 “7”<“F”;

2)数字0比数字9要小,并按0到9顺序递增。如 “3”<“8” ;

3)字母A比字母Z要小,并按A到Z顺序递增。如“A”<“Z” ;

4)同个字母的大写字母比小写字母要小32。如“A”<“a” 。

几个常见字母的ASCII码大小: “A”为65;“a”为97;“0”为 48 。

参考资料来源:百度百科-ASCII

C语言中,ASCII(pronunciation: /ˈæski/ ASS-kee,American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统。它主要用于显示现代英语

ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。标准ASCII 码也叫基础ASCII码,使用7 位二进制数来表示所有的大写和小写字母,数字0 到9、标点符号, 以及在美式英语中使用的特殊控制字符。其中:0~31及127(共33个)是控制字符或通信专用字符(其余为可显示字符),如控制符:LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BS(退格)、BEL(响铃)等;通信专用字符:SOH(文头)、EOT(文尾)、ACK(确认)等;ASCII值为8、9、10 和13 分别转换为退格、制表、换行和回车字符。它们并没有特定的图形显示,但会依不同的应用程序,而对文本显示有不同的影响。32~126(共95个)是字符(32sp是空格),其中48~57为0到9十个阿拉伯数字65~90为26个大写英文字母,97~122号为26个小写英文字母,其余为一些标点符号、运算符号等。同时还要注意,在标准ASCII中,其最高位(b7)用作奇偶校验位。所谓奇偶校验,是指在代码传送过程中用来检验是否出现错误的一种方法,一般分奇校验和偶校验两种。奇校验规定:正确的代码一个字节中1的个数必须是奇数,若非奇数,则在最高位b7添1;偶校验规定:正确的代码一个字节中1的个数必须是偶数,若非偶数,则在最高位b7添1。

后128个称为扩展ASCII码,目前许多基于x86的系统都支持使用扩展(或“高”)ASCII。扩展ASCII 码允许将每个字符的第8 位用于确定附加的128 个特殊符号字符、外来语字母和图形符号。

奇偶校(jiao)验

奇偶监督码是一种增加二进制传输系统最小距离的简单和广泛采用的方法。例如,单个的奇偶监督将使码的最小距离由一增加到二。

一个二进码字,如果它的码元有奇数个1,就称为具有奇性。例如,码字“1011010111”有七个1,因此,这个码字具有奇性。同样,偶性码字具有偶数个1。注意奇性检测等效于所有码元的模二加,并能够由所有码元的异或运算来确定。对于一个n位字,奇性由式(8-1)给出:

奇性=a0⊕a1⊕a2⊕…⊕an (8-1)

很明显,用同样的方式,我们也能够根据每一个码字的零的个数来构成奇偶监督。

单个的奇偶监督码可描述为:给每一个码字加一个监督位,用它来构成奇性或偶性监督。例如,在图8-2中,对于二进码就是这样做的。可以看出,附加码元d2,是简单地选来使每个字成为偶性的。因此,若有一个码元是错的,就可以分辨得出,因为奇偶监督将成为奇性。

在一个典型系统里,在传输以前,由奇偶发生器把奇偶监督位加到每个字中。原有信息中的数字在接收机中被检测, 如果没有出现正确的奇、偶性,这个信息标定为错误的,这个系统将把错误的字抛掉或者请求重发。注意,用单个的奇偶监督码仅能检出奇数个码元的错误。

例如考虑图8-4里的奇性监督码。把奇、偶监督位加到一个 8-4-2-1 BCD码,使之能够进行奇监督(将所有监督位反过来将产生偶监督码)。可以看到,如果将任何码字里的奇数个码元反过来,那么将成为偶性码,因而,无效的字是可以分辨出来的。然而,如果有两个或四个码元反过来,那末奇偶监督将仍然是奇性码,并且这个字被认为是正确的。只当一个给定的字里同时出现两个错误的概率被忽略不计时,单个的奇偶监督才是有效的,实际上,奇监督码比偶监督码可取,因为它排除了传输全0的情况。

十进数字 4 比特直接二进码 奇性监督位

n 8 4 2 1

0 0 0 0 0 1

1 0 0 0 1 0

2 0 0 1 0 0

3 0 0 1 1 1

4 0 1 0 0 0

5 0 1 0 1 1

6 0 1 1 0 1

7 0 1 1 1 0

8 1 0 0 0 0

9 1 0 0 1 1

图8-4 附加奇性监督位的BCD码

奇偶监督可以用在数字系统的主要接口设备中。由于在每个信息中加了多余度,仅当出现错误的概率和错误的危害足够大时,才采用奇偶监督码。

为了说明奇偶监督码的应用,考虑下例。假设以400比特/秒的速率传输四码位信息(100字/秒)。设由试验数据或适当的计算确定了任何单个码位出现错误的概率为31×10-5。因为,每个字包含四个码位,接收到错字的概率大约为125×l0-4,即在100字/秒的传输速率下,平均每80秒错一个字。

加一个奇偶监督位后,每个字需要五个码位,从而,将传输速率降低到80字/秒,能够检测一个错误,并且能指令发送机重发错了的信息以校正信息。出现两个错误的概率计算如下:如果五个码位是A、B、C、D、E,那么两个错误可能以下述10种组合出现。即

AB、AC、AD、AE

BC、BD、BE

CD、CE

DE

出现任何一对的概率是(31×10-5)2,或96×10-10,因此,在单个字里出现两个错误的概率等于10× 96×10-10,或96×10-9。以80字/秒的新的传输速率, 可能以每13×10-6秒, 即平均每15天,出现一个未被检出的错误。因为三个错误能被检测出,四个码位错误的概率与两个错误相比可以忽略不计,因此,我们在这里不考虑任何更多的错误。

奇偶校验,内存中最小的单位是比特,也称为“位”,位有只有两种状态分别以1和0来标示,每8个连续的比特叫做一个字节(byte)。不带奇偶校验的内存每个字节只有8位,如果其某一位存储了错误的值,就会导致其存储的相应数据发生变化,进而导致应用程序发生错误。而奇偶校验就是在每一字节(8位)之外又增加了一位作为错误检测位。在某字节中存储数据之后,在其8个位上存储的数据是固定的,因为位只能有两种状态1或0,假设存储的数据用位标示为1、1、1、0、0、1、0、1,那么把每个位相加(1+1+1+0+0+1+0+1=5),结果是奇数,那么在校验位定义为1,反之为0。当CPU读取存储的数据时,它会再次把前8位中存储的数据相加,计算结果是否与校验位相一致。从而一定程度上能检测出内存错误,奇偶校验只能检测出错误而无法对其进行修正,同时虽然双位同时发生错误的概率相当低,但奇偶校验却无法检测出双位错误。

奇偶校验分两种,一种是奇校验和偶校验,例:奇校验中,将原来用7位表示的最低位上加1,如果最终的二进制数中,1的个数是奇数的话就不用加1,反之,加1

在ASCII码中,小写字母是对应的大写字母+32,比如小写字母'a'的ASCII码为'97'那么对应的大写字母就是97-32=65,你这到题目中已知小写字母'g'的ASCII码为103,那么对应的大写字母G的ASCII码为103-32=71,在按照字母表的顺序'L'在'G'的后面第5个字母的位置,那么就在用71+5,结果为76就是你所求的字母'L'的ASCII码

程序中出现的"---"可以按照原样输出,并没有特殊的含义,一般在熟悉ASCII码的同时,也要了解一下转义字符,转义字符就是以'\'形式出现的字符,往往有些特殊的含义,常见的有'\n','\t','b'等等,楼主好好看看这些部分还是很有用的,都是基础!希望解答对你有所帮助

记得采纳啊

#include <stdioh>

int main()

{

char a;

a=getchar();

printf("所输入的ASCII码为:%d",a);

return 0;

}

扩展资料:

ASCII ((American Standard Code for Information Interchange): 美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是最通用的信息交换标准,并等同于国际标准ISO/IEC 646。ASCII第一次以规范标准的类型发表是在1967年,最后一次更新则是在1986年,到目前为止共定义了128个字符。

大小规则:

常见ASCII码的大小规则:0~9<A~Z<a~z。

1)数字比字母要小。如 “7”<“F”。

2)数字0比数字9要小,并按0到9顺序递增。如 “3”<“8‘’。

3)字母A比字母Z要小,并按A到Z顺序递增。如“A”<“Z” 。

4)同个字母的大写字母比小写字母要小32。如“A”<“a” 。

几个常见字母的ASCII码大小: “A”为65;“a”为97;“0”为 48。

参考资料来源:百度百科-ASCII

1、51单片机SCON=0xDA,工作在方式3(方式2也可以)

串口 1 模式 3:

波特率是可变的,其它和模式2 相同

11 位数据通过TxD/P31 发送,通过RxD/P30 接收。一帧数据包含一个起始位(0),8 个数据位(低位在

先),一个可编程的第9 位,和一个停止位(1)。发送时,第9 位数据位来自特殊功能寄存器SCON 的

TB8 位接收时,第9 位进入特殊功能寄存器SCON 的RB8 位。

SMOD

串口1波特率在模式3 = ( 2 / 32 ) x BRT独立波特率发生器的溢出率

当SMOD = 0时,串口1波特率 = BRT 独立波特率发生器的溢出率 / 32,

当SMOD = 1时,串口1波特率 = BRT 独立波特率发生器的溢出率 / 16,

BRT独立波特率发生器的溢出率 = Fosc/12/( 256 - BRT ),当BRTx12 = 0时,

BRT独立波特率发生器的溢出率 = Fosc / ( 256 - BRT ),当BRTx12 = 1时

TB8:发送时校验位,可以奇校验或偶校验(直接置0或1),然后再发送。

RB8:接收时校验位,判断接数据是否正确。

2、程序

/

串口1中断

/

void RXD_Int_Service() interrupt 4

{

uint8 ch;

if(RI)

{

RI=0;

Usart1RxdDly=6; //超过03S清空计数

Usart1RxdBuf[Usart1RxdCnt]=ch;

Usart1RxdCnt++;

if(Usart1RxdCnt>=10)

{

Usart1RxdTrue=1; //接收正确。

Usart1RxdNum=Usart1RxdCnt;

Usart1RxdCnt=0;

}

}

if(TI)//防止发送中断

{

TI=0;

}

}

void Timer0_InSevice() interrupt 1

{

TH0=0xdc; //定义50ms 正常值0xfe 0x0c ,修正值:0xfe 0x16;

TL0=0x00; //110592MHz晶振

if(Usart1RxdDly)

{

Usart1RxdDly--; //03S没有接收到数据,清0计数。

if(Usart1RxdDly==0)

{

Usart1RxdCnt =0; //记数清0

}

}

}

奇偶校验是一种校验代码传输正确性的方法。根据被传输的一组二进制代码的数位中“1”的个数是奇数或偶数来进行校验。采用奇数的称为奇校验,反之,称为偶校验。采用何种校验是事先规定好的。通常专门设置一个奇偶校验位,用它使这组代码中“1”的个数为奇数或偶数。若用奇校验,则当接收端收到这组代码时,校验“1”的个数是否为奇数,从而确定传输代码的正确性。

以上就是关于c语言程序设计答案 编程实现,从键盘输入一个字符,则输出其后的字符,如输入‘A’则输出‘B’全部的内容,包括:c语言程序设计答案 编程实现,从键盘输入一个字符,则输出其后的字符,如输入‘A’则输出‘B’、C语言中的ASC代码值、什么是奇偶校验有什么用可以怎么使用(不能在网上找哦!)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9337452.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存