实验5函数程序设计

合集下载

实验05函数程序设计

实验05函数程序设计

计算两个复数之积(调试示例error05_1)程序填空,不要改变与输入输出有关的语句。

分别输入两个复数的实部与虚部,编程调用函数实现计算两个复数之积。

若两个复数分别为:c1=x1+(y1)i, c2=x2+(y2)i,则:c1*c2 = (x1*x2-y1*y2) + (x1*y2+x2*y1)i输入输出示例:括号内是说明输入1 2 (x1=1, y1=2)-2 3 (x2=-2, y2=3)输出product of complex is (-5.000000)+(1.000000)i#include<stdio.h>/*---------*/int main(void){float imag1, imag2, real1, real2;scanf("%f%f", &real1, &imag1);scanf("%f%f", &real2, &imag2);complex_prod(real1, imag1, real2, imag2);printf("product of complex is (%f)+(%f)i\n", result_real, result_imag);return 0;}/*---------*/使用函数求1! + 2! + … + m!(改错题error05_2)程序填空,不要改变与输入输出有关的语句。

求1! + 2! + … + 10!,要求定义并调用函数fact(n)计算 n!,函数形参 n 的类型是int,函数类型是double。

输入输出示例:括号内是说明输出:1!+2!+...+10! = 4037913.000000#include <stdio.h>double fact(int n);int main(void){int i;double sum;/*---------*/printf("1!+2!+...+10! = %f\n", sum);return 0;}/*---------*/使用函数判断数的符号程序填空,不要改变与输入输出有关的语句。

实验5—面向对象的高级程序设计

实验5—面向对象的高级程序设计

要求:
1.报告格式和内容要求:
a. 内容和格式整齐。

大标题采用黑体四号字加粗,小标题采用小四号字加粗。


文采用五号宋体,单倍行距。

b. 贴图时请剪裁到适当大小,要保证打印时可以看清,但也不要太大以免“越界”。

c. 不要在报告中写与实验无关的话,内容要有条理、完整、并能突出重点,要将
遇到的主要问题说明。

2.文件格式要求:
a. 将实验成果放入一个文件夹中,文件夹的内容包括:本实验报告、项目。

b. 文件夹以“学号姓名_S1”为文件名。

其中,S1表示这是实验1的报告,S大写,
以后的实验报告以类似方法编号顺延,注意:你的学号放在姓名前。

c. 注意:所有文件保存后关闭,然后再打包成RAR文件,以免提交的内容丢失或
打不开。

3.提交方式和时间:一周内完成。

可以将文件包发到我邮箱zcwang@。

4.主动查阅资料,坚持自己亲手完成实验,弄清每个步骤和相关原理。

