如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
实验8一、实验目的:1.学会编写函数来简化程序;2.了解函数的调用,能够使实参向形参传递数值。二、实验内容:1.写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果。两个整数由键盘输入。#include<stdio.h>voidmain(){intmax1(intx,inty),min1(intx,inty);inta,b,c,d;printf("pleaseentertwointegernumbers:\n");scanf("%d%d",&a,&b);c=max1(a,b);printf("最大公约数:%d",c);printf("\n");d=min1(a,b);printf("最小公倍数:%d\n",d);}intmax1(intx,inty){inti,m;for(i=1;i<=(x>y?y:x);i++)if(x%i==0&&y%i==0)m=i;return(m);}intmin1(intx,inty){inti,m,n;for(i=1;i<=(x>y?y:x);i++)if(x%i==0&&y%i==0)m=i;n=x*y/m;return(n);}结果:pleaseentertwointegernumbers:69最大公约数:3最小公倍数:18Pressanykeytocontinue11.写一个函数,用“起泡法”对输入的10个字符按由小到大顺序输出排列。#include<stdio.h>voidmain(){voidsort(inta[10]);intb[10];inti;printf("pleaseentertenchars:\n");for(i=0;i<10;i++)scanf("%c",&b[i]);printf("\n");sort(b);}voidsort(inta[10]){inti,j,t;for(i=0;i<9;i++)for(j=0;j<9-i;j++)if(a[j]>a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}for(i=0;i<10;i++)printf("%5c",a[i]);printf("\n");}结果:pleaseentertenchars:sjuATVhewsATVehjssuwPressanykeytocontinue实验总结:通过对以往的程序用函数进行调用,初步了解了函数的调用和实参向形参的数值传递。当然刚开始时总是遇到些麻烦,比如实参如何向形参的数值传递与字符的连续输入,高兴的是我们都解决了这些问题,并加深了理解。