首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mismach Basic Language类型

Mismach Basic Language类型
EN

Stack Overflow用户
提问于 2018-02-16 20:51:09
回答 2查看 52关注 0票数 3

我是一名11年级的学生,我正在用Basic语言编程。我问了用户一个问题,用户可以选择yes或no。在编码中,显示“类型不匹配”错误。同样在编码中,在问题之后,我编码了一些IFs和END IFs,在我遇到这个问题之前,当我运行程序时,它输出了0。

我搞不懂为什么我会得到一个类型不匹配,即使我在IFs和END IFs区域的变量。我有一个以$结尾作为变量的字符串。这就是我拥有的。

程序的一部分被认为是计算租车的人的总保险,但计算机甚至需要知道用户是否想要保险。即使我说我确实想要保险,当程序在程序结束时输出保险时,它仍然显示0。

所以我的问题是,为什么我得到一个类型不匹配?

代码语言:javascript
复制
Print "Do you want insurance?"
Print "1.Yes"
Print "2.No"
Input strInsurance$
IF strInsurance$=Yes THEN
    strInsurance$=sngDailyInsurance*sngDays
END IF
IF strInsurance$=No THEN
    strInsurance$=0
END IF
EN

回答 2

Stack Overflow用户

发布于 2018-02-16 21:09:26

strInsurance$是一个字符串变量,因此您必须用引号将Yes括起来,例如:

代码语言:javascript
复制
IF strInsurance$="Yes" THEN

和:

代码语言:javascript
复制
IF strInsurance$="No" THEN

此外,您不能像下面这样将数字赋给字符串变量:

代码语言:javascript
复制
strInsurance$=0

还有这里:

代码语言:javascript
复制
strInsurance$=sngDailyInsurance*sngDays

奇怪的是,您在任何情况下都会为结果重用输入变量。

票数 1
EN

Stack Overflow用户

发布于 2020-12-09 15:49:32

正确的代码应该是:

代码语言:javascript
复制
Print "Do you want insurance?"
Print "1.Yes"
Print "2.No"
Input strInsurance$
IF strInsurance$="Yes" THEN
   strInsurance$=str$(sngDailyInsurance*sngDays)
END IF
IF strInsurance$="No" THEN
   strInsurance$="0"
END IF
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48827195

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档