|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #include <stdio.h>
- #define swap(x,y) {int a;a=x;x=y;y=a;}
- main ()
- {
- int a[10],b[10],i;
- for(i=0;i<10;i++)
- {
- scanf("%d",&a[i]);
- }
- for(i=0;i<10;i++)
- {
- scanf("%d",&b[i]);
- }
- for(i=0;i<10;i++)
- {
- swap(a[i],b[i]);
- }
- for(i=0;i<10;i++)
- {
- printf("%d",a[i]);
- }
- printf("\n");
- for(i=0;i<10;i++)
- {
- printf("%d",b[i]);
- }
- printf("\n");
-
- }
复制代码
用带参宏实现数组a和数组b的值的交换,麻烦看看这个错在哪,编译错了,不知道怎么改
- #include <stdio.h>
- #define swap(x , y) {int a ; a = * x ; * x = * y ; * y = a ;}
- main ()
- {
- int a[10] , b[10] , c , d , i ;
- printf("现在输入数组 a:\n") ;
- for(i = 0 ; i < 10 ; i ++) scanf("%d" , & a[i]) ;
- printf("现在输入数组 b:\n") ;
- for(i = 0 ; i < 10 ; i ++) scanf("%d" , & b[i]) ;
- for(i = 0 ; i < 10 ; i ++) {
- c = a[i] , d = b[i] ;
- swap(& c , & d) ;
- a[i] = c , b[i] = d ;
- }
- printf("数组 a:\n") ;
- for(i = 0 ; i < 10 ; i ++) printf("\t%d\n" , a[i]) ;
- printf("\n") ;
- printf("数组 b:\n") ;
- for(i = 0 ; i < 10 ; i ++) printf("\t%d\n" , b[i]) ;
- printf("\n") ;
- }
复制代码
编译、运行实况:
- C:\Bin>g++ -o swap swap.c
- C:\Bin>swap
- 现在输入数组 a:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 现在输入数组 b:
- 10
- 20
- 30
- 40
- 50
- 60
- 70
- 80
- 90
- 100
- 数组 a:
- 10
- 20
- 30
- 40
- 50
- 60
- 70
- 80
- 90
- 100
- 数组 b:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- C:\Bin>
复制代码
|
|