C语言实验报告Word格式.docx

上传人:b****5 文档编号:19920138 上传时间:2023-01-12 格式:DOCX 页数:26 大小:97.94KB
下载 相关 举报
C语言实验报告Word格式.docx_第1页
第1页 / 共26页
C语言实验报告Word格式.docx_第2页
第2页 / 共26页
C语言实验报告Word格式.docx_第3页
第3页 / 共26页
C语言实验报告Word格式.docx_第4页
第4页 / 共26页
C语言实验报告Word格式.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

C语言实验报告Word格式.docx

《C语言实验报告Word格式.docx》由会员分享,可在线阅读,更多相关《C语言实验报告Word格式.docx(26页珍藏版)》请在冰豆网上搜索。

C语言实验报告Word格式.docx

printf("

Welcometoyou!

\n"

);

return0;

实验结果分析

1.任务一:

请分别记录在安装过程中的几个重要路径:

安装目录:

TC

中间文件输出目录:

C:

\TC

源文件自动保存目录:

\TC

2.任务二:

记录以下操作热键

存盘:

F2

查看userscreen:

Alt+F5

编辑区与信息区切换:

F6

TC屏幕最大化切换:

Alt+Enter

块拷贝:

定义一个块Ctrl+KBCtrl+KK复制Ctrl+KC移动Ctrl+KV

3.请记录你在编译过程中出现的错误提示,分析错误的原因,并改正。

Undefinedsymbol’y’infunctionmain在开始加inty

Statementmissing;

infunctionmain句末少加分号

Possibleuse‘x’beforedefinitioninfunctionmain在scanf语句中少加了&

Unabletoopenincludefile#include<

输写不正确

实验报告

(二)

简单C程序

2009年9月30日评阅成绩:

1.了解C程序的基本框架,能够编写简单C程序。

2.掌握算术表达式和赋值表达式的使用。

能够正确调用数学库函数。

3.掌握输入输出函数的使用。

4.掌握条件表达式的书写。

使用if语句计算分段函数。

5.使用for语句的使用。

6.理解程序调试的思想,能找出并改正C程序中语法错误,能掌握简单的单步调试逻辑错误的方法。

7.理解程序调试的思想,能掌握简单断点调试逻辑错误的方法。

任务一

 /*编程题*/

编制要求:

(1)定义一个符号常量表示圆周率。

(2)在main函数中输入圆半径和圆柱高。

分别求圆周长、圆面积、圆球表面积,圆球体积、圆柱体积。

并输出计算结果。

/*源程序清单*/

#include<

#definePI3.1415

doubler,h,c,s1,s2,v1,v2;

\nr=\n"

scanf("

%lf"

&

r);

h=\n"

h);

c=2.0*PI*r;

s1=PI*r*r;

s2=4.0*PI*r*r;

v1=4.0*PI*r*r*r/3.0;

v2=PI*r*r*h;

c=%f\ns1=%f\ns2=%f\nv1=%f\nv2=%f\n"

c,s1,s2,v1,v2);

2.调试要求:

(1)单步执行程序

(2)添加watch监视变量,监视在子函数中的局部变量的实时数据。

任务二

电费计算:

见习题2第2题

doublemoney,x;

\nx=\n"

x);

if(x<

=50){

money=0.53*50;

else{

money=0.53*50+0.58*(x-50);

money);

(1)单步执行程序添加watch监视变量

(2)监视在子函数中的局部变量的实时数据。

3.测试用例及运行结果

X=1526.500000

X=5026.500000

X=6032.300000

任务三

 查找最大值:

程序功能描述:

输入10个数,查找并打印出最大值。

提示:

在程序中应用用到以下三个变量:

(1)counter:

从1到10的计数器,用于记录已输入的数据个数。

(2)number:

当前输入的数据

(3)largest:

目前找到的最大值。

intmain(void)

intcounter,largest,number;

Enternumber:

"

%d"

largest);

for(counter=2;

counter<

=10;

counter++)

number);

if(number>

largest){

largest=number;

largest=%d"

largest);

2.调试要求:

(1)在循环体中设置断点

(2)添加watch监视变量,监视在子函数中的局部变量的实时数据。

1.float型数据的有效数字有几位?

6位如何控制float型数据的输出位数%.af其中a为所要保留的位数

2.你如何考虑有分支语句的测试用例的设计?

3.思考题:

在你的所写任务三的程序执行时,输入下面第二行的10个整数数据,请问最大值是第几个。

第二个

1

2

3

4

5

6

7

8

9

10

29

67

12

42

51

34

63

23

如果要想使最大值为第8个数,应如何修改你的程序。

(请增加一个变量,记录最大值的序号)

intmain()

intcounter,largest,number,index;

printf("

number="

index=1;

=largest)

index=counter;

largest=%d,%d"

largest,index);

实验报告(三)

函数结构

2009年10月14日评阅成绩:

实验目的

1.掌握库函数的使用。

2.了解函数的定义和调用。

3.了解C程序书写风格

任务一 

编写一个C程序,输入a,b,c3个值,输出其中最大者

要求:

(1)编写调用子函数intmax(intx,inty),返回两个数中较大值,在main函数中调用max函数完成3个数的比较。

(2)程序运行有良好的用户提示,每次运行先清屏(clrscr())。

(3)运行结束后,按任意键返回(getch())。

(4)源程序的书写符合良好的编程风格

--必要的注释

--用空行区分各个功能区域

--用缩进体现层次

intmax(intx,inty);

{inta,b,c,m;

\na="

a);

\nb="

b);

\nc="

c);

m=max(a,b);

m=max(m,c);

max=%d"

m);

intmax(intx,inty)

{intm;

if(x>

y)

m=x;

else

m=y;

returnm;

}_

 

