RSS
热门关键字:  ramebu er  ecgui  WINDOWS  djgpp  QT E开发记录
当前位置 :| 主页>编程&算法>

C入门级小例子 宏定义

来源: 作者: 时间:2008-09-16 Tag:C语言   宏定义   例子   点击:

C的第9章学习了有关于预处里的问题

用宏实现:交换两个数,判断润年,3个数中求最大,加密等.

点击下载源代码

==============================================================

加密

#include
#define IS_A_TO_Z(str) (((''''a''''<=str)&&(''''z''''>str))||((''''A''''<=str)&&(''''Z''''>str)))
#define IS_Z(str) ((''''z''''==str)||(''''Z''''==str))
int main(void)
{
  char str[128];
  int i;
  printf("Plese input txet:");
  gets(str);
  for(i = 0; str[i] != ''''\0'' i++)
  {
    if(IS_A_TO_Z(str[i]))
      str[i] += 4;
    else if(IS_Z(str[i]))
      str[i] -= 25;
  }
  printf("%s\n", str);
  return 0;
}

=============================================================

判断润年

#include
#define LEAP_YEAR(year) (((year%4)==0)&&((year%100)!=0)||((year%400)==0))
int main(void)
{
int year;
printf("Please input years:");
scanf("%d",&year);
if(LEAP_YEAR(year))
 printf("%d is a leap year.\n", year);
else
 printf("%d is not a leap year.\n", year);
return 0;
}
==============================================================

3个数中求最大

#include
#define MAX(a,b) ((a)>(b)?(a):(b))
int main(void)
{
int a,b,c;
printf("Please input three integers:");
scanf("%d,%d,%d", &a, &b, &c);
printf("max = %d\n", MAX(MAX(a,b), c));
return 0;
}

==============================================================

交换两个数

#include
#define SWAP(a,b) t=b;b=a;a=t;
int main(void)
{
int a,b,t;
a = 6;
b = 7;
printf("a = %d, b = %d\n",a,b);
SWAP(a,b);
printf("a = %d, b = %d\n",a,b);
return 0;
}

来自:http://blog.mcuol.com/User/micromcu/Article/6738_1.htm
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册
推荐关注
微型嵌入式图形用户界面系统