顺序结构程序设计C语言程序实验报告.docx

上传人:b****7 文档编号:10511717 上传时间:2023-02-17 格式:DOCX 页数:11 大小:17.17KB
下载 相关 举报
顺序结构程序设计C语言程序实验报告.docx_第1页
第1页 / 共11页
顺序结构程序设计C语言程序实验报告.docx_第2页
第2页 / 共11页
顺序结构程序设计C语言程序实验报告.docx_第3页
第3页 / 共11页
顺序结构程序设计C语言程序实验报告.docx_第4页
第4页 / 共11页
顺序结构程序设计C语言程序实验报告.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

顺序结构程序设计C语言程序实验报告.docx

《顺序结构程序设计C语言程序实验报告.docx》由会员分享,可在线阅读,更多相关《顺序结构程序设计C语言程序实验报告.docx(11页珍藏版)》请在冰豆网上搜索。

顺序结构程序设计C语言程序实验报告.docx

顺序结构程序设计C语言程序实验报告

安徽工程大学

高级语言程序设计实验报告

班级姓名同组者/成绩

日期2019.09.30指导教师

实验名称顺序结构程序设计

一、实验目的

1.掌握数据的输入/输出方法,能正确使用有关格式转换符。

2.掌握顺序结构程序中语句的执行过程。

3.掌握顺序结构程序的设计方法。

二、实验内容

1.P47页第一个程序的作用是依次输入2个整数,计算并输出这2个整数之差。

(1)分析程序,若运行时输出:

200,160<回车>,预期结果是多少?

(2)上机运行该程序,查看程序运行结果是否符合题目要求。

如果不符合,请分析原因并修改程序,直至符合要求为止。

2.P47页第二个程序用于实现按下列公式计算并输出s1和s2的值:

s1=3/(a+b)2,s2=ab/(a+b)3,其中a,b为整型数据。

(1)根据题意修改上述程序,并进行调试,直到正确为止。

(2)在

(1)的基础上,将“scanf("%d,%d",&a,&b);”改为“scanf("%d%d",&a,&b);”后再编译、连接、运行。

3.分析P47页第三个程序,写出预期结果,然后输入调试,查看运行结果与预期结果是否一致,并分析其原因。

4.编程实现下列功能并上机调试运行。

(1)设圆半径为r,求圆周长和面积。

要求用scanf函数输入数据,输出时取小数点后两位。

(2)输入一个3位十进制整数,分别输出百位、十位以及个位上的数。

(3)从键盘输入一个带两位小数的实数,将其整数部分和小数部分分离后输出。

(4)用getchar函数读入两个字符,然后分别用putchar和printf函数输出这两个字符。

*思考题:

5.若实验内容1的程序改为P48页第一个程序段,运行该程序,输入5,3,查看程序运行结果是否与自己预测的结果一致,并分析原因。

6.若实验内容1的程序改为P48页第二个程序段,运行该程序,输入5,3,查看程序运行结果是否与自己预测的结果一致,并分析原因。

7.在实验内容2的基础上若把程序第7行语句“s=3/(a+b)*(a+b)”改为“s=3.0/[(a+b)*(a+b)],”然后编译、连接和运行。

查看会出现什么结果,并分析原因。

三、算法流程图或实验步骤(可根据需要增删、修改)

1.

(1)算法流程图:

原程序:

#include

voidmain()