C语言作业(实验报告

C语言作业(实验报告

《程序设计基础》(c语言)实践报告专业: 计算机科学与技术班级: 信息大类1303姓名: 蒋国辉学号: 1130299090教师:《程序设计基础》(c语言)课程组教师寄语课程简介《程序设计基础》是计算机相关专业的专业基础课,其目的是为了培养学生程序设计的技能,使学生掌握程序设计的基本思想和方法,培养学生用计算机解决实际问题的能力。

该课程是后续理论和实践教学的基础和重要工具,将直接影响到专业兴趣的培养,后续专业课程教学内容的实施。

课程内容本课程教学的主要内容包括:1、程序与程序设计的基本概念;算法与算法的表示;结构化程序设计方法等。

2、C语言的基本组成,C程序的基本结构;C程序的上机过程;C语言的数据类型和各类运算规则。

3、顺序程序设计;选择结构程序设计;循环控制;函数;指针;结构体和文件等。

4、C程序的模块化结构;函数的定义与调用,包括函数的递归调用;变量存储属性;工程文件的建立和使用;编译预处理;库函数简介;文件的概念;文件的建立、打开与关闭;各种文件的读写方法。

补充说明1、本课程作为一种与计算机“沟通”的语言工具,在某种程度上讲,和普通话、英语有一些类似。

对初学者而言,最好的学习方式就是在基本的语法规则框架下,不断的模仿和重复训练,最畏惧和担心的就是灵活与多变。

只有不畏惧,才能敢模仿,敢写、敢调试。

才能避免掉入语法漩涡止步不前。

2、课程共设8个单元,对于每个单元的实践内容,按照基础训练和差异化训练相结合的思想,设置了多道编程题目,同学们在每个单元可以根据实际情况,可选做3道,鼓励在有精力的情况下尽可能多练习。

3、课程的源码可以手写也可以打印出来粘贴,对程序运行结果打印粘贴。

4、单元内容即是平时基本功的训练,也可当做理论考试的复习。

实验1 顺序结构程序设计一、实验目的1. 熟悉C语言的编程环境,掌握C程序运行的一般步骤;2. 掌握C语言中数据的输入输出方法,常用输入/输出函数的使用;3. 掌握顺序结构程序设计方法,能编写简单的C程序;二、实验内容1、编写程序,输入一个四位数,打印输出其个位数、十位数、百位数和千位数。

高级语言程序设计实验

高级语言程序设计实验

创新源于实践《高级语言程序设计》课程实验教学手册高级语言程序设计课程组实验手册使用及要求实验操作是教学过程中理论联系实际的重要环节,而实验报告的撰写又是知识系统化的吸收和升华过程,因此,实验报告应该体现完整性、规范性、正确性、有效性。

现将实验报告撰写的有关内容说明如下:1、实验前按实验要求手写程序或程序填空,并走查代码,有疑问处标记,上机时在C语言集成开发环境下输入并调试手写程序,分析运行结果。

2、实验结束后填写通过后的源程序和对实验的总结。

3、通过后的源程序可以手写也可以打印粘贴。

实验项目一览表学号:姓名:成绩:实验一熟悉C语言编程环境实验目的:1.熟悉C语言编程环境(VC++、Cfree、Turboc2.0等)2.了解C程序的基本框架3.理解程序调试的思想,能找出并改正C程序中的错误实验内容:1.1 建立自己的文件夹:在磁盘上建立一个文件夹,用于存放自己的C程序1.2 编程示例在屏幕上显示一个短句“Programming in C is fun!”(教师示例,学生模仿并创新,如输出汉字、特除字符等。

学会使用编程环境VC++,启动、编辑、编译、运行、保存、关闭、打开)1.3 编程在屏幕上显示如下网格。

+---+---+| | || | |+---+---+# include <stdio.h>int main(){printf("+---+---+\n");printf("| | |\n");7printf("| | |\n");printf("+---+---+\n");return 0;1.4 调试示例改正下列程序中的错误,在屏幕上显示“Welcome to You !”。

(掌握找错、改错的方法)源程序:# include <stdio.h>int mian(void)//mian改为main{printf(Welcome to You! \n")//括号后加”getchar();return 0;}注:需要修改的语句直接在程序上标注并修改实验总结:学号:姓名:成绩:实验二用C语言编写简单程序实验目的:1.掌握算术表达式和赋值表达式的使用2.掌握基本输出函数的使用3.能够自己编程实现简单的数据处理4. 熟练掌握简单if语句使用5. 熟练掌握for语句的使用6. 掌握简单C程序的查错方法、单步调试实验内容:2.1 调试以下程序,求华氏温度对应的摄氏温度。

函数调用程序实验报告

函数调用程序实验报告

一、实验目的1. 理解函数的定义和调用过程。

2. 掌握函数参数的传递方式。

3. 学习如何使用函数实现代码的模块化。

4. 提高编程能力和逻辑思维能力。

二、实验环境1. 操作系统:Windows 102. 编程语言:Python3.83. 开发工具:PyCharm三、实验内容本次实验主要围绕函数的定义、调用和参数传递展开,具体实验内容包括:1. 定义和调用函数2. 函数参数的传递3. 递归函数的应用四、实验步骤1. 定义和调用函数(1)编写一个简单的函数,用于计算两个数的和。

```pythondef sum_of_two_numbers(a, b):return a + b# 调用函数result = sum_of_two_numbers(3, 5)print("The sum of two numbers is:", result)```(2)编写一个函数,用于计算一个数的阶乘。

```pythondef factorial(n):if n == 0:return 1else:return n factorial(n - 1)# 调用函数result = factorial(5)print("The factorial of 5 is:", result)```2. 函数参数的传递(1)使用默认参数传递函数。

```pythondef print_message(message="Hello, world!"): print(message)# 调用函数print_message()print_message("This is a custom message.") ```(2)使用可变参数传递函数。

```pythondef print_numbers(args):for num in args:print(num)# 调用函数print_numbers(1, 2, 3, 4, 5)```3. 递归函数的应用编写一个递归函数,用于计算斐波那契数列的前n项。

C语言实验五最简单的C语言程序设计

C语言实验五最简单的C语言程序设计

C语⾔实验五最简单的C语⾔程序设计实验5:最简单的C语⾔程序设计⼀、实验⽬的:(1)掌握C语⾔中使⽤最多的⼀种语句——赋值语句的使⽤⽅法。

(2)掌握各种类型数据的输⼊输出的⽅法,能正确使⽤各种格式转换符。

(3)进⼀步掌握编写程序和调试程序的⽅法。

⼆、实验内容和步骤:1、通过下⾯的程序掌握各种格式转换符的正确使⽤⽅法。

(1)输⼊以下程序:/* Note:Your choice is C IDE */# includeint main( ){int a,b;float d,e;char c1,c2;double f,g;long m,n;unsigned int p,q;a=61,b=62;c1='a';c2='b';d=3.56;e=-6.87;f=3157.890121;g=0.123456789;m=50000;n=-60000;p=32768;q=40000;printf("a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n",a,b,c1,c2,d,e);printf("f=%15.6f,g=%15.12f\nm=%1d\np=%u,q=%u\n",f,g,m,n,p,q);显⽰结果:(2)运⾏此程序并分析结果。

(3)在此基础上,将程序第10~14⾏改为c1=a,c2=b;f=3157.890121;g=0.123456789;d=f;e=g;运⾏程序,分析结果。

/* Note:Your choice is C IDE */#include"stdio.h"int main(){int a,b;float d,e;char c1,c2;double f,g;long m,n;unsigned int p,q;a=61;b=62;c1=a;c2=b;f=3157.890121;g=0.123456789;d=f;e=g;p=a=m=50000;q=b=n=-60000;printf("a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n",a,b,c1,c2,d,e);printf("f=%15.6f,g=%15.12f\nm=%1d,n=%1d\np=%u,q=%u\n",f,g,m,n,p,q);}显⽰结果:(4)⽤sizeof运算符分别检测程序中各类型的数据占多少字节。

济南大学c语言实验答案(DOC)

济南大学c语言实验答案(DOC)

实验2 顺序结构程序设计1. 编写程序,从键盘输入一个大写字母,将它转换为对应的小写字母后输出。

参考程序:#include "stdio.h"void main(){char ch;printf(“\nPlease input a capital character:”);scanf(“%c”,&ch);ch=ch+32;printf(“\nThe small letter is %c”,ch);}2.编写程序,输入圆半径r ,求圆周长、圆面积、圆球体积。

参考程序:#include <stdio.h>#include <math.h>#define PI 3.14void main(){float r,c,area,v;printf(“\nPlease input the r:”);scanf(“%f”,&r);c=2*PI*r;area=PI*r*r;v=4.0/3*PI*pow(r,3);printf(“\nThe circle’s perimeter is %.2f”,c);printf(“\nT he circle’s area is %.2f”,area;printf(“\nThe circle’s volume is %.2f”,v);}3. 输入一个华氏温度,要求输出摄氏温度。

公式为:()3295-=F c 输出要有文字说明,取2位小数。

参考程序:#include <stdio.h>void main(){float f,c;printf(“\nPlease input a F temperature:”);scanf(“%f ”,&f);c=5.0/9*(f-32);printf(“\nThe temperature is %.2f ”,c);}4. 有3个电阻r1、r2、r3并联,编写程序计算并输出并联后的电阻r 。

C语言上机实验例题

C语言上机实验例题

实验一 C语言的运行环境、运行过程和表达式的使用一、目的与要求1、了解Dos、Windows环境下C语言的运行环境,了解所用的计算机系统的基本操作方法,学会独立使用该系统。

2、了解在该系统上如何编辑、编译、连接和运行一个C程序。

3、通过运行简单的C程序,初步了解C源程序的特点。

4、掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用的格式转换符。

5、学会使用C的有关算术运算符,以及包含这些运算符的表达式二、实验例题【例1】编程实现在屏幕上显示如下三行文字Hello, world !Wolcome to the C language world!Everyone has been waiting for.在Turbo C的集成环境下,键入如下源文件。

敲Alt+F组合键打开File菜单,File菜单中Write to或save as选项可将默认noname.c文件名改为任意文件名。

程序example.c如下:main(){printf("Hello,World!\n");printf("Wolcome to the C language world!\n");printf("Everyone has been waiting for.\n");}然后用Ctrl+F9执行example.c,用Alt+F5查看结果,即在屏幕上显示题目要求的三行文字。

按回车键重新返回Turbo C的编辑环境。

注意,在运行程序之前最好先存盘。

【例2】输入并运行程序,写出运行结果。

main(){int a,b,sum;a=123;b=456;sum=a+b;printf(“sum is %d\n”,sum);}运行方法同上,最后结果为:sum is 579。

【例3】输入并运行程序,写出运行结果。

main(){int a,b,c;int max(int,int);scanf(“%d,%d”,&a,&b);c=max(a,b);printf(“max=%d”,c);}int max(int x,int y){int z;if (x>y) z=x;else z=y;return(z);}这个程序的功能是对于任意输入的两个整数,输出较大的那个数。

C语言程序设计实验五 参考答案

C语言程序设计实验五  参考答案
5-2、以下程序的功能:输出3—1000之间的素数。选择合适的内容填入空白处,并调试运行程序。
答案:
#include<stdio.h>
void main()
{
int i,j,num=0;
for(i=3;i<=1000;i++)
{
for(j=2;j<=1000;j++)
if(i%2==0)
break;
5-4从键盘输入一个整数n,计算2n+1与++n之和。要求计算两数之和用函数实现。
答案:
#include<stdio.h>
void main()
{
int a;
int sum(int n);
printf("input n:\n");
scanf("%d",&a);
sum(a);
}
int sum(int n)
if(i%2!=0)
{
printf("%5d",i);
num++;
if(num%10==0)
printf("\n");
}
}
printf("\n");
}
*************************************************************************************************************实验三*******************************************
c语言程序设计实验五参考答案实验解答实验五参考答案编程语言c语言吧c语言答案

Python语言程序设计形考二实验五

Python语言程序设计形考二实验五

Python语言程序设计形考二实验五实验目的本实验旨在通过使用Python语言编程,练并巩固对于函数的理解和运用。

实验要求编写一个Python程序,实现以下功能:1. 输入一个字符串,检查该字符串中是否包含字母和数字。

若包含,输出字符串中的字母和数字个数;若不包含,输出提示信息。

2. 输入一个字符串,对该字符串进行反转,输出反转后的字符串。

3. 输入两个字符串,判断第二个字符串是否是第一个字符串的子串。

若是,输出提示信息;若不是,输出提示信息。

实验步骤1. 定义函数`check_alphanumeric`- 输入:一个字符串`str`- 输出:检查结果字符串- 过程:检查输入字符串是否包含字母和数字,统计其中的字母和数字个数,并返回检查结果字符串。

2. 定义函数`reverse_string`- 输入:一个字符串`str`- 输出:反转后的字符串- 过程:将输入字符串反转后返回。

3. 定义函数`check_substring`- 输入:两个字符串`str1`和`str2`- 输出:检查结果字符串- 过程:判断第二个字符串是否是第一个字符串的子串,若是,返回检查结果字符串;若不是,返回提示信息。

4. 调用上述函数,实现需求功能。

实验代码示例def check_alphanumeric(str):检查字符串是否包含字母和数字if any(c.isalpha() for c in str) and any(c.isdigit() for c in str):统计字母和数字个数alpha_count = sum(1 for c in str if c.isalpha())digit_count = sum(1 for c in str if c.isdigit())return f"该字符串包含字母和数字。

字母个数为{alpha_count},数字个数为{digit_count}。

"else:return "该字符串不包含字母和数字。

实验报告函数的用法(3篇)

实验报告函数的用法(3篇)

第1篇一、实验目的1. 理解函数的概念及作用。

2. 掌握函数的声明、定义和调用方法。

3. 学习函数的参数传递和返回值。

4. 熟悉函数的嵌套调用和递归调用。

二、实验原理函数是程序设计中的一种基本概念,它将一系列具有特定功能的代码封装在一起,以便重复使用。

函数的主要作用是将复杂的程序分解为多个模块,提高代码的可读性和可维护性。

在C语言中,函数分为两大类:标准函数和自定义函数。

标准函数是C语言库函数,如printf()、scanf()等;自定义函数是由程序员根据实际需求编写的函数。

函数的基本结构如下:```c函数返回类型函数名(参数列表) {// 函数体}```三、实验内容1. 函数的声明函数声明用于告诉编译器函数的存在,包括函数名、返回类型和参数列表。

函数声明格式如下:```c函数返回类型函数名(参数类型参数名);```2. 函数的定义函数定义是函数声明的具体实现,包括函数名、返回类型、参数列表和函数体。

函数体由大括号{}包围,包含一系列执行语句。

```c函数返回类型函数名(参数类型参数名) {// 函数体}```3. 函数的调用函数调用是指程序中调用函数的过程。

调用函数时,需要按照函数的参数列表提供相应的实参。

```c函数名(实参1, 实参2, ..., 实参n);```4. 函数的参数传递函数的参数传递主要有两种方式:值传递和地址传递。

(1)值传递:将实参的值复制给形参,函数内部对形参的修改不会影响实参。

(2)地址传递:将实参的地址传递给形参,函数内部通过修改形参的地址来修改实参的值。

5. 函数的返回值函数的返回值是指函数执行完毕后返回给调用者的值。

函数返回值类型必须与函数声明时指定的返回类型一致。

6. 函数的嵌套调用函数嵌套调用是指在一个函数内部调用另一个函数。

嵌套调用的函数可以递归调用自身。

7. 函数的递归调用递归调用是指函数在执行过程中直接或间接地调用自身。

递归调用分为直接递归和间接递归两种。

C语言程序设计第五次实验报告

C语言程序设计第五次实验报告

C语⾔程序设计第五次实验报告C程序设计实验报告实验项⽬:C语⾔程序设计第五次实验报告姓名:彭佳乐实验地点:家中实验时间:2020年4⽉21⽇⼀、实验⽬的与要求1、熟练地掌握函数的定义⽅法和调⽤规则。

2、掌握再 C语⾔程序种主调函数和被条⽤函数之间进⾏数据传递的规则。

3、了解函数的返回值及其类型,并正确使⽤它4、了解局部变量和全局变量的作⽤城及它们与存储分类的关系,理解变量的存在性和可见性的概念5、练习递归函数的使⽤⼆、实验内容6.3.1.1 已知三⾓形的三边,求⾯积6.3.1.2 求N的阶乘6.3.1.3 求两个整数的最⼤公约数6.3.1.4 打印出指定的图形6.3.2.1 求500以内的所有亲密数对6.3.3.1 编写计算x的y次幂的递归函数6.3.3.2 编写计算学⽣年龄的递归函数1、实验练习:6.3.1-1 已知三⾓形的三边,求⾯积(1)问题的简单描述:编写程序,从键盘输⼈三⾓形的3条边,调⽤三⾓形⾯积函数求出其⾯积,并输出结果。

(2)实验代码:#include<math.h>#include<stdio.h>float area(float a,float b,float c){float s,p,area;s=(a+b+c)/2;p=s(s-a)(s-b)*(s-c);area=sqrt(p);return(area);}main(){float a,b,c,ts;printf("请输⼊三⾓形的三条边a,b,c:\n");scanf("%f%f%f",&a,&b,&c);ts=area(a,b,c);if(a+b>c&&a+c>b&&b+c>a)printf("area=%f\n",ts);elseprintf("Data error!");}(3)问题分析:求三⾓形的⾯积采⽤的是浮点型,具有返回值,刚开始写成了调⽤函数后来发现不对将函数调⽤改成函数表达式带⼊程序可以正常运⾏2、实验练习:6.3.1-2 求N的阶乘(1)问题的简单描述:编写函数,求出从主调函数传来的数值i的阶乘值,然后将其传回主调函数并输出(2)实验代码:#include<stdio.h>#define N 5long function(int i)static long f=1;f=f*i;return f;}main(){long product;int i;for(i=1;i<=N;i++){product=function(i);printf("%d的阶层为%d\n",i,product);}}(3)问题分析:定义N为五的时候很纠结忘了define函数,后来问了同学后解决了3、实验练习:6.3.1-3 求两个整数的最⼤公约数(1)问题的简单描述:编写程序,从键盘输⼊两个整数,调⽤gdc()函数求他们的最⼤公约数,并输出结果。

C程序设计_函数_实验报告

C程序设计_函数_实验报告

贵州大学《C程序设计实验》实验报告实验名称:函数专业电子信息科学与技术班级姓名学号教师2010年}else{printf("%d isn't a prime number\n",n);}}bool prime_number(int x){bool flag=true;for(int i=2;i<x/2&&(flag==true);i++){if(x%i==0)flag=0;}return flag;}运行情况:分析:程序开始:bool prime_number(int x);声明一个函数,函数返回值为bool型,函数名为prime_number,函数带一个int型参数。

