pascal语言 从键盘输入任意一个字符,判断并输出是大写字母、小写字母、数字还是其它特殊字符 要有分析 输入一个字符串,将其中的大写字母改为小写字母,小写字母改为大...

C\u8bed\u8a00\u5b57..\u7b26\u7c7b\u578b\u5224\u65ad\u3002\u4ece\u952e\u76d8\u8f93\u5165\u4e00\u4e2a\u5b57\u7b26\uff0c\u5224\u65ad\u8be5\u5b57\u7b26\u662f\u5426\u5927\u5199\u5b57\u6bcd\u3001\u5c0f\u5199\u5b57\u6bcd\u3001\u6570\u5b57\u5b57\u7b26\u6216\u5176\u4ed6\u5b57\u7b26\u3002

int ch;
\u6362\u6210

char ch;
\u6211\u770b\u4e86\u534a\u5929\u3002\u3002\u3002

\u6c47\u7f16\uff1f\uff1f\uff1f
DATA SEGMENT
ANY DB 22
DB 10
DB 20 DUP(?)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV BX,OFFSET ANY
ADD BX,2
CALL INPUT
CALL _TEST
CALL SHOW
MOV AH,4CH
INT 21H

SHOW PROC
MOV CX,10
PUSH BX
L1: MOV AH,2
MOV DL,BYTE PTR [BX]
INT 21H
INC BX
LOOP L1
POP BX
RET
SHOW ENDP
INPUT PROC
PUSH BX
MOV AH,10
LEA DX,ANY
INT 21H
POP BX
RET
INPUT ENDP
_TEST PROC
PUSH BX
MOV CX,10
LS: CMP BYTE PTR [BX],'a'
JB LL
LB: CMP BYTE PTR [BX],'z'
JA EXIT
SUB BYTE PTR [BX],20H
INC BX
LOOP LS
JMP EXIT1
LL: CMP BYTE PTR [BX],'Z'
JA EXIT
CMP BYTE PTR [BX],'A'
JB EXIT
ADD BYTE PTR [BX],20H
INC BX
LOOP LS
JMP EXIT1
EXIT: MOV BYTE PTR [BX],' '
INC BX
LOOP LS
EXIT1: POP BX
RET
_TEST ENDP
CODE ENDS
END START

var
a:char;
begin {开始}
readln(a); {读取字符}
if (ord(a)>=48)and(ord(a)<=57) then write('number'); {当48<=它的序列号<=57时,它是数字}
if (ord(a)>=65)and(ord(a)<=90) then write('big letter'); {当65<=它的序列号<=90时,它是大写字母}
if (ord(a)>=97)and(ord(a)<=122) then write('small letter') {当97<=它的序列号<=122时,它是小写字母}
else write('other character'); {其它的话,它是其它字符}
end. {结束}

用ASC码,case语句。
http://wenku.baidu.com/view/7bd1b8eb19e8b8f67c1cb952.html(这是ASC码表的连接)只看十进制的就行了。
比如读入了a,存在c这个char型变量中。
d:=ord(c);
就会把a的ASC码存在d中,然后用case判断就好了。

也可以预存集合类型判断

扩展阅读:pascal语言编程自学入门 ... 键盘pause键在哪图片 ... 实时同声翻译app ... python编程软件 ... 自带翻译器的键盘 ... pascal语言中文版下载 ... pascal语言手机编程软件 ... 现在还有人用pascal语言吗 ... 中英文自动翻译器 ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网