- 相关推荐
c语言函数实习报告
程序设计(C语言)实验报告
实验目的
(1)掌握函数的定义方法,调用方法,参数说明以及返回值;
(2)掌握实参与形参的对应关系,一集参数之间的“值传递”的方式;
(3)掌握函数嵌套调用及递归调用的设计方法;
(4)在编写过程中加深理解函数调用的程序设计思想。
实验内容
(1)编辑,编译,运行实验指导中的程序,并分析输出结果
(2)编写一个函数primeNum(int x),功能是判别一个数是否是素数。
(3)编写函数mulNum(int a,int b),功能是判定a是否是b的整数倍
实验1方法一:
源程序:
#include<stdio.h>
#include<math.h>
int computeNum(int x)
{
int sum ,a,b,c,d,e;
sum=0;
x=abs(x);
a=x/10000;
b=(x%10000)/1000;
c=(x%1000)/100;
d=(x%100)/10;
e=(x%10)/1;
sum=a+b+c+d+e;
return sum;
}
main()
{
int a,b;
printf("Please input an integer:");
scanf("%d",&a);
b=computeNum(a);
printf("the sum of all digits is %d\n",b);
}
输入一个整数123 运行结果如图
输入整数98341验证 运行结果如图
方法二:
#include<stdio.h>
#include<math.h>
int computeNum(int x)
{
int sum,i,t;
sum=0;
x=abs(x);
for(i=4;i>=0;i--)
{
t=pow(10,i);
if(x>=t)
{
sum=sum+x/t;
x=x-(x/t)*t;
}
}
return sum;
}
main()
{
int a,b;
printf("Please input an integer:");
scanf("%d",&a);
b=computeNum(a);
printf("The sum of all digits is %d\n:",b); }
输入整数456运行结果如图
输入整数98341验证运行结果如图
实验2:
源程序:
#include<stdio.h>
void move(char geton ,char puton)
{
printf("%c->%c\n",geton,puton);
}
void Hanoi(int n,char one,char two,char three) {
if (n==1)
move(one,three);
else
{
Hanoi(n-1,one,three,two);
move(one,three);
Hanoi(n-1,two,one,three);
}
}
void main()
{
int m ;
printf("Input the number of diskes:"); scanf("%d",&m);
printf("The steps of moving %d diskes:\n",m); Hanoi(m,'A','B','C');
}
输入3运行结果如下:
输入4运行结果如下:
实验2:
源程序:
#include<stdio.h>
int i,a,x;
int primeNum(int x)
{
for(i=2;i<x;i++)
{
a=x%i;
if(a==0)
return 0;
}
return 1;
}
main()
{
printf("Please input x!\n");
scanf("%d",&x);
if(x<2)
printf("wrong in put!\n");
else
{
a=primeNum(x);
if(a==0)
printf("%d is not a prime number!\n",x); else
printf("%d is a prime number!\n",x);
}
}
输入数据0运行结果如下:
输入数据1运行结果如下:
输入数据2运行结果如下:
输入数据3运行结果如下:
输入数据9运行结果如下:
输入数据13运行结果如下:
输入数据59运行结果如下:
输入数据121运行结果如下:
实验3: 源程序:
#include<stdio.h>
int mulNum(int a,int b) {
int i,c; c=a%b; if(c>0)
i=0; else i=1; return i; }
main() {
int a,b,s;
printf("please input a and b:\n"); scanf("%d %d",&a,&b); s=mulNum(a,b); if(s==1)
printf("%d is a multiple of %d\n",a,b); else
printf("%d is not a multiple of %d\n",a,b); }
输入数据1和5运行结果如下:
输入数据5和5运行结果如下:
输入数据6和2运行结果如下:
输入数据6和4运行结果如下:
输入数据20和4运行结果如下:
输入数据37和9运行结果如下:
出现的问题及解决方法:
编译过程中常出现因错漏而使语句不规范的现象。解决方法:更加认真以及注意检查。
实验心得:
通过本次试验我掌握了函数的定义,调用方法,参数的说明以及返回值,函数递归调用的设计方法等,逐步理解了函数调用的程序设计思想,学习过程常会遇到问题,因此需要认真理解,多作练习。
【c语言函数实习报告】相关文章:
C语言函数的定义03-03
什么是C语言函数02-28
C语言常用的输入函数03-04
C语言的函数分类03-24
c语言数学函数的介绍10-20
C语言中gets()函数知识04-02
C语言函数调用与参数传递10-10
C语言函数参数传递问题03-22
c语言随机数生成函数和时间函数03-16
C语言中函数的区分有哪些04-27