华中科技大学c++第1次上机作业

华中科技大学c++第1次上机作业
华中科技大学c++第1次上机作业

第二章上机实验

一、实验目的

学会编写简单的顺序C++程序。

掌握基本数据类型变量和常量的应用。

掌握运算符与表达式的应用。

掌握结构化程序设计基本控制结构的运用。

了解使用简单的输入输出。

了解头文件的作用。

熟悉Visual C++6.0的开发环境。学习用Visual C++6.0编写标准的C++控制台程序。

二、实验内容

1. 请按照下面步骤调试程序,了解程序调式的步骤。

知识点:调试Visual C++6.0开发环境使用(编辑、编译、连接、运行、调试)

1)启动Visual C++6.0开发环境

从“开始”菜单中选择“所有程序”,然后找到【 Microsoft Visual Studio 6.0 | Microsoft Visual C++6.0】双击,显示Visual C++6.0开发环境窗口,如图2.1所示。

图2.1 操作系统中选择VC编译软件

2)创建一个项目

进入Microsoft Visual C++ 6.0集成开发环境后,选择【文件|新建】菜单项,弹出新建对话框。单击【工程】标签,打开其选项卡,在其左边的列表框中选择【Win32 Console Application 】工程类型,在【工程名称】文本框中输入工程名hello,在【位置】文本框中输入工程保存的位置,单击【确定】按钮,如图2.2 所示。

图2.2 创建新的应用程序界面

在弹出的对话框(如图2.3所示),选择【一个空工程】,单击【完成】按钮

图2.3 Win32 Console Application 弹出窗口

此时出现【新建工程信息】对话框,如图 2.4 所示。该对话框中提示用户创建了一个空的控制台应用程序,并且没有任何文件被添加到新工程中,此时,工程创建完成。

图2.4 新工程信息对话框

3)建立C++源程序文件

选择【文件|新建】菜单項,弹出新建对话框。单击【文件】选项卡,在列表框中选择C++ Source File ,在【文件名】文本框中输入文件名hellofile,选中【添加到工程】复选框,自动生成hellofile.cpp文件,如图2.5所示。

图2.5 建立源程序文件名

然后单击【确定】按钮,打开源文件编辑窗口,就会弹出输入源代码窗口,开始输入源代码。

图2.6 输入源程序

4)编辑C++源程序文件内容

在文件编辑窗口中输入代码(如图2.6所示):

#include

using namespace std;

int main()

{

cout<<"同学们好,欢迎来到华中科技大学\n";

return 0;

}

选择【文件|保存】菜单项来保存这个文件。

1)建立并运行可执行程序

○1选择【组建| 组建hello.exe】菜单项建立可执行程序。

如果你正确输入了源程序,此时便成功地生成了可执行程序hello.exe。

如果程序有语法错误,则屏幕下方的状态窗口中会显示错误信息,根据这些错误信息对源程序进行修改后,重新选择菜单命令组建| 组建hello.exe,建立可执行程序。

○2选择【组建| 执行hello.exe】菜单项运行程序,观察屏幕的显示内容。

5)关闭工作空间

选择【文件 | 关闭工作空间】菜单项来关闭工作空间。

2.测试下述表达式的结果,并解释。

cout<<"abcde\2"; //1

结果:解释\为转义字符ACSII值为2的即为笑脸

cout<<'a'+2; //2

结果解释:a的ASCII码值为97,加2后为99

cout<

结果解释c的ASCII码值为99 ,char为字符型最终输出字符c

cout<<'a'+'\2'; //4

结果将两个字符转换为整数再相加结果为整形,就是两个ASCII码值的和

cout<<"abcde\x41"; //5

结果\x41即为用16进制ASCII 表示字符,即ASCII为65的字符A

cout<<"abcde\n41"; //6

结果\n为换行,故41在下一行显示 cout<<"abcde\041"; //7

结果\0为八进制,41对应十进制的33,ASCII码值为33的为!

cout<<"abcde\’041\'"; //8

结果\使‘直接输出为‘ cout<<"abcde\nhhhhh"; //9

结果\n为换行,故hhhhh在下一行显示

3. 测试自行准备的典型表达式的值,加强对表达式,运算符等规则的理解。并将其记录在下面,对结果给出合理的解释。(不少于10)

记录处:

1.cout<<’\41’; 结果‘‘,需要在前面加char ,将其转换为字符*,然后能输出*

2.cout<<”abcde\\2” ; 输出结果为abcde\2,第一个斜杠将第二个转译。

3.cout<<’a’+’2’; 结果为147. 当数字加上单引号之后为字符,运算时用其对应的ASCII 值计算。

4.cout<<5/7;结果为0 最开始规定整型.

5.cout<

6.cout<<5.0/

7.0; 结果为0.714286,5.0使得数据类型为浮点数。

7.将开始int main()换为double main(), cout<<5/7;结果为0.

8.cout<

9.cout<

10.cout<<”a b c”; 空格可以直接输入.不需要用ascii码值

3.上机编程题

1)编写一个简单程序输出如下内容:

*

* * *

* * * * *

知识点:学会输出语句和程序简单结构

①程序原代码。(直接粘贴在此)

#include

using namespace std;

int main()

{

cout<<" *"<<'\n';

cout<<" * * *"<<'\n';

cout<<"* * * * *"<<'\n';

}

②解决本题的算法思路描述

每一行输出的结果

③调试过程的记载(包括出现的错误,以及修改过程)

开始计划一次输出三行失败,于是改为依次输出

第二次\n前忘记加<<

第三次\n忘加单引号

2)编写程序,定义字符变量ch并赋值,然后在屏幕上输出该字符及其对应的ASCII 码值,如:字母a,字母b,字母A等。格式如下:

字符对应ASCII值

a 97

b 98

知识点:了解字符和ASCII码之间的关系,数据类型的转换方式。

①程序原代码。(直接粘贴在此)

#include

using namespace std;

int main()

{

char ch='a';

cout<

ch='b';

cout<

}

②解决本题的算法思路描述

通过调整输出结果的类型达到目的

③调试过程的记载(包括出现的错误,以及修改过程)

漏掉分号

3)编写程序输入三角形的三条边,计算三角形的面积并输出。

知识点:表达式的正确表示

程序原代码。(直接粘贴在此)

#include #include using namespace std; int main() {

int a,b,c; double p,s; cin>>a>>b>>c; p=(double)(a+b+c)/2; s=sqrt(p*(p-a)*(p-b)*(p-c)); cout<

解决本题的算法思路描述

计算用三边面积公式 S=√[p(p -a)(p-b)(p-c)]

③ 试过程的记载(包括出现的错误,以及修改过程)

p ,s 开始时定义类型错误。

4)从键盘中输入x ,n 的值,根据n

n x y )2

1(+=式子求出y 的值;请分别输入x 的值3.5和n 的值4。

知识点:学会数学函数和相应的库文件,以及实数输出格式。

程序原代码。(直接粘贴在此)

#include #include using namespace std; int main() {

double y,x,n; cin>>x>>n; y=pow(1+x/pow(2,n),n); cout<

解决本题的算法思路描述

相关主题
相关文档
最新文档