程序设计作业-5566导航网漫画
这里在scanf()中 我是写了”%d %d”中间是空格,那么在cmd输入中输入格式就是 数值 数值。 如果是”%d,%d”那么输入格式就是 数值,数值
作业第二题在这里,我们发现如果是用了”%c”那么输出是对应字符,如果是使用的是”%d”那么输出的则是:字符下对应的数字000-255。对应规则遵循ANSCII表。
将char 类型转换成int类型之后,依然输出的结果还是这个,其实本质编译器对字符和数字之间有相互转换
如果在c1=‘a’;中将单引号去掉,那么程序就报错。这里我们可以理解为,int类型只能赋值字符和数字,如果之间写字母,那么是错误的。
居然有ANSCII对应,那么我们试试用c1=97 c2=98会有啥呢?
可以看到结果依然是成立的!
结论:ANSII表可以进行正向对应,也可以反向对应。
那如果大于255 小于0 超过范围呢?
从上面三个图可以看到,在大于300之后一直是 “?”,在数值小于0的话则是空。在超过范围之后,依然会输出字符。但是会有问题。
作业第三题根据作业2的结论,我们试试将”China”转为数字
通过ANSCII表找到规律,每个字母都是+4,那么得到结果正如预期一样。在这里如果是C99或者C11的话,我们可以通过for循环流程控制,达到高效效果。
根据要求 改变c1、c2、c3、c4、c5的初值为:’T’、’o’、’d’、’a’、’y’,对译码规律做如下补充:‘W’用‘A’代替,‘X’用‘B’代替,‘Y’用‘C’代替,‘Z’用‘D’代替,修改程序并运行。
将译码规律修改为:将一字母用它前面的第4个字母代替,例如,“E”用“A”代替,‘Z’用‘U’代替,‘D’用‘Z’代替,‘C’用‘Y’代替,‘B’用‘X’代替,‘A’用‘V’代替,修改程序并运行。 我们发现,他们字母之间是-22的关系,那我就修改一下值,便实现该效果。
实验总结在上面的探究中,我深刻了解了字符与整形数据之间的关系,也了解了一些基本算法。在这里还而外优化了输入数据时候方便的问题。了解了一些错误,避免以后开发过程中产生低级错误。