程序功能是通过调用reverse()函数按逆序重新放置数组a中的元素值,请补全程序。
编程要求
请仔细阅读下面代码,结合相关知识,在右边提示区域内进行代码补充,完成编写数组倒置的小程序。
测试输入:
0 1 2 3 4 5 6 7 8 9
预期输出:
9 8 7 6 5 4 3 2 1 0
#include "stdio.h"
#define N 10
void reverse(int *p, int a, int b)
{
int c;
/***** 请在以下一行填写代码 *****/
while ()
{
c=*(p+a);
/***** 请在以下一行填写代码 *****/
*(p+a)= ;
*(p+b)=c;
a++;
/***** 请在以下一行填写代码 *****/
;
}
}
int main()
{
int a[N], i;
for (i=0; i<N; i++)
/***** 请在以下一行填写代码 *****/
scanf("%d", );
reverse(a, 0, N-1);
for (i=0; i<N; i++)
/***** 请在以下一行填写代码 *****/
printf("%-4d", );
printf("\n");
return 0;
}
首尾字符逐个交换好了
#include "stdio.h"
#define N 10
void reverse(int *p, int a, int b)
{
int c;
/***** 请在以下一行填写代码 *****/
while (a<b)
{
c=*(p+a);
/***** 请在以下一行填写代码 *****/
*(p+a)= *(p+b) ;
*(p+b)=c;
a++;
/***** 请在以下一行填写代码 *****/
b--; ;
}
}
int main()
{
int a[N], i;
for (i=0; i<N; i++)
/***** 请在以下一行填写代码 *****/
scanf("%d", &a[i] );
reverse(a, 0, N-1);
for (i=0; i<N; i++)
/***** 请在以下一行填写代码 *****/
printf("%-4d", a[i] );
printf("\n");
return 0;
}
你题目的解答代码如下:
#include "stdio.h"
#define N 10
void reverse(int *p, int a, int b)
{
int c;
/***** 请在以下一行填写代码 *****/
while (a<b)
{
c=*(p+a);
/***** 请在以下一行填写代码 *****/
*(p+a)= *(p+b) ;
*(p+b)=c;
a++;
/***** 请在以下一行填写代码 *****/
b-- ;
}
}
int main()
{
int a[N], i;
for (i=0; i<N; i++)
/***** 请在以下一行填写代码 *****/
scanf("%d", &a[i] );
reverse(a, 0, N-1);
for (i=0; i<N; i++)
/***** 请在以下一行填写代码 *****/
printf("%-4d", a[i] );
printf("\n");
return 0;
}
如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!