⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ls08.php

📁 编程摇篮德CB学习课程
💻 PHP
📖 第 1 页 / 共 2 页
字号:
      <P> </P>
      <P><B>cout &lt;&lt; "请输入第1个加数:" &lt;&lt; endl;</B></P>
      <P><B>cin &gt;&gt; js1;</B></P>
      <P> </P>
      <P><B>cout &lt;&lt; "请输入第2个加数:" &lt;&lt; endl;</B></P>
      <P><B>cin &gt;&gt; js2;</B></P>
      <P> </P>
      <P>cout 输出一行提示,告诉用户(现在就是我们自已)做什么。而cin则将用户的输入存到变量中。如:</P>
      <P><B>cin &gt; js1;</B></P>
      <P>这一行执行时,会等待用户输入一个数,直到用户回车后(别忘了,回车结束输入),用户输入的数值会被自动赋值给变量js1;js1是“加数1”的拼音首字母,而非你更熟悉的“奸商1”或“<A 
      href="http://www.bcbschool.com/v4_softs.htm">句神</A>1 :(”。</P>
      <P> </P>
      <P>最后一部分实现计算和输出。</P>
      <P><B>he = js1 + js2;&nbsp;&nbsp;&nbsp; // 和 = 加数1 + 加数2</B></P>
      <P><B>cout &lt;&lt; js1 &lt;&lt; " + " &lt;&lt; js2 &lt;&lt; " = " 
      &lt;&lt; he &lt;&lt; endl;</B></P>
      <P> </P>
      <P>这段程序的核心代码就行:</P>
      <P><B>he = js1 + js2;&nbsp;&nbsp;&nbsp; // 和 = 加数1 + 加数2</B></P>
      <P>它实现将js1和js2相加,并附值给he。</P>
      <P>最后一句 cout 将结果输出,你可以只写成这样:</P>
      <P>cout &lt;&lt; he;</P>
      <P>这样写也把计算结果输出了,但可能会被人说成“用户界面不友好”噢。</P>
      <P> </P>
      <P>来看看我们程序运行时的某种结果。我决定让它计算:2002 + 1973。你要让它算什么?你自已试吧。</P>
      <P><IMG height=142 src="教学--第八章 顺序流程_files/ls08.h3.jpg" width=281 
      border=0></P>
      <P> </P>
      <P>虽然是个很不起眼的小程序,虽然只是一道小学低年级的算术题,可是必竟我们亲手证明了我们的爱机具有计算能力。得意5秒钟,我们来继续我们的课程。我将通过<B>单步运行</B>来亲眼程序是如何一步一步地按顺序运行的。</P>
      <P>如果你在还在运行着程序,回车键关掉那个黑色窗口。</P>
      <P>切换回C++ Builder的代码窗口。</P>
      <P> </P>
      <P>单步运行是一种最必要的调试方法(其它众多调试方法几乎都基于该方法),它可以让程序按代码行一步步运行。</P>
      <P> </P>
      <P>在CB中,通过按F7或F8键,可以实现单步运行一个完整的代码行(不一定是物理上的一行代码)。F7和F8的功能区别现暂不必理。本章中,我们使用F8。对应的功能菜单为:</P>
      <P><IMG height=234 src="教学--第八章 顺序流程_files/ls08.h4.jpg" width=417 
      border=0></P>
      <P>从菜单中看到,F8对应的功能名称为:Step Over (单步越过)。</P>
      <P>按下F8后, 程序开始运行,但并没有直接出现结果窗口。相反,代码窗口出现了变化:</P>
      <P><IMG height=380 src="教学--第八章 顺序流程_files/ls08.h5.gif" width=492 
      border=0></P>
      <P>左边栏上的 <IMG height=19 src="教学--第八章 顺序流程_files/ls08.h6.gif" width=13 
      border=0> 表示该行是一可以单步中断的代码行,而<IMG height=19 
      src="教学--第八章 顺序流程_files/ls08.h7.gif" width=18 
      border=0>则指示了当前正要运行的代码行,注意,是正要运行,而不是正在运行。</P>
      <P>现在让我们再按一次F8(在代码窗口里),可以看到程序往下走到第二个可中断行。</P>
      <P><IMG height=120 src="教学--第八章 顺序流程_files/ls08.h8.gif" width=414 
      border=0></P>
      <P> </P>
      <P>再按一次F8,程序又往下走了一行(为了方便观察,我将输出窗口拉近了一并抓下图)。</P>
      <P><IMG height=109 src="教学--第八章 顺序流程_files/ls08.h10.jpg" width=374 
      border=0></P>
      <P>输出窗口(DOS窗口)有出输出,并且有光标闪烁,但你可以试着在输出窗口里敲敲键盘,会发现你并不能在这一步输入加数1,因为此时程序运行到 cin 
      &gt;&gt; 
      js1,但并未执行这一行。只有我们再按一下F8(记得在CB的代码窗口里,而不是在DOS窗口里),程序将要求并允许我们输入加数1。如果你还没有再按一次F8,现在按一下。结果如下:</P>
      <P><IMG height=137 src="教学--第八章 顺序流程_files/ls08.h12.gif" width=306 
      border=0></P>
      <P>我们发现代码窗口里暂时没有<IMG height=19 src="教学--第八章 顺序流程_files/ls08.h7.gif" 
      width=18 border=0>了,因为<B>控制权已暂时移交到我们程序</B>,它现在可以输入了。我们输入2002,然后回车,<IMG 
      height=19 src="教学--第八章 顺序流程_files/ls08.h7.gif" width=18 
      border=0>很快又出现在代码窗口里,并且,已经越过 cin &gt;&gt; js1这一行。</P>
      <P> </P>
      <P><IMG height=165 src="教学--第八章 顺序流程_files/ls08.h9.gif" width=345 
      border=0></P>
      <P> </P>
      <P>接下来是提示输入第二个加数,大同小异。只要你记得当控制权转到程序时,你需要切换到输出窗口输入第二个数。 
      注意了:最后当程序运行:getchar(),需要我们输入一个回车时,控制权也会移到程序。由于是在单步运行,所以当我们在输出窗口最后敲一个回车时,程序同样不会直接运行到结束。所以你仍得到CB的代码窗口里按F8。</P>
      <P><IMG height=87 src="教学--第八章 顺序流程_files/ls08.h14.gif" width=448 
      border=0></P>
      <P>getchar() 以后,程序仍将在return 0; 和最后的一个 ‘}' 上作单步运行两次才退出。</P>
      <P><B>如果你懒得这样一步步运行到结束,想结束单步运行,可以直接按F9,程序将恢复全速运行,直接运行到结束。</B></P>
      <P> </P>
      <P>就这样,我们一步一步地运行完这个程序。我们学会了如何通过F8来单步运行程序,我们也理解了什么叫顺序流程。这个程序中每一个可中断点(事实上也是可执行点),在程序运行时,被依照其先后次序,一一执行。</P>
      <P>如果你还是不理解什么叫“顺序”,那就从椅子上站起来,然后双眼直直地瞄住一面墙(挑结实一点的),然后直直地走过去,听到“砰”的一声后,你一定会开窍。</P>
      <P>(一般不传之秘笈:当程序员觉得被眼前的代码弄得头晕脑胀的时候,大多数人都会起来走走,下楼抽颗烟,或者只是坐坐,吹吹风……最佳方法是挪到不远处某漂亮的女测试员的桌边胡说八道几句,再挪回电脑前,往往发现问题的答案很简单!)<BR></P>
      <H4><A name=8.1.2>8.1.2</A> 加法计算器(WIN版)</H4>
      <P> </P>
      <P>我们一直在写DOS下的程序(控制台程序)。趁今天的课程知识点不多,我们来写一个正宗的Windows应用程序。它还是实现一个加法计算器。</P>
      <P> </P>
      <P>不要做得太顺手了!听我说,如果刚才那个DOS版你还没保存,请先 Shift + Ctrl + S 
      保存全部。接着,最好执行一下这个菜单命令:File | Close All。如图:</P>
      <P><IMG height=305 src="教学--第八章 顺序流程_files/ls08.h15.gif" width=133 
      border=0></P>
      <P> </P>
      <P>然后,我们重复一下如何建立一个空白的Windows应用程序工程,我们在以前的课程中曾经做过一次,在作业里也考过一次。</P>
      <P>其实很简单。菜单: File | New Applicaton (如果是CB6,可能略有不同)。也可以按工具栏上的这个图标:</P>
      <P><IMG height=32 src="教学--第八章 顺序流程_files/ls08.h16.gif" width=123 
      border=0></P>
      <P>然后选择:Application。</P>
      <P> </P>
      <P>新的空白工程建成以后。我们需要来设计程序界面--毕竟,这是一个有图形用户界面(GUI)的Windows程序。</P>
      <P>其实很简单,我们需要两个编辑框,让用户输入两个加数。再来一个编辑框用于显示和。还要一个按钮,当用户按下时,加法运算才开始。当然还需要一些标签用于显示提示文字。</P>
      <P>下面先把要用到三种控件在控件栏位置说一下:</P>
      <P><IMG height=78 src="教学--第八章 顺序流程_files/ls08.h17.gif" width=258 
      border=0></P>
      <P>这三个控件都在控件栏的Standard页上。上图中,</P>
      <P>①:标签控件(TLabel);②:编辑框控件(TEdit);③:按钮控件(TButton)。</P>
      <P> </P>
      <P>先在表单上放三个标签,三个编辑框:(在控件栏上按下控件图标,然后在表单上单击)</P>
      <P><IMG height=207 src="教学--第八章 顺序流程_files/ls08.h18.gif" width=296 
      border=0></P>
      <P>然后,用鼠标单击表单上的 Label1,如果你看不到下面这个窗口(属性检视器),请按F11。</P>
      <P><IMG height=237 src="教学--第八章 顺序流程_files/ls08.h19.jpg" width=385 
      border=0></P>
      <P>将其Caption(标题)属性,由原来默认的Label1改为:“请输入第一个加数:”如图:</P>
      <P><IMG height=239 src="教学--第八章 顺序流程_files/ls08.h20.jpg" width=409 
      border=0></P>
      <P>同样的方法,修改Label2,Label3的标题,分别为:“请输入第二个加数”和“和”。</P>
      <P> </P>
      <P>三个编辑框中默认的文本“Edit1”、“Edit2”、“Edit3”我们都不要。编辑框中的文字属于TEdit的Text属性。让我们一起将它们清除:</P>
      <P>首先拉动鼠标,一起选中三个编辑框:</P>
      <P><IMG height=225 src="教学--第八章 顺序流程_files/ls08.h21.gif" width=324 
      border=0></P>
      <P>将上图中Text属性的值:Edit1清空。</P>
      <P>现在,设计结果如图:</P>
      <P> </P>
      <P><IMG height=207 src="教学--第八章 顺序流程_files/ls08.h22.gif" width=296 
      border=0></P>
      <P>前两个编辑框我们准备让用户输入加数,最后一个编辑框要用来显示相加结果(和),所以最后一个编辑框不能让用户修改。编辑框(TEdit)有一个属性名为ReadOnly(只读),当它被设置为真(true)时,编辑框的内容不能手工修改。</P>
      <P><IMG height=191 src="教学--第八章 顺序流程_files/ls08.h24.gif" width=264 
      border=0></P>
      <P>如上图,将Edit3的ReadOnly属性改为true(原来默认为false)。修改ReadOnly的结果并不能直接在设计期间看出。</P>
      <P> </P>
      <P>最后,让我们再加上一个按钮(TButton),并改变其Caption属性为:“加(&amp;A)”</P>
      <P><IMG height=182 src="教学--第八章 顺序流程_files/ls08.h23.gif" width=296 
      border=0></P>
      <P> </P>
      <P>界面设计完成。下面开始代码设计。</P>
      <P> </P>
      <P><B><FONT color=#ff0000>......[此处内容不发表在网页,请报名的学员使用<A 
      href="http://www.bcbschool.com/noused/v4_xiazai.htm" 
      target=_blank>课程下载器</A>下载完整课程]......</FONT></B></P>
      <P> </P>
      <P>以下是运行时的一个界面:</P>
      <P><IMG height=182 src="教学--第八章 顺序流程_files/ls08.h25.jpg" width=296 
      border=0></P>
      <P>你还可以试着在第三个编辑框里敲敲键盘,会发现的确无法改变其内容。</P>
      <P> </P>
      <P>很开心的一章:我们终于能做些有点意义的小程序了。从身边找一个会电脑,但没有学习编程的家伙,我们大可用这个程序小小的炫耀一番。</P>
      <P>不过,现在你也应该能理解,为什么我们在学习C,C++语言时,我们为什么大多会采用DOS下程序来作为例子,因为若使用Windows程序,它的界面设计很容易让我们分心。并且,我们还必须面对如Edit2-&gt;Text.ToIntDef(0)这些后面才学到的内容。</P></TD></TR></TBODY></TABLE></CENTER></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -