Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4733870
  • 博文数量: 930
  • 博客积分: 12070
  • 博客等级: 上将
  • 技术积分: 11448
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-15 16:57
文章分类

全部博文(930)

文章存档

2011年(60)

2010年(220)

2009年(371)

2008年(279)

分类: C/C++

2008-11-14 18:14:24

   最近忙了一小段时间的笔试,呵呵.早点准备好些,今天金融危机,不知道明年找工作的时候是什么行情,小小的伤感下.好了不废话了.
   搞潜入式的大概都知道资源...今天就来个不用变量实现两个数的交换吧.
    

#include<stdio.h>

void swap1(int*,int*);
void swap2(int*,int*);
int main()
{
   int i,j;
   scanf("%d,%d",&i,&j);
   printf("1: i=%d,j=%d\n",i,j);
   swap1(&i,&j);
   printf("2: i=%d,j=%d\n",i,j);
   swap2(&i,&j);
   printf("3: i=%d,j=%d\n",i,j);

   return 0;
}

void swap1(int* a,int* b)
{
  *a = *a ^ *b;
  *b = *b ^ *a;
  *a = *a ^ *b;
}

void swap2(int* a,int* b)
{
  *a = *a + *b;
  *b = *a - *b;
  *a = *a - *b;
}

 ./swap
10,20
1: i=10,j=20
2: i=20,j=10
3: i=10,j=20


阅读(596) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~