重庆理工大学c语言实验答案,重庆理工大学C语言实验答案.doc

实验7和实验8今天完成,主要是验证性实验,下次实验开始做考试系统

实验7 函数实验

完成实验1、2、3、5、6、8、9、11、12,其余选作

实验目的

(1) 理解函数定义的方法(2) 掌握函数实参与形参的对应关系,以及”参数传递”的方式掌握函数的嵌套调用和递归调用的方法;

掌握全局变量和局部变量、动态变量、静态变量的概念和使用方法。

1.基本内容

【题目1】以下程序是求3个数中的最大值#include

void main()

{

int a,b,c,m;

int max(int x,int y); /* 函数声明*/

printf("input a,b,c=");

scanf("%d,%d,%d",&a,&b,&c);

m=max(max(a,b),c);

printf("最大值是:%d\n",m);

}

int max(int x,int y) /*函数定义*/

{

int z;

z=(x>y)?x:y;

return z;

}

【题目2】子函数素数,主函数输入,。

#include

void main()

{

int number;

int prime(int number);

printf("请输入一个正整数:\n");

scanf("%d",&number);

if ( prime(number) )

printf("\n %d是素数:",number);

else

printf("\n %d不是素数:",number);

}

int prime(int number) /*请注意区别main函数和prime函数中的number变量*/

{

int flag=1,n;

for (n=2; flag==1 && n<=number/2;n++)

if ( number%n==0 )

flag=0;

return (flag);

}

【题目3】读程序#include

void main()

{

int i=2,p;

int f(int a, int b);

p=f(i,i+=1);

printf("%d\n",p);

}

int f(int a, int b)

{

int c;

if(a>b)

c=1;

else if(a==b)

c=0;

else

c=-1;

return(c);

}

①将程序中第4行p=f(i,i+=1); 改为:

p=f(i,i);

②实践说明,函数的参数求值顺序是:【题目4】在主函数中输入和输出字符串子函数实现一个字符串按反序存放。【题目5】用子函数计算名学生的平均分。错误,请改正#include

#define N 4

float average(float array[]) /* 注意数据类型的一致 */

{

int i; float aver,sum=0;

for (i=0;i

sum+=array[i];

aver=sum/N;

return (aver);

}

void main()

{

float score[N],aver;

int i;

printf("\n input %d scores:\n",N);

for (i=0;i

scanf("%f",&score[i]);

aver=average(score); /* error */

printf("\n average score is %5.2f\n",aver);

}

【题目6】错误,#include

void main()

{

int a[][3]={0,2,4,6,8,10,12,14,16},sum;

int func(int a[][3]); /*函数声明*/

sum=func(a); /*error*/

printf("\n sum=%d\n",sum);

}

int func(int a[][3]) /*error*/

{

int i,j,sum=0;

for(i=0;i<3;i++)

for(j=0;j<3;j++)

if(i==j)

sum+=a[i][j];

return sum;

}

【题目7】在主函数中定义数组A[3][4]、B[4],用子函数对数组A每一行求和,其值放在数组B中,在主函数中输出值。【题目8】输入两个正整数,求其中最大公约数和最小公倍数#include

int fun1(int x, int y)

{

int temp;

if (x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值