关闭

改错 字符串倒序

452人阅读 评论(0) 收藏 举报
分类:
请找出下面代码中的所有错误。说明:以下代码是把一个字符串倒序,如“abcd”倒序后变为“dcba”。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
1#include "string.h"
2int  main() 
3{
4    char*src = "hello,world";
5    char*dest = NULL;
6    intlen = strlen(src);
7    dest = (char*)malloc(len);
8    char*d = dest;
9    char*s = src[len];
10    while  (len-- != 0)
11      *d++ = *s--;
12    printf("%s", dest);
13    return  0;
14     
15}

正确答案: A B C D   

第7行要为'\0'分配一个空间
第9行改成char * s = &src[len-1]
第12行前要加上*d = '\0'
第13行前要加上free(dest)释放空间



解析


方法1:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
intmain()
{
    char*src = "hello,world";
    intlen = strlen(src);
    char*dest = (char*)malloc(len + 1); //要为\0分配一个空间
    char*d = dest;
    char*s = &src[len - 1]; //指向最后一个字符
    while( len-- != 0)
        *d++ = *s--;
    *d = 0//尾部要加\0
    printf("%s\n", dest);
    free(dest);// 使用完,应当释放空间,以免造成内存汇泄露
    return0;
}
方法2:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
intmain()
{
    charstr[] = "hello,world";
    intlen = strlen(str);
    chart;
    for(inti = 0; i < len; i++)
    {
        t = str[i];
        str[i] = str[len - i - 1]; 
        str[len - i - 1] = t;      
    }
    printf("%s", str);
    return0;
}

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

改错 字符串倒序

请找出下面代码中的所有错误。说明:以下代码是把一个字符串倒序,如“abcd”倒序后变为“dcba”。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...
  • ky_heart
  • ky_heart
  • 2017-01-01 19:34
  • 350

Python字符串逆序输出

Python字符串逆序输出 1、有时候我们可能想让字符串倒序输出,下面给出几种方法 方法一:通过索引的方法 方法二:借组列表进行翻转 2、分别输出字符串奇数坐标和偶数坐标的字符 最简单的方法是直接通过切片来实现
  • SeeTheWorld518
  • SeeTheWorld518
  • 2015-07-04 17:58
  • 17834

C语言通过指针和数组实现字符串倒序

1.数组方式实现  (不用字符串函数)程序如下 1 void ReverseByArray(char * s) 2 { 3 int len = 0; 4 while (s[len] != '\0') 5 len++; ...
  • jianglibo1024
  • jianglibo1024
  • 2017-01-26 16:23
  • 800

C#字符串排序-倒序输出

大家好我是小唐!前两天分享了一个图文混排,就是聊天的时候用到的文字和表情一起输出,但是在处理字符串的时候的时候我们都是按照从左到右的顺序进行的,我的聊天内容和其它人的聊天内容是有区别的,所以要做一些特别的处理。先看一下图就明白了: 看我输入的,从左到右的输入顺序,其他人的聊天内容也是从左到右的,...
  • tang_shiyong
  • tang_shiyong
  • 2015-08-25 10:34
  • 3073

C语言字符串单词倒序

题目要求:输入若干个单词,每个单词之间用空格分割,要求将每个单词中的字母倒序输出。 示例输入:abc def ghijkl 示例输出:cba fed lkjihg C语言程序如下: #include #include #include /*函数:inverse 作用:将buff+st...
  • yufan0303023
  • yufan0303023
  • 2017-04-22 23:40
  • 641

编写将给定字符串倒序输出的函数[Java笔试题]

面试的过程中经常会出现这样一个问题:写一个函数,将给定的字符串倒叙输出。 以下是StringReverseOpt定义静态方法: public class StringReverseOpt { /** * 方式一:使用String类的toCharArray(),再倒序输出数组。 * ...
  • ma_hoking
  • ma_hoking
  • 2016-05-25 23:22
  • 3226

python实现对指定输入的字符串逆序输出的六种方法大全

对于一个给定的字符串,逆序输出,这个任务对于python来说是一种很简单的操作,毕竟强大的列表和字符串处理的一些列函数足以应付这些问题 了,今天总结了一下python中对于字符串的逆序输出的几种常用的方法,一共总结出来了六种方法,个人认为比较全面了,如有其他方法欢迎前来补充 方法一: 直接使用字...
  • Together_CZ
  • Together_CZ
  • 2017-07-27 22:25
  • 2001

【Android学习笔记】listview的倒序显示问题

我们用listview的时候,有部分时候是要倒序显示的,比如日志的
  • u011212909
  • u011212909
  • 2014-06-10 15:22
  • 9433

用不同的方法实现字符串的逆序输出(C语言实现)

用不同的方法实现字符串的逆序输出(C语言实现) 今天去面试遇到面试题如下: 请将字符串"123456",逆序输出? 当时我使用是指针,以下我将后来我想到的方法,实现如下: #include #include ///////////////////////// //用指针实...
  • gaoxin12345679
  • gaoxin12345679
  • 2014-02-20 22:22
  • 3986

C++中逆序输出字符串和数字

#include #include #include using namespace std; int main() { //字符串逆序 // string string1; // int n,i,temp; // cin>>string1; // // n=st...
  • wap1981314
  • wap1981314
  • 2013-03-21 16:28
  • 934
    个人资料
    • 访问:71013次
    • 积分:1992
    • 等级:
    • 排名:千里之外
    • 原创:124篇
    • 转载:39篇
    • 译文:2篇
    • 评论:19条
    最新评论