C语言实验程序、总结 实验六 函数(★)

时间:2019-05-12 13:41:53下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《C语言实验程序、总结 实验六 函数》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《C语言实验程序、总结 实验六 函数》。

第一篇:C语言实验程序、总结 实验六 函数

一 实验目的 掌握定义函数的方法;

实验六 函数 掌握函数实参与形参的对应关系以及“值传递”的方式; 3 掌握函数递归调用的方法;

二 实验内容 编写两个函数,分别求两个正整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果,两个正整数由键盘输入。

【提示】设有两个正整数m和n ⑴ 实验四介绍了求最大公约数的算法,也可以用递归的方法求最大公约数。设hcf(int m,int n)是用来求m和n的最大公约数h函数,k=m%n,则:

hcf(n,k)hnk0k0⑵ 若最大公约数为h,则最小公倍数为:m*n/h。

实验时,完成以下两个函数的定义,使之和主程序构成完整的程序,实现题目的要求。#include int hcf(int m,int n)/* 求最大公约数的函数 */ { „„ } int lcd(int m,int n,int h)/* 求最小公倍数的函数 */ { 返回最小公倍数; } main(){ int m,n,h,l;printf(“请输入两个正整数m、n:”);scanf(“%d,%d”,&m,&n);h=hcf(m,n);printf(“%d和%d的最大公约数是:%dn”,m,n,h);l=lcd(m,n,h);printf(“%d和%d的最小公倍数是:%dn”,m,n,l);} 程序调试通过后,用m=350、n=125和m=96、n=64两组数据运行程序,记录程序的输出。

完整程序如下: #include int hcf(int m,int n)/* 求最大公约数的函数 */ { int temp,r;if(m

int lcd(int m,int n,int h)/* 求最小公倍数的函数 */ { return(m*n/h);} main(){ int m,n,h,l;printf(“请输入两个正整数m、n:”);scanf(“%d,%d”,&m,&n);h=hcf(m,n);printf(“%d和%d的最大公约数是:%dn”,m,n,h);l=lcd(m,n,h);printf(“%d和%d的最小公倍数是:%dn”,m,n,l);}

运行结果如下图: 编写求n!的函数f(int n),在主函数中输入两个整数m、n,然后调用函数求:

Cnmm!n!(m-n)!【注意】函数f的类型应用long或double。

程序如下:

#include long f(int n){ if(n)return n*jc(n-1);else return 1;}

void main(){ long m,n,c;printf(“请输入两个整数”);

scanf(“%d,%d”,&m,&n);c=f(c);m=m*(m-1)n=n*(n-1)c=m/(n*c)printf(“组合为%dn”,c);

} 有一个字符串,输入一个字符,编写函数dstr将输入的指定字符从字符串中删去。#include void dstr(char str[],char ch){ } main(){ char str[80],ch;printf(“请输入字符串:”);gets(str);printf(“请输入欲删除的字符:”);scanf(“%c”,&ch);dstr(str,c);printf(“删除指定字符后的结果:%sn”,str);}

完整程序如下: #include void enter_string(char str[80]){ printf(“请输入字符串:”);gets(str);/* 从键盘输入字符串到数组str */ } void delete_string(char str[],char ch){ int i,j;for(i=j=0;str[i]!='';i++)if(str[i]!=ch)str[j++]=str[i];str[j]='';} void print_string(char str[]){ printf(“删除指定字符后的结果:%sn”,str);} void main(){ char c;char str[80];enter_string(str);printf(“请输入欲删除的字符:”);scanf(“%c”,&c);delete_string(str,c);print_string(str);}

实验总结:本次实验主要掌握定义函数的方法,掌握函数实参与形参的对应关系以及“值传递”的方式;掌握函数的嵌套调用和递归调用的方法;通过本次实验对函数和函数的调用有了更深的了解,加深对函数的认识。

第二篇:实验六函数实验报告

计算机科学与工程学院

天津理工大学

计算机 科学 与工程 学院

实验报告

2018

2019

学年

第 一

学期

课程名称 程序设计(C 语言)

