zoukankan      html  css  js  c++  java
  • c js 字符串反转

    1.例如:输入 i am     a student    输出 student a am i

    #include <stdio.h>
    #include <string.h>
    
    
    void revertseStr(char *str)
    {
        char tmp[100][50] = {0};
        int i = 0;
        int j = 0;
        int k = 0;
        int flag = 0;
    
        /*将输入的字符串用空格分开存储到二维数组,例如输入 i am   a student ,而为数组中的存储为tmp[0]:i,tmp[1]:am,tmp[2]:a tmp[3]:student,
            注意不要存数空格
        */
        while(str[i] != '')
        {
            if(str[i] != ' ')
            {
                tmp[j][k++] = str[i];
                flag = 1;
            }
            else if(flag == 1)
            {
                j++;
                k=0;
                flag = 0;
            }
            i++;
        }
    
        /*j为存储二维数组的行及单词的个数,如果输入的字符串末尾没有空格的话,j就是最后一个数组的下标。
        eg1:I am a student    j=4 (末尾有空格) 
        eg2:I am a student   j=3 (末尾没有空格) 
        为处理上述情况,故作以下处理
        */
        if(str[i-1] != ' ')
        {
            j=j+1;
        }
        
        /*将为数组逆序给一维数组,并单词之间用一个空格隔开*/
        memset(str,0,strlen(str)+1);
        for(i=j-1;i>=0;i--)
        {
            strncpy(str+strlen(str),tmp[i],strlen(tmp[i]));
            if(i != 0)
            {
                strncpy(str+strlen(str)," ",1);
            }
        }
        return;
    }
    
    int main()
    {
        char inputString[100];
        scanf("%[^
    ]",inputString);
        revertseStr(inputString);
        printf("%s,%d
    ",inputString,strlen(inputString));
    }
  • 相关阅读:
    搜索框的实现
    图片瀑布流实现
    git的基本操作总结
    linux中常用命令总结
    JavaScript中的闭包
    springmvc执行过程
    位运算
    MySQL与Oracle数据库连接配置
    java 基础数据类型大小
    spring源码编译控制台输出乱码
  • 原文地址:https://www.cnblogs.com/moon-yyl/p/9115195.html
Copyright © 2011-2022 走看看