c语言练习27——递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。

#include<stdio.h>
#include<stdlib.h>
//题目:递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。
int main(){
int i,l;
char a[100];
while(1){
printf("请输入一串字符:");
for(i=0;i<100;i++){
scanf("%c",&a[i]);
if(a[i]==‘\n‘)
break;}
l=i;
printf("倒序输出结果为:");
for(i=l-1;i>=0;i--)       //a[l]是换行符,这里不用输出
printf("%c",a[i]);
printf("\n________________________________\n");
}
return 0;
}
   

原文地址:https://www.cnblogs.com/gougouwang/p/11415310.html

时间: 2024-07-29 21:11:28

c语言练习27——递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。的相关文章

C语言中的递归

思路 下图描述的是从问题引出到问题变异的思维过程: 概述 本文以数制转换为引,对递归进行分析.主要是从多角度分析递归过程及讨论递归特点和用法. 引子 一次在完成某个程序时,突然想要实现任意进制数相互转换,于是就琢磨,至少涉及以下参数: 源进制数:scr 目标进制:dest_d实现的大致思路: scr --> 数字分解 --> 按权求和 --> dest很明显这个过程是先正序分解,然后逆序求和,所以我就联想到了递归. 递归 1. 递归的含义 递归就是递归函数.递归函数是直接或间接调用自身的

JavaScript中七种函数调用方式及对应 this 的含义

http://blog.sina.com.cn/s/blog_621f1e120100rj21.html this 在 JavaScript 开发中占有相当重要的地位,不过很多人对this这个东西都感觉到琢磨不透.要真正理解JavaScript的函数机制,就非常有必要搞清楚this到底是怎么回事. 函数调用方式不同,this 含义也跟着不同.JavaScript语言中有七种调用函数方式: 第一种:调用方法var obj = {    method: function() { alert(this

二叉树基本操作续二:前序、中序、后序遍历(非递归 迭代方式)

这里给出二叉树三种遍历方式的迭代实现代码.二叉树的递归实现使用系统栈入栈出栈,而非递归的迭代实现方法就是手动维护一个栈,来模拟递归的入栈出栈过程. 本文没有给出用户栈的代码,如果需要结合上篇的测试代码一起测试,则需要自己实现自己的栈,以及基本的pop.push等栈操作函数. 前序迭代遍历: 1 void iter_preorder(tree_pointer ptr) 2 { 3 //前序遍历:先遍历根节点,然后再分别遍历左右子树 4 int top = -1; 5 tree_pointer st

在C语言中以编程的方式获取函数名

调试常用的 __FILE__, __FUNCTION__, __LINE__ 调试常用的 __FILE__, __FUNCTION__, __LINE__ 没想到 VC6 不支持 __FUNCTION__ 所以我写了如下的奇怪代码 //用来记录当前行和当前函数//也可说是记录 堆栈void log_stack(const char *file, int line, const char * function); //当然还要对 __FUNCTION__ 宏作点修饰,因为这个宏只是在函数里面才起作

二叉树的广度优先遍历、深度优先遍历的递归和非递归实现方式

二叉树的遍历方式: 1.深度优先:递归,非递归实现方式 1)先序遍历:先访问根节点,再依次访问左子树和右子树 2)中序遍历:先访问左子树,再访问根节点吗,最后访问右子树 3)后序遍历:先访问左子树,再访问右子树,最后访问根节点 2.广度优先     按照树的深度,一层一层的访问树的节点 1 package Solution; 2 3 import java.util.LinkedList; 4 import java.util.Queue; 5 import java.util.Stack; 6

[转载]C语言程序的内存分配方式

"声明一个数组时,编译器将根据声明所指定的元素数量为数量为数组保留内存空间."其实就是编译器在编译的过程中,会加入几条汇编指令在程序里处理内存分配,并不是说编译时就分配了内存,不要理解错了. ------------------- 1.内存分配方式 内存分配方式有三种: [1]从静态存 储区域分配.内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在.例如全局变量,static变量. [2]在栈上创建. 在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结

函数调用方式__stdcall、__cdel

函数调用方式关系对比如下: 关键字 调用规则 参数传递方向 返回 参数寄存器 堆栈的清除 __cdecl C语言 从右向左 EAX 无 调用者 __stdcall Win32标准  从右向左 EAX 无 被调用者 __fastcall 寄存器 从左向右 EAX EAX.EBX.ECX 被调用者 __pascal Pascal 从左向右 EAX 无 被调用者 __msfastcall Ms寄存器 从右向左  EAX/EDX ECX.EDX 被调用者

c语言--函数与递归

1.函数又叫方法,是指实现某项功能或完成某项任务的代码块 //函数的主体从大括号开始,从大括号结束 //函数组成 //main函数,是给系统调用的函数 //函数组成: 返回值, 函数名, 传入参数 //如: 实现两个整数相加,返回它们的和 void show(void) { printf("hello world!\n"); } int add(int x, int y) { return x+y; } int main(int argc, const char * argv[]) {

Linux下用c语言实现发送http请求 方式可以Get或者Post例程参考

[1].[代码] Linux下用c语言实现发送http请求 方式可以Get或者Post 跳至 [1] ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69