77范文网 - 专业文章范例文档资料分享平台

C语言程序实验报告--谭浩强(3)

来源:网络收集 时间:2019-02-16 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

实验7

1. 实验目的与要求

(1)测试关系表达式和逻辑表达式的意义和取值。 (2)测试关系运算符和逻辑运算符的优先级和结合性。 (3)掌握逻辑运算的基本规律。

2. 实验准备

(1)编写一个用于测试关系表达式意义和取值的程序。 举例:

#include int main() { int a=5,b=5,c=5; printf(\

printf(\}

运行结果;

其中运行结果中的“1”和“0”分别表示程序中运算的正确与错误。 (2) 阅读下面程序并分析其运行结果

将分析结果与上机结果进行比较 #include int main() {

float x;

scanf(―‖,&x);

if(x=1.23) printf(―OK!‖); }

分析结果:有输入表达式可知,当从键盘输入数据1.23 时,运行输出“OK!”。 11

运行结果:

与分析结果一致!

(3)编写一个用于测试逻辑表达式的意义和取值程序 int a=3,b=5,c=5;

printf(―%d,%d,%d,%d‖,a==b&&a===c,a!=b&&a!=c,a>=b&&a>=c,a<=b&&a<=c); printf(―%d,%d,%d,%d‖,!(a==b),!(a>=b),!(a>=c),!(a<=b)); 预先写出程序运行结果,以便与上机结果进行比较。 分析结果:0,1,0,11,1,1,0

运行结果:

(4) 编写程序来测试下列逻辑表达式的值

预先写出程序的执行结果,以便与上级验证的结果进行比较。 (5)分析下面程序段的执行结果并验证自己所做推断的程序 int a=3,b=5,c=6;

printf(\ printf(\推断:不会输出“OK!” 输出: 10

运行结果:

实验8

1.实验目的与要求

(1)掌握分支程序的基本结构。

(2)掌握分支程序的测试与调试方法。 2.实验准备

(1)观察图3.1所示分支算法。 图见书

要求:编写一个 C语言程序,要求使用上述分支结构,并使其能接受由键盘输入的

a,b,x。 编写程序如下: #include main() {

12

int a,b,x;

scanf(\if(a>1 && b==0) x=x*a; if(a==2 || x>1) x=x+2;

printf(\}

运行结果:能够达到要求!

(2)语句覆盖测试

设计一组a,b,x,是程序中的所有语句都能至少执行一遍,目的是测试这些语句能否正确执行。要求这组数据量最少。 编写程序如下: #include main() {

int a,b,x;

scanf(\a=a+1; b=a+b; x=a*b;

printf(\}

运行结果:每个语句都能够正常运行!

(3)分支覆盖测试

设计一组a,b,x,使程序中的每个分支都能至少执行一遍,目的是测试这些分支能否正确执行。要求这组数据量最少。 编写程序如下:、 #include main() {

int a,b,x;

scanf(\if(a>1 && b==0) x=x*a; if(a==2 || x>1) x=x+2;

13

printf(\}

运行结果:每个分支能够正确执行! (4) 条件覆盖测试

设计一组a,b,x,使程序中的每个条件都能至少执行一遍,目的是测试这些条件能否正确执行。要求这组数据量最少。

编写程序如下: #include main() {

int a,b,x;

scanf(\if(a>1 && b==0) x=x*a; if(a==2 || x>1) x=x+2;

printf(\}

运行结果:每个条件都正确执行了!(5)修改上面的程序以使操作者知道这些语句、分支或条件已被执行 提示:在恰当的位置插入输出语句。 修改程序如下: #include main() {

int a,b,x;

scanf(\if(a>1 && b==0) x=x*a;

printf(\if(a==2 || x>1) x=x+2;

printf(\

printf(\}

14

运行结果:由运行结果知这些语句、分支或

条件已被执行!

(5) 进一步的测试问题

从键盘输入三个数,用以代表3条线段的长度。先编写一个程序,判断由着3条线段所组成的三角形的类型——不等边三角形、等腰三角形、等边三角形、直角三角形或不能构成三角形。画出这个问题的流程图,设计程序,并未该程序分别设计语句覆盖、分支覆盖、条件覆盖的测试用例。为检测测试用例的好坏,可人为的设置一些错误。 编写程序如下:

#include main() {

int a,b,c,max,m,x,y,z;

scanf(\max=b;

if(a>=max) max=a; if(c>=max) {max=c;} m=a+b+c-max; x=a^2+b^2; y=a^2+c^2; z=b^2+c^2;

if((m>max)&&(a!=0) && (b!=0) && (c!=0)) {

if((x==(c^2))||(y==(b^2))||(z==(a^2))) printf(\此三角形为直角三角形!\ if(a==b==c)

printf(\此三角形为等边三角形!\ if(a!=b && a!=c && b!=c ) printf(\此三角形为不等边三角形!\

if(((a==b)&&(a!=c))||((a==c)&&(a!=b))||((b==c)&&(b!=a))) printf(\此三角形等腰三角形\}

else printf(\不能构成三角形!\}

运行结果:

15

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库C语言程序实验报告--谭浩强(3)在线全文阅读。

C语言程序实验报告--谭浩强(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/475373.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: