设为首页收藏本站

新微赢技术网

 找回密码
 注册
搜索
热搜: 回贴
查看: 644|回复: 7
打印 上一主题 下一主题

这个简单加密程序要怎么实现?顺便问一下怎么在从键盘输入获得一句话的同时 ...

[复制链接]
跳转到指定楼层
1#
发表于 2009-11-6 01:35:39 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
题目:编制程序,将输入的一行字符以加密的形式输出,然后将其解密,解密的字符序列与输入的正文进行比较,吻合时输出解密的正文,否则输出解密失败。
加密时,将每个字符的ASCII码依次反复加上“4962873”中的数字,并在32(' ')~122('z')之间做模运算。


这是钱能主编的《c++程序设计教程(第二版)》第三章的一道习题。我对题意都不是太明白,求模运算的意义是什么?还有在加密时是不是连输入内容的空格也都一起处理,看书上举得一个例子好像是这样,但是我试过,如果直接用向量获得输入内容的话,得到的是一串连续的字母,根本没有空格。
8#
发表于 2009-11-6 01:35:47 | 只看该作者
有谁看过这个教材的?最好能给个答案,试过好多次了,实在做不出这个题了。
回复 支持 反对

使用道具 举报

7#
发表于 2009-11-6 01:35:46 | 只看该作者
用string变量是可以正常的输出空格,但是在对没个字符依次处理的时候好像就不行了吧?
回复 支持 反对

使用道具 举报

6#
发表于 2009-11-6 01:35:45 | 只看该作者
我感觉用string比向量方便吧,
string str;
cin>>str;
for(int i=0;i<str.length();i++)
//对每个字符作你要求的操作后直接输出
不过我还没试呀
回复 支持 反对

使用道具 举报

5#
发表于 2009-11-6 01:35:44 | 只看该作者
是这个意思,不过总是实现不了,前几位结果和书上给出的例子一样,但是后面一部分就不一样了,我主要是想用向量实现,因为向量可以用.push_back来控制容量,也就避免了一些垃圾数据的产生。用数组实现的话好像会容易一些,不过要提前定好容量,至于那些垃圾数据就只好在后期加入一些过滤条件了,但是这样会影响输入内容的多少,如果超过数组容量,多出的部分就不会被处理了。
回复 支持 反对

使用道具 举报

4#
发表于 2009-11-6 01:35:43 | 只看该作者
是不是把ASCII码都取值,在数字的大小上加加减减吧?
回复 支持 反对

使用道具 举报

3#
发表于 2009-11-6 01:35:42 | 只看该作者
那这个题目中作模运算的目的是什么呢?
回复 支持 反对

使用道具 举报

2#
发表于 2009-11-6 01:35:40 | 只看该作者
用getche()函数吧,可以连空格都可以处理的~~~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

申请友链|小黑屋|最新主题|手机版|新微赢技术网 ( 苏ICP备08020429号 )  

GMT+8, 2024-11-19 15:19 , Processed in 0.126204 second(s), 9 queries , Gzip On, Memcache On.

Powered by xuexi

© 2001-2013 HaiAn.Com.Cn Inc. 寰耽

快速回复 返回顶部 返回列表