一个函数接收两个整数指针,int* a和int* B。2将 *a的值设置为它们的和,将 *b的值设置为它们的绝对差。3没有返回值,也不需要return语句。
我得到了 *a的值,但无法得到 *b的代码。
#include <stdio.h>
void update(int *a,int *b);
int main() {
int a, b;
int *pa = &a, *pb = &b;
scanf("%d %d", &a, &b);
update(pa, pb);
printf("%d\n%d", a, b);
return 0;
}
void update(int *a,int *b)
{
*a+=*b;
*b=*a-*b;
}
3条答案
按热度按时间knsnq2tg1#
您可以使用一个临时变量来存储 *a的值,然后使用它:
oknrviil2#
稍微清理一下。只有函数需要指针。你的main不需要。
bvjveswy3#
一个不需要临时变量或
abs()
之类的外部函数的简单答案(最简单?)是:它还通过减去刚刚添加到
*a
中的“额外”*b
来修复代码