C语言练习之用函数完成数组元素的逆置

简介: C语言练习之用函数完成数组元素的逆置

前言

最近学习数组的基本内容的过程中进行的习题练习,分享出来供大家一起学习交流:

将数组的元素逆序打印。


一、思路

  1. 实现print()  函数打印数组的每个元素
  2. 实现reverse()  函数完成数组元素的逆置。

打印每个元素(print):

用for循环将数组中的元素一个一个的打印出来。

元素的逆置(reverse):

设置left为左下标,right为右下标,temp为交换两个数内容的中间变量

先将下标为left的值赋值给temp,再将下标为right的值赋值给下标为元素left,最后再将temp的值赋值给下标为left的元素

再对left++,同时对right--,一直循环到left>right

二、源代码以及运行截图

为了方便大家的交流和学习,我将程序源代码和运行截图放置在下方。

源代码:

#define _CRT_SECURE_NO_WARNINGS
//实现print()  打印数组的每个元素
//实现reverse()  函数完成数组元素的逆置。
//要求:自己设计以上函数的参数,返回值
#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 my_reverse(int arr[], int sz)
{
  int temp = 0;
  int left = 0;
  int right = sz - 1;
  while (left < right)
  {
    temp = arr[left];
    arr[left] = arr[right];
    arr[right] = temp;
    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);
  my_reverse(arr,sz);
  print(arr, sz);
  return 0;
}

运行截图:

 


总结

以上就是今天要讲的内容,本文简单的介绍了用C语言对数组内元素进行逆置并且打印出来的思路,还进一步展示了代码的运行结果验证了作者的思路。

本文的作者也只是一个正在学习C语言等编程知识的萌新,若这篇文章中有哪些不正确的内容,请在评论区向作者指出(也可以私信作者),欢迎大佬们指点,也欢迎其他正在学习C语言的萌新和作者进行交流。

最后,如果本篇文章对你有所启发的话,也希望可以支持支持作者,后续作者也会定期更新学习记录。谢谢大家!


相关文章
|
4天前
|
存储 C语言
向函数传递结构体: C语言中的结构体参数传递详解
向函数传递结构体: C语言中的结构体参数传递详解
17 0
|
2天前
|
存储 搜索推荐 编译器
C语言数组深入解析与实战应用
C语言数组深入解析与实战应用
6 0
|
2天前
|
Serverless C语言
C语言函数详解与实战应用
C语言函数详解与实战应用
7 1
|
2天前
|
算法 C语言
C语言函数递归调用详解与实战应用
C语言函数递归调用详解与实战应用
11 0
|
2天前
|
C语言
C语言函数的嵌套调用详解
C语言函数的嵌套调用详解
8 1
|
4天前
|
存储 C语言
向函数传递字符串: C语言中的技术与实践
向函数传递字符串: C语言中的技术与实践
14 0
|
4天前
|
C语言
C语言中返回指针值的函数
C语言中返回指针值的函数
14 0
|
5天前
|
算法 C语言 容器
从C语言到C++_18(stack和queue的常用函数+相关练习)力扣(上)
从C语言到C++_18(stack和queue的常用函数+相关练习)力扣
17 0
|
4天前
|
C语言
C语言函数嵌套与递归调用的深入解析
C语言函数嵌套与递归调用的深入解析
12 0
|
4天前
|
存储 C语言
C语言中向函数传递值和从函数返回值的技术解析
C语言中向函数传递值和从函数返回值的技术解析
15 0