C语言实验报告6函数.docx

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

C语言实验报告6函数.docx

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

C语言实验报告6函数.docx

C语言实验报告6函数

学生实验报告

学号:

日期:

20140622

系别

计算机科学与技术

专业

计算机科学与技术(师)

班级

姓名

课程

名称

程序设计基础

课程

类型

专业课

学时数

2

实验

名称

函数

实验目得:

掌握C语言函数得定义与调用方法;

理解C语言函数得调用过程;

学会编写函数构造程序、。

实验要求:

实验后写实验报告。

1.实验内容:

1.阅读下列程序并执行,理解程序得功能并记录程序运行结果

#include"stdio、h"

intx,y;

voidnum

{

inta=15,b=10;

x=ab;

y=a+b;

}

voidmain

{

inta=7,b=5;

x=a+b;

y=ab;

num;

printf("%d,%d\n",x,y);

}

运行结果:

2、阅读下面程序并执行,理解程序并记录程序运行结果

#include"stdio、h"

voidmain

{

inta=2,i;

for(i=0;i<3;i++)printf("%4d",f(a));

}

f(inta)

{

intb=0;

intc=3;

b++;

c++;

return(a+b+c);

}

运行结果:

3、调试运行教材146页156页例7、1例7、3页程序,理解并掌握程序改进所采用得程序设计技术。

7、1题

#include"stdio、h"

/*函数功能:

用迭代法计算n!

*/

longFact(intn)

{

inti;

longresult=1;

for(i=2;i<=n;i++)

{

result*=i;

}

returnresult;

}

intmain

{

intm;

longret;

printf("Inputm:

");

scanf("%d",&m);

ret=Fact(m);

printf("%d!

=%ld\n",m,ret);

return0;

}

运行结果:

7、2题

#include"stdio、h"

longFact(intn);

intmain

{

intm;

longret;

printf("Inputm:

");

scanf("%d",&m);

ret=Fact(m);

if(ret==1)

printf("Inputdateerror!

\n");

else

printf("%d!

=%ld\n",m,ret);

return0;

}

/*函数功能:

用迭代法计算n!

当您n>=0时,返回n!

得值;否则返回1*/

longFact(intn)

{

inti;

longresult=1;

if(n<0)

{

return1;

}

else

{

for(i=2;i<=n;i++)

result*=i;

returnresult;

}

}

运行结果:

7、3题

#include"stdio、h"

unsignedlongFact(unsignedintn);

intmain

{

intm;

do{

printf("Inputm(m>0):

");

scanf("%d",&m);

}while(m<0);/*增加对输入数据得限制,确保输入得数据未无符号整数*/

printf("%d!

=%lu\n",m,Fact(m));/*无符号长整形格式输出阶乘值*/

return0;

}

/*函数功能:

用迭代法计算无符号整型变量n得阶乘*/

unsignedlongFact(unsignedintn)

{

unsignedinti;

unsignedlongresult=1;

for(i=2;i<=n;i++)

result*=i;

returnresult;

}

运行结果;

4、编程设计教材186页7、7题

(1)、

(2),并在VCC++环境下运行、

7、7

(1)穷举法:

源程序

#include"stdio、h"

intGcd(inta,intb);/*函数声明*/

intmain

{

inta,b,t;

printf("Inputtwonumbers\n:

");

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

printf("%d\n",Gcd(a,b));/*调用函数*/

}

/*计算量个正整数得最大公约数*/

intGcd(inta,intb)

{

intt,c;

if(a

{

c=a;

}

else

{

c=b;

}

for(t=c;;t)/*最大数不会比这两个数得最小值大*/

{

a%t==0;

b%t==0;

if(a%t==0&&b%t==0)

returnt;

}

}

在VCC++环境下运行:

运行结果:

(2)欧几里得算法

#include"stdio、h"

intGcd(inta,intb);/*函数声明*/

intmain

{

inta,b;

printf("Inputtwonumbers(a>b):

");

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

do{

printf("Error!

\n");

printf("Inputtwonumbers(a>b):

");

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

}while(a<=0||b<=0||a

printf("%d\n",Gcd(a,b));/*调用函数*/

}

/*函数功能:

计算量个正整数得最大公约数*/

intGcd(inta,intb)

{

intr;

intc;

r=a%b;

if(r==0)

returnb;

else

while(r!

=0)

{

c=b;/*保存当前得除数*/

b=r;/*将当前得余数复制给下一次运算得除数*/

a=c;/*将当前得除数福中给下一次运算得被除数*/

r=a%b;/*记录当前得余数*/

}

returnb;/*输出两数得最大公约数*/

}

在VCC++环境下运行;

实验总结:

通过本节实验课,进一步熟悉了函数得基本用法与功能,初步学会了函数得调用方法,并且掌握了用迭代法编程计算一些简单得实际问题。

函数就是程序得基本单元,要学好这门课就要从基本工作做起,学好每一块语言知识,慢慢总结经验,掌握更多得编程技巧。

成绩

批阅老师

批阅日期

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

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

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

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