输入一个字符串,将其中的大写字母改为小写字母,小写字母改为大写字母,然后输出!

给我个详细的答案,谢谢!... 给我个详细的答案,谢谢! 展开
 我来答
百度网友9a020fd
2012-04-26 · TA获得超过383个赞
知道小有建树答主
回答量:147
采纳率:0%
帮助的人:178万
展开全部
汇编???
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
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
尧济晖7923
推荐于2019-09-20 · TA获得超过166万个赞
知道顶级答主
回答量:70.5万
采纳率:48%
帮助的人:3.5亿
展开全部
以下程序通过测试. 有问题请追问!#include <stdio.h>void main()
{
char s[30];
scanf("%s",s);

char *p=s;
while(*p)
{
if(*p>='a'&&*p<='z')
{
*p-=32;
}
else if(*p>='A'&&*p<='Z')
{
*p+=32;
}
p++;
}
printf("%s\n",s);
}附图:
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式