{

floata,b,c;

printf("inputa,b:

");

scanf("%d,%d",&a,&b);

c=a-b;

printf("c=%d\n",c);

}

修改后:

#include

voidmain()

{

floata,b,c;

printf("inputa,b:

");

scanf("%f,%f",&a,&b);

c=a-b;

printf("c=%f\n",c);

}

或者

#include

voidmain()

{

inta,b,c;

printf("inputa,b:

");

scanf("%d,%d",&a,&b);

c=a-b;

printf("c=%d\n",c);

}

(2)实验步骤:

Files→New→Files→C++sourceFile→文件名:

program2011.c→位置:

E:

\123\→确定→输入代码→Buid→是→有错误→将float更换成int或者将所有的%d都更换成%f→确认0error(s)0warning(s)后→BuidExecute→查看运行结果

2.

(1)算法流程图:

修改后:

#include

#include

voidmain()

{

inta,b;

floats1,s2;

scanf("%d,%d",&a,&b);

s1=3/((a+b)*(a+b));

s2=a*b/pow((a+b),3);

printf("s1=%f,s2=%f\n",s1,s2);

}

替换后:

#include

#include

voidmain()

{

inta,b;

floats1,s2;

scanf("%d%d",&a,&b);

s1=3/((a+b)*(a+b));

s2=a*b/pow((a+b),3);

printf("s1=%f,s2=%f\n",s1,s2);

}

(2)实验步骤:

Files→CloseWorkspace→Files→New→Files→C++sourceFile→文件名:

program2021.c→位置:

E:

\123\→确定→输入代码→Buid→是→有错误→添加#include→(a+b)*(a+b)更换成((a+b)*(a+b))→将(a+b)^3改成pow((a+b),3)→确认0error(s)0warning(s)后→BuidExecute→查看运行结果

3.

(1)算法流程图:

#include"stdio.h"

voidmain()

{

shorta=-1;

unsignedshortb=65534;

printf("%d,%o,%x,%u\n",a,a,a,a);

printf("b=%d\n",b);

}

(2)实验步骤:

Files→CloseWorkspace→Files→New→Files→C++sourceFile→文件名:

program2031.c→位置:

E:

\123\→确定→输入代码→Buid→是→确认0error(s)0warning(s)后→BuidExecute→查看运行结果

4.(1.1)算法流程图:

#include

voidmain()

{

intr;

floats,c;

scanf("%d",&r);

s=3.14*r*r;

c=2.0*3.14*r;

printf("s=%.2f,c=%.2f",s,c);

}

(1.2)实验步骤:

Files→CloseWorkspace→Files→New→Files→C++sourceFile→文件名:

program2041.c→位置:

E:

\123\→确定→输入代码→Buid→是→确认0error(s)0warning(s)后→BuidExecute→查看运行结果

(2.1)算法流程图:

#include

intmain()

{

inta,b,c,S;

printf("请输入一个三位数\n");

scanf("%d",&S);

a=S/100;

b=(S/10)%10;

c=S%10;

printf("该三位数百位为%d,十位为%d,个位为%d\n",a,b,c);

return0;

}

(2.2)实验步骤:

Files→CloseWorkspace→Files→New→Files→C++sourceFile→文件名:

program2042.c→位置:

E:

\123\→确定→输入代码→Buid→是→确认0error(s)0warning(s)后→BuidExecute→查看运行结果

(3.1)算法流程图:

#include

intmain()

{

floats,b;

inta;

scanf("%f",&s);

a=s;

b=s-a;

printf("%.2f=%d+%.2f",s,a,b);

}

(3.2)实验步骤:

Files→CloseWorkspace→Files→New→Files→C++sourceFile→文件名:

program2043.c→位置:

E:

\123\→确定→输入代码→Buid→是→确认0error(s)0warning(s)后→BuidExecute→查看运行结果

(4.1)算法流程图:

#include

intmain()

{

charc1,c2;

printf("请输入两个字符c1,c2:

");

c1=getchar();

c2=getchar();

printf("用putchar语句输出结果为:

");

putchar(c1);

putchar(c2);

printf("\n");

printf("用printf语句输出结果为:

");

printf("%c%c\n",c1,c2);

return0;

}

(4.2)实验步骤:

Files→CloseWorkspace→Files→New→Files→C++sourceFile→文件名:

program2044.c→位置:

E:

\123\→确定→输入代码→Buid→是→确认0error(s)0warning(s)后→BuidExecute→查看运行结果

*思考题

5.

(1)算法流程图:

#include

voidmain()

{

chara,b,c;

printf("inputa,b:

");

scanf("%c,%c",&a,&b);

c=a-b;

printf("c=%d\n",c);

}

(2)实验步骤:

Files→CloseWorkspace→Files→New→Files→C++sourceFile→文件名:

program2051.c→位置:

E:

\123\→确定→输入代码→Buid→是→确认0error(s)0warning(s)后→BuidExecute→查看运行结果

6.

(1)算法流程图:

#include

voidmain()

{

chara,b,c;

printf("inputa,b:

");

scanf("%c,%c",&a,&b);

c=a+b;

printf("c=%d\n",c);

}

(2)实验步骤:

Files→CloseWorkspace→Files→New→Files→C++sourceFile→文件名:

program2061.c→位置:

E:

\123\→确定→输入代码→Buid→是→确认0error(s)0warning(s)后→BuidExecute→查看运行结果

7.

(1)算法流程图:

#include

#include

voidmain()

{

inta,b;

floats1,s2;

scanf("%d%d",&a,&b);

s1=3.0/[(a+b)*(a+b)];

s2=a*b/pow((a+b),3);

printf("s1=%f,s2=%f\n",s1,s2);

}

(2)实验步骤:

Files→CloseWorkspace→Files→New→Files→C++sourceFile→文件名:

program2071.c→位置:

E:

\123\→确定→输入代码→Buid→是→查看编译结果

四、实验结果及分析

1.

(1)c=0

(2)修改后的程序见上一子目算法流程图

2.

(1)修改后的程序见上一子目算法流程图

(2)修改后的程序见上一子目算法流程图在输入ab的值时应该有空格

3.结果是:

-1,37777777777,ffffffff,4294967295

b=65534

分析:

%d:

带符号10进制%o:

无符号8进制%x:

无符号16进制%u:

无符号10进制整数

4.程序见上一子目算法流程图

2.c=2一致

3.c=104不一致原因:

定义字符变量用的是char,则输入5和3时,参与计算的是其对应的十进制ASCⅡ码值。

5对应的十进制ASCⅡ码是53,3对应的十进制ASCⅡ码是51,所以输出a+b就等于51+53=104

4.编译时出现一个错误。

原因:

双括号应该用(())而不是用【()】

五、实验体会、问题讨论

1.定义何种类型,最后输出时对应的格式说明应该一致。

比如int型对应%d;

2.使用pow函数表示平方时,最上方应该添加#include

3..2f表示保留两位小数

 

 

教师签字:

批改日期:

说明:

1、对于每一个实验项目,实验报告(含预习)一般应包含以下内容:

第一部分——预习后的书面汇报。

其主要内容应包含:

*一、实验目的;*二、实验内容;三、算法流程图或实验步骤。

实验目的和实验内容参见实验教材或老师下发的内容。

第二部分——实验结果的书面汇报。

其主要内容应包含:

*四、实验结果及分析(含实验测试输入数据,实验运行结果截图,用简洁的语言总结实验,汇报是否达到实验目的);*五、实验体会、问题讨论(谈体会或感想、提出建议或意见、讨论与实验有关的且自己感兴趣的问题、回答课后思考题)。

第三部分——附录:

实验源程序。

提前编写好程序,实验时调试并完善。

2、实验报告写在教务处下发的实验报告纸上,每次实验完成后课代表收齐统一交给老师。

实验源程序写在单独的一个本子上,实验课时带到机房,供上机调试使用,实验教师抽查完成情况。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 初中教育 > 学科竞赛

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1