scanf("%d",&n);从屏幕输入数n。

if(prime_number(n)) 调用函数,传入参数n。

bool prime_number(int x){bool flag=true;for(int i=2;i<x/2&&(flag==true);i++){if(x%i==0)flag= false;}return flag;}把两个函数分别放在两个程序文件中,作为两个文件进行编译、连接和运行。

(3). 用递归法将一个整数n转换成字符串。

例如,输入483,应输出字符串“483”。

n的位#include <stdio.h>void main(){int n;void covert( int n);printf("input n\n");scanf("%ld",&n);if(n<0){putchar('-');n=-n;}covert(n);}void covert(int n){inti;if((i=n/10)!=0)covert(i);printf("%c",n%10+'0');}数不确定,可以是任意的整数。

MATLAB实验5(学号姓名)

MATLAB实验5(学号姓名)

实验五MATLAB函数及其调用
一、实验目的
(1)熟练掌握M文件的编写。

(2)掌握MATLAB程序的调试方法。

(3)掌握MATLAB函数文件的编写。

二、实验内容
(1)编写函数文件。

(2)对自己编写的程序进行调试。

三、程序设计
实验1:实验题6,教材51页。

实验2:编写函数rootresult.m求解一元二次方程ax2+bx+c=0的根。

输入参数a、b、c,调用用户编写的求根的函数,得到方程的根。

