您的位置:首页 > 其它

第6、7讲阅读程序结果检验

2014-10-22 20:04 134 查看
问题及代码:

/*
* Copyright (c) 2014, 烟台大学计算机与控制工程学院
* All rights reserved.
* 文件名称:.cpp
* 作    者:何小乐
* 完成日期:2014年 10 月 22 日
* 版 本 号:v1.0
*
* 问题描述:讲义上阅读程序结果检验
* 输入描述:无输入
* 程序输出:字符型变量a、b
*/
#include <iostream>

using namespace std ;

int main()
{
char  a ,b ;
for (a='0',b='9' ; a<b ; a++,b--)
cout<<a<<b;
cout<<endl ;
return 0 ;

}


运行结果:



知识点总结:

1.for语句基本结构了解

2.首次进行单步调试,通过书本和watches找到了自己的错误

3.单个数字也可以作为字符常量

学习小结:

今天在学科导论课上闲着做了一下讲义上的阅读程序,这个程序我在书本上写的答案是♧♢,上机运行时我震惊了。。。居然是一串数字,刚开始我以为是程序什么地方编错了,因为这种数字的出现一般是前面没有赋值,于是我进行了单步调试,反复操作了一番后,才知道程序是正确的。因为for循环的循环体cout没有换行,才导致数字都在一起。

我在课堂上用大脑运行这个程序时,不知道0和9这两个数字是字符常量,以为a+到5、b-到4然后for循环就结束了,然后cout的5和4分别再根据ASC码表转化为对应的字符。而实际上是‘0’、‘9’分别赋值给a、b后就以ASC码表里面的数值存储了,在a++、b--对应的ASC值会变化,输出时会转化为变化后ASC码对应的字符常量。

因为感觉watches里面a、b变量的监测感觉有点不对劲(上面显示a:48‘0’、b:57‘9’,而我心里想的是a:0、b:9),于是查了一下书,顿悟。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: