依稀见过这个说法,现举例如下:做程序求一整数的奇偶位之和。
#include
void fun(int i, int b[2]);
int main()
{
int i;
int b[2] = {0,0};
scanf("%d",&i);
fun(i,b);
printf("odd=%d, even=%d\n",b[0],b[1]);
return 0;
}
void fun(int i, int b[2])
{
int flag = 0;
while(i > 9){
flag ^= 1;
if(1 == flag)
b[0] += (i % 10);
else
b[1] += (i % 10);
i = (i - (i % 10)) / 10;
}
if(0 == flag)
b[0] += i;
else
b[1] += i;
return;
}
当然,用指针也可以:
#include
void fun(int i, int (*b)[2]);
int main()
{
int i;
int b[2] = {0,0};
int (*p)[2] = &b;
scanf("%d",&i);
fun(i,p);
printf("odd=%d, even=%d\n",b[0],b[1]);
return 0;
}
void fun(int i, int (*p)[2])
{
int flag = 0;
while(i > 9){
flag ^= 1;
if(1 == flag)
(*p)[0] += (i % 10);
else
(*p)[1] += (i % 10);
i = (i - (i % 10)) / 10;
}
if(0 == flag)
(*p)[0] += i;
else
(*p)[1] += i;
return;
}
阅读(1836) | 评论(0) | 转发(0) |