2.测试用例及运行结果

a=5b=4c=6max=6

a=15b=20c=30max=30

a=50b=2c=32max=50

任务二

在任务一的基础上增加一个函数intgetMaxOfabc(intx,inty,intz),调用子函数intmax(intx,inty)完成3个数的比较。

在main函数中输入三个数,并调用getMaxOfabc函数求最大值输出。

intgetMaxOfabc(intx,inty,intz);

m=getMaxOfabc(a,b,c);

intgetMaxOfabc(intx,inty,intz)

intm;

m=max(x,y);

m=max(m,z);

改写实验二的任务一

改编制要求:

(1)自定义求圆周长、圆面积、圆球表面积,圆球体积、圆柱体积的函数。

(2)在main函数中调用自定义函数分别求圆周长、圆面积、圆球表面积,圆球体积、圆柱体积

doublegets1(doubler);

doublegetPerimeter(doubler);

doublegets2(doubler);

doublegetv1(doubler);

doublegetv2(doubler,doubleh);

doubler,h,perimeter,s1,s2,v1,v2;

\nr="

\nh="

perimeter=getPerimeter(r);

s1=gets1(r);

s2=gets2(r);

v1=getv1(r);

v2=getv2(r,h);

\ns1=%f"

s1);

\ns2=%f"

s2);

\nv1=%f"

v1);

\nv2=%f"

v2);

\nperimeter=%f"

perimeter);

doublegetPerimeter(doubler)

doubleperimeter;

perimeter=2.0*PI*r;

returnperimeter;

doublegets1(doubler)

{doubles1;

s1=PI*r*r;

returns1;

doublegets2(doubler)

{doubles2;

returns2;

doublegetv1(doubler)

{doublev1;

returnv1;

doublegetv2(doubler,doubleh)

{doublev2;

returnv2;

(1)单步执行程序

/*实验中遇到的问题和解决问题的方法*/

Undefinedsymbol’r’infunctionmain在开始加intr

Possibleuse‘r’beforedefinitioninfunctionmain在scanf语句中少加了&

实验报告(四)

控制结构

2009年月日评阅成绩:

1.熟练掌握嵌套的if语句和switch语句实现多分支结构

2.掌握switch中break的使用

3.掌握DOS菜单程序的编制

4.掌握while语句的句法

5.熟悉嵌套结构的构建

6.学习自顶向下,逐步细化的分析方法,学习模块化程序的构建

修改下面程序中的4个子函数中的代码 ,能按每一部分的要求得出相应的输出。

修改只限于增加圆括号,和代码的缩进方式。

当然代码的缩进方式对程序的执行没有影响,但可增加代码的可读性。

(也可能什么修改也不要做)。

voidpaint_1(intx,inty);

voidpaint_2(intx,inty);

voidpaint_3(intx,inty);

voidpaint_4(intx,inty)

voidmain()

intx,y;

x=5,y=8;

paint_1(x,y);

paint_2(x,y);

paint_3(x,y);

y=7;

paint_4(x,y);

voidpaint_1(intx,inty)

\nsection1:

\n"

if(y==8)

if(x==5)

@@@@@\n"

#####\n"

$$$$$\n"

&

voidpaint_2(intx,inty)

\nsection2:

voidpaint_3(intx,inty)

\nsection3:

\nsection4:

if(y==8){

Section1:

假定x=5,y=8,输出为:

Section2:

Section3:

Section4:

假定x=5,y=7,输出为:

任务二运行程序,了解程序功能

1.在cmd窗口运行程序ex4_1.exe,在菜单程序中分别输入1,2,3,4,5,6,观察程序的运行结果,输入0程序结束。

2.下图为ex4_1.cpp的程序模块图,打开ex6_1.cpp,文件给出了程序的框架结构,请根据程序的运行过程,确定每一个模块的功能。

任务三编写函数,完整程序

Ex6_1.cpp中已给出了函数displayMenu和processChoice的代码。

请编写6个打印图案的程序,并在main函数中调用函数displayMenu和processChoice完成菜单程序,使程序的运行过程与所给的ex6_1.exe一致。

运行过程见下一组图

conio.h>

voidprocessChoice(intindex);

voiddisplayMenu();

voidprintStar_1();

voidprintStar_2();

voidprintStar_3();

voidprintStar_4();

voidprintStar_5();

voidprintStar_6();

{intchoice;

while

(1)

clrscr();

displayMenu();

scanf("

choice);

if(!

choice)break;

else

processChoice(choice);

voiddisplayMenu()

clrscr();

**************************\n"

*1.patternone*\n"

*2.patterntwo*\n"

*3.patternthree*\n"

*4.patternfour*\n"

*5.patternfive*\n"

*6.patternsix*\n"

*0.exit*\n"

pleasechoice(0,1,2,3,4,5,6):

voidprocessChoice(intindex)

{switch(index)

{case1:

printStar_1();

break;

case2:

printStar_2();

case3:

printStar_3();

case4:

printStar_4();

case5:

printStar_5();

case6:

printStar_6();

}

voidprintStar_1()

{inti,j;

printf("

patternone\n"

for(i=1;

i<

i++)

{for(j=1;

j<

=i;

j++)

*"

getch();

voidprintStar_2()

patterntwo\n"

for(i=10;

i>

0;

i--)

{for(j=1;

voidprintStar_3()

patternthree\n"

for(i=1;

i;

"

for(;

voidprintStar_4()

patternfour\n"

voidprintStar_5()

patternfive\n"

{

for(j=1;

=10-i+1;

=10-i;

voidprintStar_6()

patternsix\n"

=5;

=5-i;

=2*i-1;

j

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

当前位置:首页 > 高中教育 > 数学

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

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