C语言题,在线等答案

来源:百度知道 编辑:UC知道 时间:2024/05/05 08:37:17
填空题
1.以下程序的运行结果是________.
int a=5;int b=7;
main()
{ int a=4,b=5,c;
c=plus(a,b);
printf("A+B=%d\n",c);
}
plus(int x,int y)
{int z;
z=x+y;
return(x);
}
2.以下程序的运行结果是_______.
main()
{incx();
incy();
incx();
incy();
incx();
incy();
}
incx()
{
int x=0;
printf("x=%d\t",++x);
}
incy()
{static int y=0;
printf("\ny=%d\n",++y);
}
三、编程题 P99
4.7 在用递归方法求两个正整数a和b的最大公约数c=gcd(a,b)时,其递归规则是:若a%b!=0, 则gcd(a,b)= gcd(b,a%b),否则gcd(a,b)=b。试用该方法编制求两个正整数a和b的最大公约数的程序。

4.12 编写程序,在程序中输入三角形三边a、b、c,用带参数的宏求三角形面积。要求定义两个带参的宏,一个宏用来求s=(s=(a+b+c)/2),另一个宏用来求面积area。

1.....A+B=4
2.
x=1
y=1
x=1
y=2
x=1
y=3
3.
#include <stdio.h>
int gcd(int a,int b);
void main()
{
int a,b,c;
printf("请输入两个整数a和b:");
scanf("%d%d",&a,&b);
c=gcd(a,b);
printf("这两个数的最大公约数为:%d\n",c);
}

int gcd(int a,int b)
{
if(a%b!=0)
gcd(b,a%b);
else
return b;
}
----------------------------
4.
#include <stdio.h>
#include <math.h>
#define S(a,b,c) ((a+b+c)/2)
#define AREA(m,a,b,c) sqrt(m*(m-a)*(m-b)*(m-c))
void main()
{
float a,b,c,area;
printf("请输入三角形三边a,b,c:");
scanf("%f%f%f",&a,&b,&c);
area=AREA(S(a,b,c),a,b,c);
printf("三角形面积为:%.2f\n",area);
}
-------------------------------------------
祝楼主进步~