zoukankan      html  css  js  c++  java
  • C语言指针实现字符串的反转

    题目要求:


    编敲代码:从键盘随意输入一个字符串,输出该字符串。


        然后。将该字符串逆序存放后再输出,要求用字符指针完毕。

    代码:


    //解法一
    #include <stdio.h>
    #include <string.h>
    int main()
    {
    	char a[20] = {0}, b[20] = {0}, *p1, *p2;
    	printf("随意输入一个字符串:");
    	//memset(b, 0X00, sizeof(b));
    	gets(a);
    	p1 = a;
    	p2 = b + strlen(a) - 1;
    	for( ; *p1 != ''; p1++, p2--)
    		*p2 = *p1;
    	*p2='';
    	printf("string a is: %s
    ", a);
    	printf("string b is: %s
    ", b);
    	return 0;
    }
    
    
    //解法二
    #include <stdio.h>
    #include <string.h>
    #define MAXN 1000
    void reverse(char* str)
    {
        char* p = str + strlen(str)-1;
        char temp;
        while(str<p)
    	{
    		temp=*p;
    		*p--=*str;
    		*str++=temp;
    	}
    }
    int main()
    {
        char str[MAXN];
    	printf("请输入一个字符串:
    ");
        gets(str);
        reverse(str);
        printf("翻转后的字符串是:
    %s
    ", str);
    	return 0;
    }


  • 相关阅读:
    9 Fizz Buzz 问题
    2 尾部的零
    1 A+B问题
    递归
    互斥同步
    垃圾收集器与内存分配策略---垃圾收集算法
    10.矩形覆盖
    9.变态跳台阶
    8.跳台阶
    9.path Sum III(路径和 III)
  • 原文地址:https://www.cnblogs.com/yutingliuyl/p/6875282.html
Copyright © 2011-2022 走看看