云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > C语言实验5-7参考答案

C语言实验5-7参考答案

  • 62 次阅读
  • 3 次下载
  • 2026/4/27 10:24:13

实验五 函数和预处理命令

四、设计流程(算法描述)

(请写出上机内容1的算法描述) 利用循环将m乘n次 五、程序清单

1.编写自定义函数long power(int m,int n),计算mn的值。利用此函数编程序实现:从键盘输入两个整数m和n,计算出mn的值。 #include

long power(int m,int n)//要返回的是long型 {

int i;

long s;//因为是要返回的数,所以这里也定义为long型 s=1;

for(i=1;i<=n;i++) { s *=m; }

return s; }

int main(void) {

int m,n;

scanf(\

printf(\

return 0; }

2、写出两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函数,并输出结果,两个整数由键盘输入。

1. 源程序如下: #include int zdgys(int n1,int n2) {int i;

for(i=n2;i>=1;i--)

if(n1%i==0&&n2%i==0) {break;} return i; }

int zxgbs(int n1,int n2) {int i;

for(i=n1;i<=n1*n2;i++) if(i%n1==0&&i%n2==0) {break;} return i; }

main()

{int n1,n2,t;

scanf(\ if(n1

{t=n1;n1=n2;n2=t;}

printf(\ zxgbs=%d\}

3、改错题

正确程序如下:

#include double fact(int n); double multi(int n); main() {int i;

double sum,item,eps; eps=1E-6; sum=1; item=1;

for(i=1;item>=eps;i++) {item=fact(i)/multi(2*i+1); sum=sum+item; }

printf(\return 0; }

double fact(int n) {int i;

double res=1; for(i=1;i<=n;i++) res=res*i; return res; }

double multi(int n) {int i;

double res=1; for(i=3;i<=n;i=i+2) res=res*i;

return res; }

六、调试和测试结果 1、输入:2 3

输出:s=8

2、 输入:n1=24 n2=16

输出:zdgys=8 zxgbs=48

2.

3、输出结果为:

实验六 数组

四、设计流程(算法描述)

(请写出上机内容1的算法描述)

设置两个变量分别指示头和尾。第一个和最后一个元素值互换,然后头和尾变量向里移动,最终到两变量相遇为止。

五、程序清单

1.编写程序:从键盘输入一串整数保存到数组中,调用函数antitone()将数组反序输出。自定义函数void antitone(int a[],int n)实现将数组中的n个数据按逆序存放。 #include

#include //包含数组初始化函数的头文件 #define M 100

void antitone(int a[],int n) { int i,j; int k;

i=0; j=n-1;

while(i

k=a[i]; a[i]=a[j]; a[j]=k; i++; j--;

}

void main()

{ int array[100];

int n,i,m;

printf(\请输入要输入整数的个数:\ scanf(\ memset(array,0,sizeof(array)); //数组初始化语句 printf(\请输入整数:\ for(i=0;i

scanf(\

antitone(array,n); for(m=0;m

printf(\

}

2.已知某数列的前两项为2和3,其后每一项为其前两项之积。编程实现:从键盘输入一个整数x,判断并输出x最接近数列的第几项? #include #include

void Mad(int a[],int n) {

int i;

a[0]=2; a[1]=3;

for(i=2;i

int main(void) {

int a[100],x,k1,k2; int i;

Mad(a,100);//产生序列 printf(\ scanf(\ i=0;

for(;x>a[i];i++); k1 = abs(x-a[i-1]); k2 = abs(x-a[i]); if(k1>k2)

a[i] = a[i-1] * a[i-2];

搜索更多关于: C语言实验5-7参考答案 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

实验五 函数和预处理命令 四、设计流程(算法描述) (请写出上机内容1的算法描述) 利用循环将m乘n次 五、程序清单 1.编写自定义函数long power(int m,int n),计算mn的值。利用此函数编程序实现:从键盘输入两个整数m和n,计算出mn的值。 #include long power(int m,int n)//要返回的是long型 { int i; long s;//因为是要返回的数,所以这里也定义为long型 s=1; for(i=1;i<=n;i++) { s *=m; } return s; } int main(void) { int m,n;

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com