题目1058:反序输出---------------没有用c++的反序输出,用了会更简单

#include<stdio.h>
#include<stdlib.h>
#include<cstring>//三个头文件,都有用
int main()
{
    char *str=(char *)malloc(sizeof(char));//char*使用前必须分配内存
    while(scanf("%s",str)!=EOF)//char*的scanf不用&!!!!!
    {
        int len=strlen(str);
        for (int i=len-1;i>-1;i--)
         printf("%c",str[i]);
         printf("\n");
    }
    return 0;
}

用了库函数strrev(*str),正确的结果,却是compile error,不能AC!!!!!!!

#include<stdio.h>
#include<stdlib.h>
#include<cstring>
int main()
{
    char *str=(char *)malloc(sizeof(char));
    while(scanf("%s",str)!=EOF)
    {
         strrev(str);
         printf("%s\n",str);
    }
    return 0;

}
时间: 2024-10-13 05:05:11

题目1058:反序输出---------------没有用c++的反序输出,用了会更简单的相关文章

[经典面试题]输入一个排好序的数组的一个旋转,输出旋转数组的最小元素。

[题目] 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转.输入一个排好序的数组的一个旋转,输出旋转数组的最小元素.例如数组{3, 4, 5, 1, 2}为{1, 2, 3, 4, 5}的一个旋转,该数组的最小值为1. [分析] 这道题最直观的解法并不难.从头到尾遍历数组一次,就能找出最小的元素,时间复杂度显然是O(N).但这个思路没有利用输入数组的特性,我们应该能找到更好的解法. 我们注意到旋转之后的数组实际上可以划分为两个排序的子数组,而且前面的子数组的元素都大于或者等于后面

已知二叉树的先序遍历序列和中序遍历序列,输出该二叉树的后序遍历序列

题目描述 输入二叉树的先序遍历序列和中序遍历序列,输出该二叉树的后序遍历序列. 输入 第一行输入二叉树的先序遍历序列: 第二行输入二叉树的中序遍历序列. 输出 输出该二叉树的后序遍历序列. 示例输入 ABDCEF BDAECF 示例输出 DBEFCA #include <iostream> #include <cstring> #define MAX 50+3 using namespace std; typedef char Elem_Type; typedef struct B

JAVA-从题目看算法,将输入字符串进行排序并输出

来看一个排列的例子,它所做的工作是将输入的一个字符串中的所有元素进行排序并输出,例如:你给出的参数是"abc" 则程序会输出:abc acb bac bca cab cba 这是一个典型的可用递归算法来实现的例子,我们来看一下利用递归的2种不同解法. 1.典型递归元素交换的算法 (1)算法的出口在于:low=high也就是现在给出的排列元素只有一个时. (2)算法的逼近过程:先确定排列的第一位元素,也就是循环中i所代表的元素. package test; import java.uti

题目1065:输出梯形 (直接用循环控制输出)+题目1432:叠筐 (数组控制形状,最后输出数组)

题目1065:输出梯形 (直接用循环控制输出)+ 样例输入: 4  样例输出:                        **** ****** ******** ********** 题目1432:叠筐    样例输入:                        11 B A 5 @ W 样例输出:                        AAAAAAAAA ABBBBBBBBBA ABAAAAAAABA ABABBBBBABA ABABAAABABA ABABABABABA A

已知前序(后序)遍历序列和中序遍历序列构建二叉树(Leetcode相关题目)

1.文字描述: 已知一颗二叉树的前序(后序)遍历序列和中序遍历序列,如何构建这棵二叉树? 以前序为例子: 前序遍历序列:ABCDEF 中序遍历序列:CBDAEF 前序遍历先访问根节点,因此前序遍历序列的第一个字母肯定就是根节点,即A是根节点:然后,由于中序遍历先访问左子树,再访问根节点,最后访问右子树,所以我们找到中序遍历中A的位置,然后A左边的字母就是左子树了,也就是CBD是根节点的左子树:同样的,得到EF为根节点的右子树. 将前序遍历序列分成BCD和EF,分别对左子树和右子树应用同样的方法,

正则中表示一个反斜线要使用四个反斜线

java中反斜线'\'通常和其他字符组合使用,我们有时候称它为转义字符 java代码里 要表示一个反斜线'\'就要写成:双斜线形式"\\",第一个反斜线代表转义,第二个可以看做普通字符 java中奇数个的反斜线不允许出现,除非后面有其他字符,那么最后一个反斜线就被当做了转义字符 正则中要表示一个反斜线就要使用四个反斜线表示"\\\\" 四个反斜线可理解为:前两个"生成"的 转义后两个"生成"的反斜杠.

Java第三章 P72 输出”欢迎你,青“ 否则输出”对不起,你不是青“

import java.util.*; public class If { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in = new Scanner(System.in); System.out.println("请输入用户:"); String name =in.next(); System.out.println("请输入密码:");

java循环练习:把100——200中不能被3整除的数输出,每四个换一行输出

package com.eduask.circulationDemo; /*  *   * 1.把100--200中不能被3整除的数输出,每四个换一行输出  */ public class testDemo01 { public static void main(String[] args) { int j = 0; for(int i=100; i<=200; i++){ if (i%3 != 0) { j++; System.out.print(i+"  "); if (j%

二叉树系列(一):已知先序遍历序列和中序遍历序列,求后序遍历序列

首先介绍一下三种遍历顺序的操作方法: 1.先序遍历 (1)访问根结点: (2)先序遍历左子树: (3)先序遍历右子树.  2.中序遍历 (1)中序遍历左子树: (2)访问根结点: (3)中序遍历右子树. 3.后序遍历 (1)后序遍历左子树: (2)后序遍历右子树: (3)访问根结点. 知道了二叉树的三种遍历规则,只要有中序遍历序列和前后任一种遍历序列,我们就可以求出第三种遍历序列,今天我们研究的是已知先序和中序遍历序列,求后序遍历序列. 已知该二叉树的先序遍历序列为:A-B-D-E-G-C-F,