实验3:写一个MATLAB 函数piFun01.m 来计算下列级数:f(n) = 4*(1 - 1/3 + 1/5 - 1/7 + 1/9 - 1/11 + ...) 其中n为函数的输入,代表上述级数的项数,f(n) 则是函数的输出。

(选做,附加分)
四、实验结果
实验1:
程序代码:
运行结果:
实验2:
程序代码:
运行结果:
实验3:
程序代码:
运行结果:。

C语言程序设计实验(5-7)

C语言程序设计实验(5-7)

C语⾔程序设计实验(5-7)实验41. 以下⼏段源程序有错,请调试修改正确。

①/*源程序实现的功能:输⼊两个实数,按从⼩到⼤的顺序输出*/ main(){ float a,b,t;scanf(“%f,%f”,&a,&b);if (a>b)t=a;a=b;b=tprintf(“%5.2f,%5.2f”,a,b);}#includeint main(){float a,b,t;scanf("%f,%f",&a,&b);if (a>b){t=a;a=b;b=t;}printf("%5.2f,%5.2f",a,b);}②该源程序实现的功能是:有如下函数关系:x (x>0)y= ? 2 (x=0)3x (x<0)根据输⼊的x值,求出y的值。

main( ){ int x,y;printf(“Enter x:”);scanf(“%d”,&x);if x>0 y=x;else if(x=0) y=2;else y=3*x;printf(“x=%d y=%d\n”,x,y);}#includeprintf("Enter x:");scanf("%d",&x);if(x>0)y=x;else if(x==0)y=2;else y=3*x;printf("x=%d y=%d\n",x,y);}#includeint main(){int x,y;scanf("%d",&x);if(x<1)y=x;else if(x<10)y=2*x-1;elsey=3*x-11;printf("y=%d",y);}某物品原有价值为p, 由于使⽤使其价值降低,价值的折扣率根据时间t(⽉数)确定如下:t<3,⽆折扣3<=t<6,2%折扣6<=t<12,5%折扣12=t>=21,10%折扣编程实现:根据输⼊的时间和原有价值计算物品的现有价值。

