求得笔记本输入字母变数字数

日期:24厘米的鞋子用&码&作单位就是( )码。
2、用字母表示乘法交换律是( );梯形的面积计算公式是( );圆锥的体积计算公式是( )。
3、有一列数:5,10,15,20&&用字母表示第n个数是( )。
4、妈妈买了m千克苹果用去12元,用1元钱可以买( )千克苹果。
5、用含有字母的式子表示&比a的2倍多8的数&是( )。当a=1.2时,这个式子的值是( )。
6、明明参加智竞赛,共50道题,他算错了4道,其余皆对,算对1道题得a分,算错一道题扣6分,用含有字母的式...用字母表示第n个数是的相关内容日期:包含6个数学智力题目 Mathematics Kid 包含6个数学智力题目 软件分类:儿童数理化形启蒙软件 语言界面:英文 软件性质:免费软件 系统要求:Windows 2000/9X/Me/NT 文件长度:847KB 试用限制:无 目前版本:1.3 原创公司: 适应儿童:9岁以上 Mathematics Kid日期:“求一个数是另一个数的几倍”的应用题 详细介绍: 教学目标 1.使学生初步掌握“求一个数是另一个数的几倍”应用题的数量关系和解题方法,并能正确解答有关的应用题. 2.通过分析题中的数量关系培养学生分析和解答应用题的能力. 3.向学生渗透辩证唯物主义“变中有不变,日期:求一个数的几倍是多少的应用题 详细介绍: 教学目标 1.初步学会解答求一个数的几倍是多少的应用题. 2.培养学生动脑、动手、动口能力. 教学重点 加深“求一个数是另一个数的几倍”和“求一个数的几倍是多少”数量关系的认识. 教学难点 明确求一个数的几...日期:比一个数少几的应用题 详细介绍: 课题:比一个数少几的应用题 教学目标 1.通过操作使学生掌握求比一个数少几的应用题的数量关系. 2.正确解答求比一个数少几的应用题. 教学重点 掌握求比一个数少几的数量关系. 教学难点 掌握求比一个数少几的数量关系. ...日期:比一个数少几的应用题 详细介绍: 课题:比一个数少几的应用题 教学目标 1.通过操作使学生掌握求比一个数少几的应用题的数量关系. 2.正确解答求比一个数少几的应用题. 教学重点 掌握求比一个数少几的数量关系. 教学难点 掌握...日期:用字母表示数 用字母表示数 教学目标: 1、使学生理解和掌握用字母表示数的方法,知道用字母可以表示数,含有字母的式子既可以表示数量关系,也可以表示数量。 2、会用字母表示数量关系,能求含有字母的式子的值。 3、让学生初步感受用字母表示数的作用和优点,渗透符号化思日期:夫妻的年龄差距与子女个数 奥地利的研究发现,伴侣之间适当的年龄差距是多生子女的关键,男性应找比自己年轻6岁的伴侣,而女性最好找比自己大4岁的男性。 据领导该研究...
&最新内容- - - - - - - - - - - - &&热点推荐
精品专题-  -  - -  -  - -  -  - -  -  - -  -  - -  -  - -  -  - -  -  - -  -  -
英语学习- -  -  - -  -  - -  -  - - -  -  - -  -  - -  -  - - -  -  -
数学学习-  - - -
 - - - - - - - -当前位置: >
