1. 直传递(单向传递):#include<stdio.h>
int max(int a,int b)
{
int c;
if(a>b) c=a;
else c=b;
a++;
printf("a=%d\nb=%d\n",a,b);
return c;
}
void main()
{
int x,y,m;
scanf("%d%d",&x,&y);
m=max(x,y);
printf("x=%d\n",x);
printf("max=%d\n",m);
}
2. 条件编译
#include<stdio.h>
#define R 1
void main()
{
float c,r,s;
printf("input a number:\n");
scanf("%d",&c);
# if R
r=c;s=3.14159*r*r;
printf("%d",s);
# else
s=c*c;
printf("%d",s);
# endif
}
3.写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用
#include<stdio.h>
int fmax(int a,int b)
{
int c,i;
if(a<b) c=a;
else c=b;
for(i=c;i!=0;i--)
if(a%i==0&&b%i==0)
return i;
}
int fmin(int a,int b)
{
int c,j;
if(a>b) c=a;
else c=b;
for(j=c;j!=0;j++)
if(j%a==0&&j%b==0)