C语言程序设计实验报告(函数)

C语言程序设计实验报告(函数)

C语言程序设计实验报告(实验名称:函数)1实验目的(1)掌握函数的定义方法、调用方法、参数说明以及返回值;(2)掌握实参与形参的对应关系,以及参数之间的“值传递”的方式;(3)掌握函数的嵌套调用及递归调用的用的设计方法;(4)在编程过程中加深理解函数调用的程序设计思想。

2实验内容(1)编写一个函数primeNum(int x),功能是判别一个数是否为素数。

要求:①在主函数中输入一个整数x(直接赋值或从键盘输入);②函数类型为空值(void),调用primeNum( )函数后,在函数中输出x是否为素数的信息,输出格式为“x is a prime number”或”x is not aprime number”;③分别输入一下数据:0,1,2,5,9,13,59,121,并运行程序,检查结果是否正确。

(2)编写函数 mulNum(int a,int b),它的功能是用来确定a和b是否是整数倍的关系。

如果a是b的整数倍,则函数返回值为1,否则函数返回值为0。

要求:①在主函数中从键盘输入一对整型数据a和b;②调用函数后,根据返回值对a和b的关系进行说明。

例如,在主函数中输入:10,5,则输出“10 is a multiple of 5”;③分别输入下面几组数据进行函数的正确性测试:1与5,5与5,6与2,6与4,20与4,37与9。

