zoukankan      html  css  js  c++  java
  • 用栈的思想处理字符串倒置问题更清晰

    如杭电acm题目

    The input contains several test cases. The first line of the input is a single integer T which is the number of test cases. T test cases follow. Each test case contains a single line with several words. There will be at most 1000 characters in a line.
     
    Output
    For each test case, you should output the text which is processed.
     
    Sample Input
    3
    olleh !dlrow
    m'I morf .udh
    I ekil .mca
     
    Sample Output
    hello world!
    I'm from hdu.
    I like acm.
    Hint
    Remember to use getchar() to read ' ' after the interger T, then you may use gets() to read a line and process it.
     
    Author
    Ignatius.L

     我写的代码,还有地方能更精简

    # include <stdio.h>

    # include <string.h>

    int main(){

     int top,num,i;

     char a[1001];  

    char stack[1001];

     scanf("%d",&num);  

    getchar();  

    while(num--){   

    gets(a);   

    top=0;   

    for(i=0;i<strlen(a)+1;i++){   

     if(a[i]==' '){     

    while(top)     

     printf("%c",stack[--top]);     printf(" ");    }      

    if(a[i]==''){     

    while(top)      

    printf("%c",stack[--top]);     

    printf(" ");     

    break;    }    

    if(a[i]!=' '&&a[i]!='')     

    stack[top++]=a[i];

       }  

    }  

    return 0;

    }

    }

  • 相关阅读:
    第一次项目总结
    动画animation
    动画基本
    JQ属性和CSS
    JQ选择器
    关于JS的循环和函数,由入门到放弃
    Js知识点
    课程总结
    移动端开发--项目总总结
    项目总结
  • 原文地址:https://www.cnblogs.com/shaomg/p/3551498.html
Copyright © 2011-2022 走看看