欢迎光临散文网 会员登陆 & 注册

C语言方法的使用练习

2022-10-22 12:23 作者:沐笙--ms  | 我要投稿


[例8.3] 带参数的宏的使用


#define MUL(a,b)  a*b

main()

{ float x1,x2,x3;

x1=MUL(2,5); /* 行1* /

x2=MUL(2+3,6-2); /* 行2 */

x3=1.0/MUL(2,5); /* 行3 */

printf("x1=%f,x2=%f,x3=%f\n",x1,x2,x3);

}

[例8.4] 带参数的宏与函数的比较


#define Abs1(a)  (a)>=0?(a):-(a)

int Abs2(int a)

{  return a>=0?a:-a;

}


main()

{ int x=-1,y=-1;

printf("%d  ",Abs1(x++));

printf("%d\n",Abs2(y++));

printf("%d  %d\n",x,y);

}

[例8.5] 条件编译


#define  TC  1


main()

{

#if  TC

printf("The Turbo2 C V2.0\n");

#else

printf("The Microsoft C V6.0\n");

#endif

}

#undef TC

[例9.1] 通过指针变量存取变量的值。


main()

{ int a,b;

int *p1,*p2;

a=10; b=20;

p1=&a; p2=&b;

printf("a=%d,b=%d\n",a,b);

printf("*p1=%d,*p2=%d\n",*p1,*p2);

}

[例9.2] 输入a和b两个数,按先大后小的顺序输出,a和b的值不变。


main()

{ int a,b,*p1,*p2,*p;

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

p1=&a;  p2=&b;

if(a<b)

{ p=p1; p1=p2; p2=p; }

printf("a=%d,b=%d\n",a,b);

printf("Max=%d,Min=%d\n",*p1,*p2);

}

[例9.3] 用函数实现两个变量的交换


void swap(int *p1,int *p2)

{ int t;

t=*p1; *p1=*p2; *p2=t;

}

main()

{ int a=5,b=9;

printf("a=%d,b=%d\n",a,b);

swap(&a,&b);

printf("a=%d,b=%d\n",a,b);

}

[例9.4] 把两个数中的最大值设为0


int *max(int *q1,int *q2)

{  return *q1 > *q2 ? q1 : q2;

}


main()

{ int x,y,*p;

scanf("%d,%d",&x,&y);

printf("x=%d,y=%d\n",x,y);

p=max(&x,&y);

*p=0;

printf("x=%d,y=%d\n",x,y);

}


C语言方法的使用练习的评论 (共 条)

分享到微博请遵守国家法律