3算法描述流程图(1)primeNum(int x)(判别一个数是否是素数)函数流程图①主函数流程图:②判断素数函数流程图:(2)mulNum(int a,int b)(确定a和b是否是整数倍的关系)函数流程图①主函数流程图:②判断倍数流程图:4源程序(1)判断某个数是否是素数#include <stdio.h>int primNum(int x) /*编写函数判断某个数是否是素数*/ {int i;if (x==0||x==1) /*当x等于1或等于0时判断是否为素数*/return 0;for (i=2;i<x;i++) /* 当x大于2时判断不为素数的数*/{if (x%i==0)return 0;}if (x%i) /* 当x等于2或不满足上述条件时时判断出该数是素数*/ return 1;}void main(){int n ;printf("Please input an integer:"); /* 提示从键盘输入一个数x */scanf("%d",&n);if (primNum(n)==1) /* 调用定义的函数*/ printf("%d is a prime number\n",n); /* 由函数得出结论判断是否为素数*/ elseprintf("%d is not a prime number\n",n);}(2)个数是否是整数倍关系#include <stdio.h>int mulNum(int a,int b)/* 定义函数确定两个数是否有整数倍关系*/{if (a%b==0) /* 判断出a是b的整数*/return 1;else /* 判断出a不是b的整数*/return 0;}void main (){int m,n;printf ("please input tow integers:\n"); /*提示从键盘输入两个数*/scanf ("%d%d",&m,&n); /*从键盘输入两个数的值*/if(mulNum(m,n)==1) /*调用定义的函数并判断输出相应的结果*/printf("%d is a multiple of %d\n",m,n);elseprintf("%d is not a multiple of %d\n",m,n);}5测试数据(1)实验(1)测试数据为0,1,2,5,9,13,59,121 运行结果当测试数据0时当测试数据1时当测试数据2时当测试数据5时当测试数据9时当测试数据13时当测试数据59时当测试数据121时(2)实验2测试的数据1与5,5与5,6与2,6与4,20与4,37与9。

