为什么程序结束后我输入y或者输入n都不能回到lll行

为什么程序结束后我输入y或者输入n都不能回到lll行,第1张

改如下几个地方:

①把settle定义成char型变量

②settle=(settle>='A' &&settle <='B') 写错了,改成(settle>='A' &&settle <='Z')

③scanf函数后面加一句getchar()用来吸收回车键

一点建议:

尽量不要用goto 语句去实现循环,可以用while-do代替.

改完如下:

#include <stdio.h>

void main()

{

long max,a[3],i

char settle

lll:printf("请输入三个整数\n")

for (i=0i<3i++)

scanf("%ld",&a[i])

getchar()

max=a[0]

for (i=0i<3i++)

if (a[i]>=max) a[0]=a[i]

printf("max=%ld\n",a[0])

printf("你还要输入三个数吗?(y/n)")

scanf("%c",&settle)

getchar()

(settle>='A' &&settle <='Z') ? settle=settle+32 : settle

if (settle=='y') goto lll

else

printf("已完成任务,请关闭程序")

}

vivo手机“SIM卡应用1”和“SIM卡应用2”属于Android 12机型内置应用,可为用户提供应用推荐、SIM快捷确认、应用管理、下载设置、USM卡信息等功能。该应用会默认显示于手机桌面自带的“工具”文件夹内,不会直接显示在桌面上。若您不想让其在“工具”文件夹内显示,或不想使用该软件,可移除“工具”文件夹内的软件,解散该文件夹,当桌面没有“工具”文件夹时,则该软件不会生成在桌面(包括抽屉桌面),也无法通过全局搜索查找。如果想使用相关功能,可进入设置-应用与权限-系统应用设置-电话-对应SIM卡-SIM卡应用中查看相关功能。

注:桌面文件夹为默认桌面自带,若想要恢复“工具”文件夹,可进入设置-应用与权限-应用管理-右上角更多-显示系统程序-系统桌面-点击清除数据,以恢复默认桌面。

ioportequ 0d400h-0280h equ伪指令定义常量, 不占内存空间

outport1 equ ioport+2a0h

outport2 equ ioport+2a8h

code segment

assume cs:code

start:

mov dx,outport1 把端口地址放在DX寄存器中

out dx,al 把AL的8位值送DX端口

call delay调延时子程序

mov dx,outport2

out dx,al

call delay调延时子程序

mov ah,1

int 16h

ZF set if no keystroke available

ZF clear if keystroke available

AH = BIOS scan code

AL = ASCII character

je startZF=1,转至标号处执

mov ah,4ch DOS功能调用,结束程序返回DOS

int 21h

delay proc near 延时子程序

mov bx,2000 时长

lll:

mov cx,0

ll:

loop ll

dec bx --

jne lll ZF=0,转至标号处执行

ret

delay endp

code ends

end start


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

原文地址: http://outofmemory.cn/yw/11460761.html

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

发表评论

登录后才能评论

评论列表(0条)

保存