编程题 急!!!!下午补考!!

2025-12-06 08:34:01
推荐回答(2个)
回答1:

#include
#include

void swap(int* a, int* b)
{
int temp = *a;
*a = *b;
*b = temp;
}

void reverse(int* beg, int* end)
{
int n = (end - beg)/2;
while(n-- > 0)
{
swap(beg++, --end);
}
}

int main()
{
int a[3], i = 0;
double x = 0, y = 0;

printf("输入3个数: ");
while(i < 3)
{
scanf("%d", &a[i++]);
}

reverse(a, a + sizeof a/sizeof a[0]); /* 反序 */

for(i = 0; i < 3; ++i)
printf("%d ", a[i]);

printf("\n\n输入x: ");

scanf("%lf", &x);

y = x < 0 ? abs(x) : (x >= 0 && x < 4 ? pow(x + 2, 3) : 2 * x + 5);

printf("y的值为: %.2lf\n", y);

}

回答2:

#include

void main()
{
int a[3];
int *p;
int i;
p=&a[2];
for (i=0;i<3;i++)
{
printf(\"Pleas Input Three Integer Number: \");
scanf(\"%d\",&a[i]);
}
for (i=0;i<3;i++)
{
printf(\"%d \",*p--);
}
}

if(x<0) y=fabs(x);
if(x>=0&&x<4) y=(x+2)*(x+2)*(x+2);
if(x>=4) y=x*2+5;