《Python程序设计》-实验报告-(5)(总7页)

《Python程序设计》-实验报告-(5)(总7页)

《Python程序设计》-实验报告-(5)(总7页)实验目的:
本实验旨在通过Python语言学习类、实例、构造函数、多态和类与函数的结合来综合应用Python程序设计的基本知识。

实验内容:
本次实验依据《Python程序设计》的内容,具体实验内容分为五个部分:
一、类的定义
1. 编写类、属性、方法来模拟一个商品,然后实例化一个对象并调用方法,查看结果;
2. 使用类创建至少三种不同动物类并实例化,直接调用它们的方法,查看输出;
二、实例属性
1. 使用类和实例定义一个人类来模拟一个人,然后调用实例方法,查看结果;
2. 为实例属性设置getter和setter方法,查看是否可以获取和设置实例属性;
三、构造函数
1. 使用类的构造函数创建几个实例,检查构造函数执行的命令是否正确;
2. 在构造函数中增加参数来隐藏实例属性,检查实例属性是否被正确隐藏。

四、多态
1. 使用多态和继承来模拟猫与狗,查看调用多态后的对象;
2. 依据实验要求,使用多态机制和函数结合的方式进行多种计算,输出结果。

五、类与函数
1. 使用print()函数输出实例的相关属性信息,检查程序的输出结果是否符合要求;
2. 使用私有方法来获得两个实例的属性值并返回,检查结果是否正确。

实验心得:
通过本次实验,我学会了面向对象程序设计的基本思想,对Python程序设计有了更深入的理解,同时也提升了自己的编程实践能力。

C语言上机实验5-12

C语言上机实验5-12

17.5 实验5 循环结构程序设计1.实验目的(1)熟悉掌握用while语句、do…while语句和for语句实现循环的方法。

(2)掌握在程序设计中循环的方法实现一些常用的算法(如穷举、迭代、递推等)。

(3)进一步学习调试程序。

2.实验内容编程并上机调试运行(1)输入一行字符、分别统计出其中的英文字母、空格、数字和其他字符的个数(本题是教材第5章第4题)在得到正确结果后,请修改程序使之能分别统计大小写字母、空格、数字和其他字符的个数。

(2)输出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其个位数字立方和等于该数本身。

例如,153是一个水仙花数,因为153=1³+5³+3³(本题是教材第五章第8题)。

(3)猴子吃桃问题。

猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。

第二天早上又将剩下的桃子吃掉一半,又多吃了一个,以后每天早上都吃了前一天剩下的一半零一个。

到第10天早上想再吃,只剩一个桃子了。

求第一天共摘了多少桃子(本题是教材第五章第12题)。

再得到正确结果后,修改题目,改为猴子每天吃了前一天剩下的一半后,再吃两个。

请修改程序并运行,检查结果是否正确。

(4)用牛顿迭代法求方程2X³=4x²+3x-6=0在1.5附近的根(本题是教材第五章第13题,学过高等数学的读者可选做此题)。

再得到正确结果后,请修改程序所设的X初始值由1.5改为100,1000,1000,再运行,观察结果,分析不同的x初值对结果有什么影响,为什么?修改程序,使之能输出迭代的次数和每次迭代的结果,分析不同的x初始值对迭代的次数有无影响。

