c语言-C语言反转字符串输出,要求使用递归算法实现。

问题描述

C语言反转字符串输出,要求使用递归算法实现。

C语言反转字符串输出,要求使用递归算法实现。不用递归很简单,可是用递归怎么实现呢?

解决方案

 #include <stdio.h>
void foo(char * s)
{
    if (*s != '')
        foo(s + 1);
    printf("%c", (char)*s);
}
int main()
{
    char s[] = "hello world";
    foo(s);
}

解决方案二:

 #include<iostream>
using namespace std;

void invert(char *p)
{
    if(*p)
    {
        invert(p+1);
        cout<<*p;
    }
}
void main()
{
    char str[]="i love visual c++";
    invert(str);
}

解决方案三:

递归实现字符串反转算法
(C语言)递归实现字符串反转
c语言递归实现字符串反转

时间: 2024-11-08 22:21:32

c语言-C语言反转字符串输出,要求使用递归算法实现。的相关文章

面试问题之 按单词反转字符串

按单词反转字符串   题目要求:把字符串"I am a student"反转成为"student a am I",不借助任何库函数.   字符串中单词顺序反转的方法有很多种,我们可以定义一个栈结构,根据栈的特性,先进后出.我们通过依次查找空格(在实际分析单词应用中这只是最简单的情况,单词之间可能直接用标点符号区分,但是使用标点符号并不意味着就是两个单词,西方世界计数方式喜欢使用三位数字加一个逗号形式比如"3,483,123",虽然我们可以找到&q

c语言-C语言整数转字符串输出

问题描述 C语言整数转字符串输出 #include #include void to_str(n)int n;{ char s[10]; int i = 0; if(n { putchar('-'); n = -n; } do { s[i++] = n%10 +'0'; n/=10; } while(n>0); while(i--)putchar(s[i]);}main(){ int xy; scanf(""%d""&x); to_str(x);}这里

c语言-C语言中如何让几百个字符串输出的时候排列整齐,像表格一样?

问题描述 C语言中如何让几百个字符串输出的时候排列整齐,像表格一样? 解决方案 你说的是右边对齐?还是说每个字符上下对齐? 解决方案二: 得到这些文本中最长的一行的字符数,然后每一行根据计算平均把差的字符分摊到空格中

iOS开发系列--C语言之数组和字符串

概览 数组在C语言中有着特殊的地位,它有很多特性,例如它的存储是连续的,数组的名称就是数组的地址等.而在C语言中是没有String类型的,那么如果要表示一个字符串,就必须使用字符数组.今天主要就介绍如下三个方面: 一维数组 多维数组 字符串 一维数组 一维数组操作比较简单,但是需要注意,数组长度必须是固定的,长度不能使用变量进行初始化:如果声明的同时进行赋值则数组长度可以省略,编译器会自动计算数组长度:同时数组不能先声明再一次性赋值(当然可以对每个元素一一赋值). #include <stdio

Go程序设计语言3.5 字符串

3.5 字符串 字符串是不可变的字节序列,它可以包含任意数据,包括0值字节,但主要是人类可读的文本.习惯上,文本字符串被解读成按UTF-8编码的Unicode码点(文字符号)序列,稍后将细究相关内容. 内置的len函数返回字符串的字节数(并非文字符号的数目),下标访问操作s[i]则取得第i个字符,其中0i<len(s).   试图访问许可范围以外的字节会触发宕机异常:   字符串的第i个字节不一定就是第i个字符,因为非ASCII字符的UTF-8码点需要两个字节或多个字节.稍后将讨论如何使用字符.

c语言字符数组与字符串的使用详解_C 语言

1.字符数组的定义与初始化字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素.char str[10]={ 'I',' ','a','m',' ','h','a','p','p','y'};即把10个字符分别赋给str[0]到str[9]10个元素如果花括号中提供的字符个数大于数组长度,则按语法错误处理:若小于数组长度,则只将这些字符数组中前面那些元素,其余的元素自动定为空字符(即 '\0' ). 2.字符数组与字符串在c语言中,将字符串作为字符数组来处理.(c++中不是)在实际应用

C语言实现输入一个字符串后打印出该字符串中字符的所有排列_C 语言

本文实例讲述了C语言实现输入一个字符串后打印出该字符串中字符的所有排列的方法,属于数学里的排列问题.是一个很实用的算法技巧.分享给大家供大家参考.具体实现方法如下: 例如输入字符串abc,则输出由字符a.b.c所能排列出来的所有字符串abc.acb.bac.bca.cab和cba. C语言实现代码如下: /* * Copyright (c) 2011 alexingcool. All Rights Reserved. */ #include <iostream> #include <al

C语言求两个字符串的最长公共子串_C 语言

本文实例讲述了C语言求两个字符串的最长公共子串的方法.分享给大家供大家参考.具体实现方法如下: #include "stdio.h" #include "string.h" #include "stdlib.h" void getCommon(char str1[],char str2[],char * str3); int stringLength(char * str); void main(){ char str1[50]; char st

c语言-C语言题程序第二个输出结果是124还是125呢?求大侠帮忙解释

问题描述 C语言题程序第二个输出结果是124还是125呢?求大侠帮忙解释 #includeint change(int *data){ return (*data)++;}main(){ int data=123; change(&data); printf(""%ddata); data=change(&data); printf(""%d""data); printf(""n"");}V