Openjudge计算概论——数组逆序重放【递归练习】
/*===================================== 数组逆序重放 总时间限制:1000ms 内存限制:65536kB 描述 将一个数组中的值按逆序重新存放。 例如,原来的顺序为8,6,5,4,1。要求改为1,4,5,6,8。 输入 输入为两行:第一行数组中元素的个数n(1<n<100), 第二行是n个整数,每两个整数之间用空格分隔。 输出 输出为一行:输出逆序后数组的整数,每两个整数之间用空格分隔。 样例输入 5 8 6 5 4 1 样例输出 1 4 5 6 8 来源 计算概论05
思路:
这个题可以不用数组:进入到递归子函数后输入数据,接着进入下一层的递归,......当递归返回到该层时输出刚才在本层输入的数据。
这个其实就是利用系统栈来代替了数组的存储功能。 ======================================*/

1 #include<stdio.h> 2 void fun(int i/*,int a[]*/,int n);//fun(n)表示要输入第n个数,然后进入下一层递归,回来后输出第n个数 3 int main() 4 { 5 int n,a[101]; 6 scanf("%d",&n); 7 //fun(0,a,n); 8 fun(0,n); 9 return 0; 10 } 11 void fun(int i/*,int a[]*/,int n)//fun(n)表示还有n个数要输入和输出 12 { 13 int t; 14 if(i==n) 15 { 16 return ; 17 } 18 else 19 { 20 scanf("%d",&t); 21 //scanf("%d",&a[i]); 22 //fun(i+1,a,n); 23 fun(i+1,n); 24 //printf("%d ",a[i]); 25 printf("%d ",t); 26 } 27 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App