3.预习内容预习教材第5章。

17.6 实验6 数组1. 实验目的(1)掌握一维数组和二维数组的定义、赋值和输入输出的方法。

(2)掌握字符数组和字符串函数的使用。

(3)掌握与数组有关的算法(特别是排序算法)。

2.实验内容编程序并上机调试运行。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C语言程序设计实验报告
实验5 函数程序设计
一、实验目的
(1)掌握C语言函数定义及调用的规则;
(2)掌握递归函数的编写方法和运行过程;
(3)理解变量的作用域和生存期。

二、实验内容及步骤
1、程序改错
输入已编好的源程序,源程序中包含有错误,先对源程序进行编译和连接,然后根据提示信息,修改程序中的错误,经过多次修改—编译—连接,直到编译、连接成功。

最后运行程序,输出正确结果。

(1)下述程序中,函数FUN功能是:计算正整数NUM的各位上的数字之积。

例如,若输入252,则输出应该是20;若输入202,则输出应该是0。

#include <stdio.h> /*提示:有3处错误*/
#include <conio.h>
long fun(num)
{long k=1;
do
{k*=num%10;
num\=10;
}while (num)
return k;
}
void main()
{long n;
scanf(“%ld”,&n);
printf(“\n%ld\n”,fun(n));
}
修改后程序代码:
#include <stdio.h>
long fun(long num)
{long k=1;
do
{k*=num%10;
num/=10;
}while (num);
return k;
}
void main()
{long n;
scanf("%ld",&n);
printf("\n%ld\n",fun(n));
}
运行结果:
2.已有一个已排好序的数组,要求在主程序中输入一个数,调用函数将其它插入数组中,保持数组依然有序,在主函数中输出插入后的数组。

程序代码:
#include<stdio.h>
main()
{ void insert(int y);
int x;
printf("请输入一个数:");
scanf("%d",&x);
insert(x);
printf("\n");
}
void insert(int y)
{
int i,j,a[6]={1,5,10,15,20};
for(i=0;i<5;i++)
{ if(y<a[i])
{for(j=5;j>i;j--)
a[j]=a[j-1];
a[i]=y;break;
}
}
for(i=0;i<6;i++)
printf("%d\t",a[i]);
}
运行结果:
3、有一篇文章,共有3行文字,每行有80个字符。

要求在主程序中输入文章,打印统计结果。

写一个函数分别统计出其中英文大写字母、小写字母、数字、空格及其它字符的个数。

程序代码:
#include<stdio.h>
int d=0,x=0,k=0,n=0,s=0;
main()
{void tongji(char c[][80]);
char ch[3][80];
int i;
printf("请输入三行字符:\n");
for(i=0;i<3;i++)
gets(ch[i]);
tongji(ch);
printf("大写字母个数为:%d\n",d);
printf("小写字母个数为:%d\n",x);
printf("空格个数为:%d\n",k);
printf("数字个数为:%d\n",n);
printf("其他字符个数为:%d\n",s-d-x-k-n);
//总数减去大小写字母、空格、数字的个数就是其他字符的个数}
void tongji(char c[][80])
{int i,j;
for(i=0;i<3;i++)
{ for(j=0;j<80;j++)
{ if(c[i][j]!='\0')
{s++;//统计输入字符的总数
if(c[i][j]>='A'&&c[i][j]<='Z')d++;
if(c[i][j]>='a'&&c[i][j]<='z')x++;
if(c[i][j]>='0'&&c[i][j]<='9')n++;
if(c[i][j]==' ')k++;
}
else break;
}
}
}
运行结果:
4. 递归程序设计练习——计算最大公约数
利用计算最大公约数的三条性质,用递归方法计算两个整数的最大公约数。

性质1:如果x>y,则x和y的最大公约数与x-y和y的最大公约数相同性质2:如果y>x,则x和y的最大公约数与x和y-x的最大公约数相同性质3:如果,即x=y,则x和y的最大公约数与x值和y值相同
具体要求:
①主函数中随机输入x、y的值
②所有变量定义为整数变量。

③键盘输入数据前要有提示。

④要求用函数求最大公约数。

程序代码:
#include<stdio.h>
main()
{ int max(int a,int b);
i nt x,y;
p rintf("请输入两个整数:用空格隔开\n");
s canf("%d %d",&x,&y);
p rintf("最大公约数为:%d\n",max(x,y));
}
int max(int a,int b)
{ int t;
if(a==b) t=b;
if(a>b) t=max(a-b,b);
if(b>a) t=max(b-a,a);
return t;
}
运行结果:。

相关文档
最新文档