| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 261 人关注过本帖
标题:我是小白,求大佬解释下
只看楼主 加入收藏
zwh412821
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2019-3-20
结帖率:0
  已结贴   问题点数:20  回复次数:5   
我是小白,求大佬解释下
1.设计一个窗体,在文本框中输入一个三位正整数,求这个三位正整数N的十位数;窗体设计如图所示:
 

运行运行如下图所示:
运行如下图所示:
这个代码怎么编

[此贴子已经被作者于2019-3-25 23:02编辑过]

附件: 您没有浏览附件的权限,请 登录注册
2019-03-25 23:00
yingshu
Rank: 3Rank: 3
等 级:论坛游侠
威 望:8
帖 子:38
专家分:168
注 册:2018-7-24
  得分:10 
简单的一个思路
因为在计算过程中,很多情况下都会有小数点,所以第一步,就是根据自身定义的小数点位数乘以相应的整数,比如100,1000,10000.换算成整数。并赋值给变量
第二步,用MID函数取数,就能满足你的需要
2019-03-26 09:59
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:242
帖 子:4368
专家分:26703
注 册:2008-10-15
  得分:10 
Left(Right(CStr(Int(Text1.Text)), 2), 1)

如 text1.text=462.462
Int(Text1.Text)      取整,干掉小数位,防止干扰,得到 462
CStr(Int(Text1.Text))    转为字符串,cstr 国际化,不需要国际化,可以使用 str函数
Right(CStr(Int(Text1.Text)), 2)   取右边2个字符,这里得到 62
Left(Right(CStr(Int(Text1.Text)), 2), 1)   取左边1个字符,从上面 62 得到十位的字符 6





授人于鱼,不如授人于渔
早已停用QQ了
2019-03-26 12:48
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:242
帖 子:4368
专家分:26703
注 册:2008-10-15
  得分:0 
right(cstr(int(text1.text /10)),1)

text1.text /10 缩小10倍,原10位变个位了。  得到 46.2462
int(text1.text /10)  取整,到得 46
cstr 参看上面。
right 从右边取一个字符,得到  6

这二句,都可以处理浮点数,所以你的三位正整数是没问题的。

-------------
如果输入的能确保是三位正整数
使用MID函数更快
mid(cstr(text1.text),3,1)

cstr(text1.text)  转出来字符串,不包含符号位,所以3位正整数得到的是 3个字符,与FOAMAT函数相同。
如果使用 str 函数,包含符号位,3位正整数得到的是 4个字符,那么十位就是从第3个字符开始。
mid( ,2,1 )  从第2位开始取,取1个字符。



授人于鱼,不如授人于渔
早已停用QQ了
2019-03-26 13:09
zwh412821
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2019-3-20
  得分:0 
回复 2楼 yingshu
好的,谢谢啦
2019-03-26 16:32
zwh412821
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2019-3-20
  得分:0 
回复 3楼 风吹过b
好的,谢谢了
2019-03-26 16:32







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.078721 second(s), 8 queries.
Copyright©2004-2019, BCCN.NET, All Rights Reserved