学号

学生姓名

班级 级

专业 计算机科学与技术(合作)

实验地点 7-21 实验项目 函数 实验 时间

批改意见

成绩

教师签字:

实验(一))

实验名称

函数 开发 环境 PC 机,windows7 操作系统

开发工具 VC6.0 实验目的(1 1)掌握函数的定义与调用的方法 ;

(2 2)

参数传递机制、函数的嵌套调用和递归调用

(3 3)学会利用自定义函数进行模块化程序设计的方法 ;的 多文件结构的 C++ 程序的编译、调试和运行 实验 要求 认真完成实验内容,编写程序代码; 要求程序正确无误,并输出合理的实验结果; 书写并提交实验报告。

实验 内容(应包括实验题目、代码实现、编译、运行结果等,也可给出程序的算法描述、重点程序语句的 注释 等。

。))

1.一个素数,当它的数字位置对换以后仍为素数,这样的数称为绝对素数。编写一个程序,求出所有的两位绝对素数。

2.写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,

并输出结果,两个整数由键盘输入。

3.求阶乘问题。要求定义函数 fact(n)计算 n!,主函数中输入一个正整数 n,输出 n!,要求函数 数 fact(n)分别采用递归和非递归两种形式实现。

(1)递归版:主要利用递推公式 fact(n)= n * fact(n-1),并注意终止条件。

(2)非递归版:

主要利用单重循环实现。

心得体会:

求方程 0 ax2+bx+c=0 的根,用三个函数分别求当 b b2 2--c4ac 大于 0 0、等于 0 0 和小于 0 0 时的根,并输出结果。

在做这道题的时候 我遇到了问题,通过自己的思考以及与老师的交流,改正了错误。函数。

这部分,一开始我学的不清楚,通过不断练习,思考,改错,我越发理解函数,熟悉函数。

第三篇:C语言实验六 数组

实验六 数组

实验目的:

1、通过实验掌握数组在内存中的存放形式;

2、掌握一维数组和二维数组的定义和数组元素的引用;

3、掌握各种字符串库函数的用法。

实验内容:

1、教材P138页第4题。

2、教材P138页第10题。

3、输入10个整数,将这10个整数按升序排列输出,并且奇数在前,偶数在后。

实验原理、步骤与分析:

【要求】每个实验内容都要先写出其实现的基本原理,再写出实验步骤,最后根据每个实验内容的实验结果进行分析说明。

第四篇:实验六

课程名称:

SQL

Server

数据库基础

任课教师:

池宗琳

实验名称:

视图、规则和索引的使用

年级、专业:

2018级电子信息工程

号:

20181060199

名:

苟诚

日期:

2019

云南大学

信息学院

一、实验目的1、掌握视图的创建、修改和删除操作

2、掌握规则的创建、绑定、解除和删除操作

3、掌握索引的创建、修改和删除操作

二、实验内容、方法、步骤和实验结果与分析

(一)视图

1.创建视图view1,使该视图中包含HrSystem数据库中一个员工的明细信息(视图中的列名全部使用中文)。

use

HrSystem

go

create

view

view1

as

select

e.Emp_id

as

员工编号,e.Emp_name

as

员工姓名,e.Sex

as

性别,e.Title

as

职务,e.Wage

as

工资,e.IdCard

as

身份证,d.Dep_id

as

部门编号

from

Employees

e

inner

join

Departments

d

on

e.Dep_id

=d.Dep_id

2.显示第1题创建的视图view1的所有数据。

use

HrSystem

go

select

all

*

from

view1

go

3.利用第1题创建的视图view1,列出视图中所有姓李的员工的所有信息。

use

HrSystem

go

select

all

*

from

view1

where

员工姓名='李%'

go

4.使用ALTER

VIEW修改第1题创建的视图view1,使其只包含所有员工的姓名、职务和部门三列(视图中的列名全部使用中文)。

use

HrSystem

go

alter

view

view1

as

select

e.Emp_name

as

员工姓名,e.Title

as

职务,d.Dep_name

as

部门名字

from