> 求用if语句来分别字母,数字和其他字符原题是这样的:编写程序,输入一组字符(以#号结束),对该字符
求用if语句来分别字母,数字和其他字符原题是这样的:编写程序,输入一组字符(以#号结束),对该字符
guwwvip & at
求用if语句来分别字母,数字和其他字符原题是这样的:编写程序,输入一组字符(以#号结束),对该字符做一个统计,统计字母、数字和其他字符的个数,输出结果。我是这样做的:#include&stdio.h&void main(){ char c[80]; int a,b,j,i; a=0; b=0; j=0; puts(&来吧,输入尽量多的数,如果中间有#号,\n前面的数就不算了!\n&); for(i=0;(c[i]=getchar())!='#';i++); if(c[i]&=0&&c[i]&=127) {
if(c[i]&='A'&&c[i]&='Z')
a++; else if(c[i]&='a'&&c[i]&='z')
b++; } else
j++; printf(&字母有%d\n数字有%d\n其他字符有%d\n&,a,j,b);}这里只可以统计其他字符的个数,我想一定是第一个if错了,请高手指点一下,万分感谢。。。
for那一行最后有一个小小的分号,看到了没?然后,  C/C++ code  #include&stdio.h&
void main()
char c[80];
int a,b,j,i;
puts(&来吧,输入尽量多的数,如果中间有#号,\n前面的数就不算了!\n&);
for(i=0;(c[i]=getchar())!='#';i++)
if(c[i]&=0&&c[i]&=127)
if(c[i]&='A'&&c[i]&='Z')
else if(c[i]&='a'&&c[i]&='z')
else if(c[i]&='0'&&c[i]&='9')
printf(&字母有%d\n数字有%d\n其他字符有%d\n&,a,j,b);
}guxiaoyong & &
& & (0)(0)
本问题标题:
本问题地址:
温馨提示:本问题已经关闭,不能解答。
暂无合适的专家
&&&&&&&&&&&&&&&
希赛网 版权所有 & &&&&湘教QS2-164&&增值电信业务经营许可证湘B2-查看: 647|回复: 17|
在线时间5381 小时经验12705 威望10 性别女最后登录注册时间阅读权限95UID218774积分14605帖子精华2分享0
积分排行29帖子精华2微积分0
我写了代码,输出结果到txt文件,
200万耗时大约 10秒以内。Sub GetPassword() 'by kagawa
& & Dim i&, j&, k&, l&, m&, n&, r&, s$, s1$, s2$, t$, c1&, c2&, cnt&, tms#
& & tms = Timer
& &
& & m = ActiveCell
& & If m = 0 Then m = 2 * 10 ^ 6
& & n = 6
& &
& & s = &ABC2DEF3HJK4LM5NPQ7RST8UVW9XYZ& '原始字符 特意把数字打散均匀插入字母中
& & s1 = &2345789& '仅数字
& & s2 = &ABCDEFHJKLMNPQRSTUVWXYZ& '仅字母
& & l = Len(s)
& & l1 = Len(s1)
& & l2 = Len(s2)
& &
& & ReDim arr(1 To l) As Boolean '记录数值位置的数组 以便后面检查是否含有数字
& & For i = 1 To l
& && &&&If IsNumeric(Mid(s, i, 1)) Then arr(i) = True
& & Next
& &
& & ReDim brr&(1 To n - 1) '密码前5位的对应序号基值 方便今后调用 节省计算时间
& & For i = 1 To n - 1
& && &&&k = k + l ^ (i - 1)
& && &&&brr(i) = l ^ (i - 1)
& & Next
& & ReDim crr$(1 To k * l) '定义记录前5位字符的相应序号的数组 便于排除重复
& &
& & t = &VN& & String(n, & &) '生成需要长度的空白字符
& & Open ActiveWorkbook.Path & &\Password.txt& For Output As #1 '打开Txt记录文件
& & Randomize '随机种子初始化 以便每次宏运行时得到不同的随机序列
& & For i = 1 To m '生成指定个数=m的密码
& && &&&Do
& && && && &c1 = 0: c2 = 0: k = 0 '记录初始化 c1=含数字 c2=含字母 k=前5位序号
& && && && &For j = 1 To n - 1
& && && && && & r = Int(Rnd * l) + 1 '取得随机字符
& && && && && & k = k + r * brr(j)& &&&'计算累计序号
& && && && && & If arr(r) Then c1 = 1 Else c2 = 1 '检查记录是否含数字或字母
& && && && && & Mid(t, j + 2, 1) = Mid(s, r, 1) '指定位置替换成该随机字符
& && && && &Next
& && && && &
& && && && &If c1 + c2 = 2 Then '如果数值和字符都含有了
& && && && && & r = Int(Rnd * l) + 1 '那就可以任意取值
& && && && && & Mid(t, j + 2, 1) = Mid(s, r, 1)
& && && && &Else
& && && && && & If c1 = 0 Then '如果不含数字
& && && && && && &&&r = Int(Rnd * l1) + 1 '那最后一个加入数字
& && && && && && &&&Mid(t, j + 2, 1) = Mid(s1, r, 1)
& && && && && & Else '如果不含字母
& && && && && && &&&r = Int(Rnd * l2) + 1 '最后一个加入字母
& && && && && && &&&Mid(t, j + 2, 1) = Mid(s2, r, 1)
& && && && && & End If
& && && && &End If
& && && && &
& && && && &If crr(k) = && Then '如果前5位序号不重复记录为空
& && && && && & crr(k) = t '记录本次有效结果 以便今后检查重复
& && && && && & Print #1, t '记录到txt文件
& && && && && & Exit Do '退出本次计算
& && && && &Else '如果该序号已有记录
& && && && && & If InStr(crr(k), t) = 0 Then 则进一步检查是否相同 如果不同则有效
& && && && && && &&&crr(k) = crr(k) & &,& & t '记录中加入新的结果以便今后检查重复
& && && && && && &&&Print #1, t '记录到txt文件
& && && && && && &&&Exit Do '退出本次计算
& && && && && & Else
& && && && && && &&&cnt = cnt + 1 '统计重复次数
& && && && && & End If
& && && && &End If
& && &&&Loop
& & Next
& & Close #1 '关闭txt文件
& & ActiveCell.Offset(, 1) = Format(Timer - tms, &0.000&)
& & ActiveCell.Offset(, 2) = cnt
& & ActiveCell.Offset(1).Activate
& & MsgBox Format(Timer - tms, &0.000s &) & cnt & & / & & m
End Sub复制代码
22:48 上传
下载次数: 1
13.79 KB, 下载次数: 1
在线时间5381 小时经验12705 威望10 性别女最后登录注册时间阅读权限95UID218774积分14605帖子精华2分享0
积分排行29帖子精华2微积分0
附件中原始字符串改成文本型数组取值,速度略增加一些。
23:09 上传
下载次数: 3
17.48 KB, 下载次数: 3
在线时间1221 小时经验1092 威望0 最后登录注册时间阅读权限50UID1100552积分1192帖子精华0分享0
EH高级, 积分 1192, 距离下一级还需 808 积分
积分排行894帖子精华0微积分0
香川群子 发表于
你的代码错误太多、太多。
完全不符合要求。
谢谢香川群子老师指点。期待中……
在线时间5381 小时经验12705 威望10 性别女最后登录注册时间阅读权限95UID218774积分14605帖子精华2分享0
积分排行29帖子精华2微积分0
一指禅62 发表于
谢谢香川群子老师指点。期待中……
你还在期待什么?
你的代码的错误已经指出,也在9楼帮你改过了……虽然再改也永远无法计算200万,
但毕竟50万以下可以计算了。
而我的200万代码也以完成。你还要期待什么呢?
在线时间5381 小时经验12705 威望10 性别女最后登录注册时间阅读权限95UID218774积分14605帖子精华2分享0
积分排行29帖子精华2微积分0
一指禅62 发表于
我是文科生,高数不咋的。和楼主一起期待老师们的范例。
你的代码最后改成这样子:Sub test()
& & Dim d, i&, m&, s, t$
& & Randomize
& & m=200000 '建议不超过20万 超过则字典运算速度大幅度降低。
& & s = Split(&A B C 2 D E F 3 H J K 4 L M 5 N P Q 7 R S T 8 U V W 9 X Y Z&) '按我的序列速度较快
& & Set d = CreateObject(&Scripting.Dictionary&)
& & t = &VN& & String(6, & &) '生成密码模板
& & Do
& && &&&For i = 3 To 8
& && && && &Mid(t, i, 1) = s(Int(Rnd * 30)) '直接替换速度更快
& && &&&Next
& && &&&If t Like &*[0-9]*& Then If t Like &VN*[A-Z]*& Then d(t) = && '检查数字字母都含有时加入字典
& & Loop Until d.Count = m '确认字典中不重复项达到m值时退出Do循环
'& & [a1].Resize(m) = Application.Transpose(d.keys) '输出结果 注意仅65536以下可以用Transpose
& & Set d = Nothing
End Sub复制代码这已经是最简、最高效的代码改进了。
但是,由于使用了字典方法排除重复项,对于大量不重复密码的要求是无能为力。
所以,本代码无法满足楼主要求。 仅限于一次性生成20万以下的不重复密码。
在线时间1221 小时经验1092 威望0 最后登录注册时间阅读权限50UID1100552积分1192帖子精华0分享0
EH高级, 积分 1192, 距离下一级还需 808 积分
积分排行894帖子精华0微积分0
消化中!再次谢谢香川群子老师的点拨和范例。谢谢!
在线时间5381 小时经验12705 威望10 性别女最后登录注册时间阅读权限95UID218774积分14605帖子精华2分享0
积分排行29帖子精华2微积分0
本帖最后由 香川群子 于
17:26 编辑
补了一个生成200万不重复密码的【字典嵌套算法】。
算是突破了字典方法在数量巨大是必然死机的障碍。
但实际速度仍然比较慢,比我的数组防止重复法要慢3-5倍。Sub test5()
& & Dim d, i&, m&, s, t$, t1$, t2$, cnt&, tms#
& & tms = Timer
& &
& & m = ActiveCell: If m = 0 Then m = 2 * 10 ^ 6
& &
'& & s = Split(&2 3 4 5 7 8 9 A B C D E F H J K L M N P Q R S T U V W X Y Z&)
& & s = Split(&A B C 2 D E F 3 H J K 4 L M 5 N P Q 7 R S T 8 U V W 9 X Y Z&)
& &
& & Open ActiveWorkbook.Path & &\Password.txt& For Output As #1
& & Set d = CreateObject(&Scripting.Dictionary&)
& & Randomize
& & Do
& && &&&t1 = &&
& && &&&For i = 1 To 2
& && && && &t1 = t1 & s(Int(Rnd * 30))
& && &&&Next
& && &&&If Not d.Exists(t1) Then Set d(t1) = CreateObject(&Scripting.Dictionary&)
& && &&&'仅取前2位字符作为key加入字典、并设置每一个New key作为嵌套的字典。
& && &&&Do
& && && && &t2 = &&
& && && && &For i = 1 To 4
& && && && && & t2 = t2 & s(Int(Rnd * 30))
& && && && &Next
& && && && &If Not d(t1).Exists(t2) Then '后四位在字典中比对 如果不重复则
& && && && && & t = &VN& & t1 & t2 '把密码拼接出来
& && && && && & If t Like &*[0-9]*& Then '确认含数字
& && && && && && &&&If t Like &VN*[A-Z]*& Then '确认含字母
& && && && && && && && &d(t1)(t2) = && '该密码有效 加入嵌套字典 排除今后重复
& && && && && && && && &Print #1, t '输出结果到txt文件
& && && && && && && && &cnt = cnt + 1 '有效统计+1
& && && && && && && && &Exit Do
& && && && && && &&&End If
& && && && && & End If
& && && && &End If
& && &&&Loop
& & Loop Until cnt = m '达到目标数如 200万后退出
& & Close #1 '关闭txt文件
& & ActiveCell.Offset(, 1) = Format(Timer - tms, &0.000&)
& && & ActiveCell.Offset(1).Activate
& & MsgBox Format(Timer - tms, &0.000s &) & m
& & '下面是统计各个嵌套字典的关键词数量。
& & krr = d.keys
& & For i = 0 To d.Count - 1
& && &&&Cells(i + 2, 5) = d(krr(i)).Count
& & Next
& & Set d = Nothing
End Sub复制代码一级字典 共900个关键字(两个字符=30*30)
后面各个嵌套字典,对于生成200万密码来说,平均==2222.22个
测了一次,最小2077 ,最大2366个。还是比较平均的。
在线时间442 小时经验1193 威望0 性别男最后登录注册时间阅读权限50UID418936积分1193帖子精华0分享0
EH高级, 积分 1193, 距离下一级还需 807 积分
积分排行893帖子精华0微积分0
我就看看!!不说话
积分≥4700即可申请
金牌优秀会员
金牌优秀会员奖章No.3
金牌优秀会员
金牌优秀会员奖章No.2
金牌优秀会员
金牌优秀会员奖章No.1
优秀会员奖章No.4
优秀会员奖章No.3
优秀会员奖章No.2
优秀会员奖章No.1
关注我们,与您相约微信公众平台!
Copyright 1999 - 2017 Excel Home. All Rights Reserved.本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!
Powered by
本站特聘法律顾问:徐怀玉律师 李志群律师 &&求字母数字对照表_百度知道
求字母数字对照表
请求各位码一码字啦 就是A对1 B对2的……
果问的是ASCII码的话,B=66: a=97, 顺次递推小写字母,b=98:大写字母: A=65
我我我我我说的不是这个 是顺序的那种…
其他类似问题
字母的相关知识
按默认排序
其他2条回答
什么意思?
1=A2=B 3=C 4=D5=E 6=F7=G 8=H 9=I10=J 11=K 12=L13=M14=N15=O16=P17=Q18=R19=S20=T21=U22=V23=W24=X25=Y26=Z
您可能关注的推广回答者:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁查看: 2352|回复: 19|
在线时间14 小时经验4 威望0 性别保密最后登录注册时间阅读权限10UID1255536积分4帖子精华0分享0
EH新人, 积分 4, 距离下一级还需 16 积分
积分排行3000+帖子精华0微积分0
请教各位大侠们,小生想要生成一组6位随机数数据。格式: 3个字母+3位数字的函数。如adf234 cdf567 fgh789字母和数字都是随机的,谢谢!
在线时间1759 小时经验1746 威望0 最后登录注册时间阅读权限50UID1081234积分1746帖子精华0分享0
EH高级, 积分 1746, 距离下一级还需 254 积分
积分排行612帖子精华0微积分0
本帖最后由 fjzjm 于
23:40 编辑
字母和数字可以重复吗?
您快乐!我快乐!!
在线时间600 小时经验1071 威望0 最后登录注册时间阅读权限50UID2076419积分1121帖子精华0分享0
EH高级, 积分 1121, 距离下一级还需 879 积分
积分排行966帖子精华0微积分0
到底3个字母是哪些,A~Z???数字是不是都要连续性的?你上面都是连续的。。。。没有个明确说明???
玩EXCEL要适当休息。。。。。。
在线时间14 小时经验4 威望0 性别保密最后登录注册时间阅读权限10UID1255536积分4帖子精华0分享0
EH新人, 积分 4, 距离下一级还需 16 积分
积分排行3000+帖子精华0微积分0
问题补充:只要是前3位是字母,后3位是数字就可以了!呵呵,这就是一个初学者的常见问题,让各位大大费心了!
在线时间3774 小时经验5427 威望7 最后登录注册时间阅读权限100UID1130810积分6677帖子精华0分享10
积分排行127昵称CH帖子精华0微积分0
这个可行:=CHAR(RANDBETWEEN(65,90))&CHAR(RANDBETWEEN(65,90))&CHAR(RANDBETWEEN(65,90))&RANDBETWEEN(100,999)复制代码
在线时间3774 小时经验5427 威望7 最后登录注册时间阅读权限100UID1130810积分6677帖子精华0分享10
积分排行127昵称CH帖子精华0微积分0
或者INT+RAND():=CHAR(65+INT(RAND()*26))&CHAR(65+INT(RAND()*26))&CHAR(65+INT(RAND()*26))&100+INT(RAND()*900)复制代码
在线时间1261 小时经验3679 威望2 最后登录注册时间阅读权限90UID1981537积分3729帖子精华0分享0
EH能手, 积分 3729, 距离下一级还需 971 积分
积分排行256昵称Lee-Alvin帖子精华0微积分0
按F9可以刷新!
09:49 上传
下载次数: 35
6.62 KB, 下载次数: 35
在线时间14 小时经验4 威望0 性别保密最后登录注册时间阅读权限10UID1255536积分4帖子精华0分享0
EH新人, 积分 4, 距离下一级还需 16 积分
积分排行3000+帖子精华0微积分0
CheryBTL 发表于
或者INT+RAND():
上面那条不公用,没反应。这种方法可行 ,谢谢!
在线时间3774 小时经验5427 威望7 最后登录注册时间阅读权限100UID1130810积分6677帖子精华0分享10
积分排行127昵称CH帖子精华0微积分0
suiyueliuhong 发表于
上面那条不公用,没反应。这种方法可行 ,谢谢!
可能是你用03版的原因,RANDBETWEEN是07版以后才有的函数。
在线时间14 小时经验4 威望0 性别保密最后登录注册时间阅读权限10UID1255536积分4帖子精华0分享0
EH新人, 积分 4, 距离下一级还需 16 积分
积分排行3000+帖子精华0微积分0
本帖最后由 suiyueliuhong 于
10:43 编辑
CheryBTL 发表于
可能是你用03版的原因,RANDBETWEEN是07版以后才有的函数。
呵呵 又学了新知识 谢谢啦&&如果 字母限定为小写字母 又应该怎么修改呢 ?
积分≥4700即可申请
金牌优秀会员
金牌优秀会员奖章No.3
金牌优秀会员
金牌优秀会员奖章No.2
金牌优秀会员
金牌优秀会员奖章No.1
优秀会员奖章No.3
优秀会员奖章No.2
优秀会员奖章No.1
关注我们,与您相约微信公众平台!
Copyright 1999 - 2017 Excel Home. All Rights Reserved.本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!
Powered by
本站特聘法律顾问:徐怀玉律师 李志群律师 &&

我要回帖

更多关于 笔记本字母键变数字键 的文章

 

随机推荐