函数完成数组的逆序输出
一、思路
1.实现print() 函数打印数组的每个元素:
使用for循环将数组中的元素打印出来。
2.实现reverse() 函数完成数组元素的逆置:
设置left为左下标,right为右下标,tmp为交换两个数内容的中间变量
先将下标为left的值赋值给tmp,再将下标为right的值赋值给下标为元素left,最后再将tmp的值赋值给下标为left的元素
再对left++,同时对right–,一直循环到left>right
二、源代码
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
void print(int arr[], int sz)
{
int i = 0;
for (i = 0; i < sz; i++)
{
printf("%d", arr[i]);
}
printf("\n");
}
void reverse(int arr[], int sz)
{
int tmp = 0;
int left = 0;
int right = sz - 1;
while (left < right)
{
tmp = arr[left];
arr[left] = arr[right];
arr[right] = tmp;
left++;
right--;
}
}
int main()
{
int arr[5] = { 0 };
int i = 0;
int sz = sizeof(arr) / sizeof(arr[0]);
printf("请输入要操作的数:>");
for (i = 0; i < sz; i++)
{
scanf("%d", &arr[i]);
}
print(arr, sz);
reverse(arr, sz);
print(arr, sz);
return 0;
}
运行截图:
总结
这是一个基础题,代码看着有点长,其实原理很简单,如果这篇文章有哪里不正确的地方,请私信或者评论区向作者指出哦。
若本篇内容对你有帮助的话,请多多支持作者,作者目前是一个C语言萌新,欢迎大家一起来交流!!!
谢谢大家!