Employees

e

inner

join

Departments

d

on

e.Dep_id

=d.Dep_id

go

5.删除以上创建的视图view1。

use

HrSystem

go

drop

view

view1

go

(一)规则

以下操作均针对数据库HrSystem。

1.使用CREATE

RULE语句创建规则SexRule,指定变量@sex的取值只能为‘男’或‘女’。

use

HrSystem

go

create

rule

SexRule

as

@sex

in

('男','女')

go

2.完成后,在对象资源管理器中展开数据库HrSystem->“可编程性”->“规则”,确认可以看到规则SexRule。

3.使用存储过程sp_bindrule可以将规则SexRule绑定到表Employees的列Sex上。

use

Hrsystem

go

exec

sp_bindrule

'SexRule','Employees.Sex'

go

4.执行下面的INSERT语句,向表Employees中插入一条记录。

use

Hrsystem

go

insert

into

Employees(Emp_name,Sex,Title,Wage,IdCard,Dep_id)

values('小李','无','职员',10000,'110123xxxx',1)

go

确认是否可以成功执行INSERT语句,为什么?

答:不可以,因为插入的记录中Sex的值与创建的规则发生冲突。

5.使用存储过程sp_unbindrule取消表Employees的列Sex上绑定的规则。成功后再执行第4步中的INSERT语句,确认是否可以成功执行INSERT语句,为什么?

use

Hrsystem

go

exec

sp_unbindrule

'Employees.Sex'

go

use

Hrsystem

go

insert

into

Employees(Emp_name,Sex,Title,Wage,IdCard,Dep_id)

values('小李','无','职员',10000,'110123xxxx',1)

go

可以,因为表列与规则之间的绑定已经解除,列Sex与规则SexRule就不会发生冲突

6.使用DROP

RULE删除规则SexRule。完成后,在对象资源管理器中展开数据库HrSystem->“可编程性”->“规则”,确认是否可以看到规则SexRule。

USE

HrSystem

go

DROP

RULE

SexRule

go

(二)索引

执行以下语句,利用数据库HrSystem的表Employees产生一个新表emp,该新表包含了表Employees中的所有记录。

use

Hrsystem

select

*

into

emp

from

Employees

1.在新表emp上建立一个唯一聚集索引,索引名称为name_ind,索引字段为Emp_name。

use

Hrsystem

go

create

unique

nonclustered

index

[name_ind]

on

[dbo].[emp](Emp_name)

go

2.使用SQL

Server

Management

Studio查看索引name_ind的属性信息。

3.使用DROP

INDEX语句删除第1题创建的索引name_ind。

use

Hrsystem

drop

index

emp.name_ind

三、实验小结【对自己而言,通过实验学到的关键技术方法】

通过这次实验,我学会使用和建立视图,规则和索引,也学会了检查建立查询时候的一些错误和修改方法。通过了这次实验,我又进一步学会了对于SQL数据库的一些基本操作,下来课后,我也要进一步完善自己对于SQL语句的熟练程度,更有助于自己对SQL的学习。

第五篇:C语言实验程序、总结 实验七 指针

一 实验目的

实验七 指针 了解指针的概念,学会定义和使用指针变量。2 掌握指针、变量和数组的关系及使用方法。3 学会使用指向函数的指针变量。

二 实验内容 编写函数fun(float *sn,int n),其功能是:根据以下公式计算s,计算结果通过形参sn传回;n通过实参传入,n的值大于等于0。上机运行并记录输入输出(主函数已给出)。

s11111 3572n1fun(float *sn,int n){ 定义变量:和s,通项w,符号f,循环控制变量i; /* 其中s、f要初始化 */ 循环求累加和s { 改变符号;/* 由负变正或由正变负 */ 求通项w;累加:s+=w;} 形参指针变量sn赋值;/* 通过形参sn传回累加和s */ } main(){ float s;int n;printf(“n=”);scanf(“%d”,&n);fun(&s,n);printf(“s=%fn”,s);}

完整程序如下:

#include void fun(float *sn,int n){ float s=0.0,w,f=-1.0;int i=0;for(i=0;i<=n;i++);{ f=(-1)*f;w=f/(2*i+1);s+=w;} *sn =s;} main(){ float s;int n;printf(“n=”);scanf(“%d”,&n);fun(&s,n);printf(“s=%fn”,s);}

输出结果如下图: 想使指针变量pt1指向a和b中的大者,pt2指向小者,以下程序能否实现此目的? swap(int *p1,int *p2){ int *p;p=p1;p1=p2;p2=p } main(){ int a,b;int *pt1,*pt2;scanf(“%d,%d”,&a,&b);pt1=&a;pt2=&b;if(a

上机调试此程序。如果不能实现题目要求,指出原因并修改之。

子函数swap改成下面程序方可实现目的,主函数不变: swap(int *p1,int *p2){ int p;p=*p1;*p1=*p2;*p2=p;} 下面的程序用来实现将一个3×3的矩阵转置。#include void tranf(int(*p)[3]){ int t,i,j;for(i=0;i<3;i++)for(j=0;j

程序修改如下: #include void tranf(int(*p)[N]){ int t,i,j;for(i=0;i<3;i++)for(j=0;j char *strc(char *s1,char *s2){ char *p=s1;while(*s2!='')*p++=*s2++;return s1;} main(){ char s1[30]=“computer ok!”,s2[]=“language”,*pt;pt=strc(s1,s2);printf(“%sn”,pt);/* 第10行 */ } 将程序第10行中的%s改成%c,应该怎样修改?(只允许修改第10行)

应改为: printf(“%cn”,*pt++);

实验总结:本次实验主要掌握指针的概念,学会定义和使用指针变量,掌握指针、变量和数组的关系及使用方法,学会使用指向函数的指针变量,通过本次实验,很好的了解了指针的使用,加深了对指针的认识。

下载C语言实验程序、总结 实验六 函数(★)word格式文档
下载C语言实验程序、总结 实验六 函数(★).doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    程序实验举例及总结

    一、实验内容 1.在屏幕上显示一个字符的源程序: DATAS SEGMENT STRING DB'HELLO!','$'ORG100H DATAS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS START: MOV AX,DATAS MOV......

    实验六教案

    国家二级C机试培训资料 第六课 第六课 教学内容:一维字符数组大小写转换及字符与数字转换类算法 教学目的:掌握一维字符数组大小写转换及字符与数字转换类算法的考题 教学内......

    生态学实验六

    实验六、环境条件对叶片形态结构的影响(综合实验) 一、实验目的 综合实验的目的旨在让学生独立开展实验设计,完成所设计的实验内容,分析实验结果。培养学生独立开展科学研究能力......

    六、设计实验

    一、东城37.(5分)当前我国的标准化考试中,计算机只能识读2B铅笔笔迹,笔迹过浓或过淡都会造成计算机识读的失败或错误。铅笔芯是由石墨和粘土按一定比例混合制成的,不同类型的铅笔......

    操作系统实验六

    void * my_malloc(unsigned int size){ // int i; // Linker *p=first; // for(i=size;inext; // if(i>HEAP_SIZE)//空?间?不?足Á? //return NULL; // if(i==HEAP_SIZE){ /......

    函数发生器实验及设计

    电子信息工程学院 班级:电子信息一班 姓名:何 胜 学号:201105431551 函数信号发生器 一、设计任务 函数发生器的设计 二、设计条件 设计基于学校实验室 三、设计要求 1.电路......

    实验七函数实验报告范文

    实验七 函数 一、实验目的 1.掌握定义函数的方法。 2.掌握函数实参及形参的对应关系以及“值传递”方式。 3.掌握函数的嵌套调用和递归调用的方法。 4.掌握全局变量和局部变量,动......

    实验一 语言实验

    微机原理与接口技术实验(1) 实验一 汇编语言程序上机过程 1 实验二 屏幕字符显示程序 3 实验三 音乐程序 5 实验四 键盘和窗口程序 7 实验五 活动图形显示程序 9 实验六 磁盘......