精华内容
下载资源
问答
  • 字符串倒置
    2021-09-03 20:20:09
    #include <stdio.h>
    #include <string.h>
    
    #define M 20
    int main()
    {
    	char str[M] = {'\0'};
    	//p指针指向字符串首位
    	char *p = str;
    	char *q = p;
    	
    	printf("请输入字符串\n");
    	gets(str);
    
    	//q指针指向字符串最后一位
    	q = q + strlen(q) - 1;
    	//将q指向的字符串和p指向的字符串交换
    	while( p < q )
    	{
    		char Temp = '\0';
    		Temp = *p;
    		*p = *q;
    		*q = Temp;
    		p++;
    		q--;
    	}
    	//再打印输出字符串
    	printf("reverse_str = %s\n",str);
    	return 0;
    }
    

    算法思想:定义两个指针p,q。 p指向字符串第一个字符,q指向字符串最后一个字符,p++向后遍历,q--向前遍历。将*p和*q的值进行交换,打印输出字符串。

    有不懂的小伙伴私下评论,我会在第一时间回复

    更多相关内容
  • 字符串倒置

    2017-11-27 19:37:37
    使用C#的字符串倒置 使用C#的字符串倒置 使用C#的字符串倒置 使用C#的字符串倒置 使用C#的字符串倒置
  • 【C语言】字符串倒置

    2022-05-21 10:48:26
    文章目录题目一、算法思路二、代码实现 题目 输入一个字符串,例:I like beijing. ...1.我们需要准备一个逆序字符串的函数,用来逆序所有字符串和每个单词字符串,准备两个函数参数接收字符串的首元素地址和最


    题目

    输入一个字符串,例:I like beijing.
    输出结果:beijing. like I

    一、算法思路

    1.暴力求解法:准备一个新数组,从后往前遍历,找到空格后,将单词放在新数组中,然后依次寻找,不建议采用;

    2.正确的算法思想:
    (1)先将字符串全部逆序
    .gnijieb ekil I
    (2)再逆序每个单词
    beijing. like I

    1.我们需要准备一个逆序字符串的函数,用来逆序所有字符串和每个单词字符串,准备两个函数参数接收字符串的首元素地址和最后一个元素的地址。然后利用逆序字符串的算法进行逆序,利用left和right两个指针,满足left < right这个条件。
    2.主函数中需要准备一个起点指针指向字符串首元素地址,还需要创建一个辅助指针end指向最后一个元素的地址,当end指针指向空格的时候就停下,然后将end - 1指向的最后一个元素的地址传给函数,逆序完后,把end + 1的字符赋给start,作为未逆序的单词的首元素地址,后面的同理;而当end指向’\0’时,也需要停下,并把end - 1传给函数,最后要把’\0’即end现在指向的位置赋给start指针(而不是end+1),作为字符串结束的标志。

    二、代码实现

    #include<stdio.h>
    #include<string.h>
    void reverse(char* left, char* right)
    {
    	//1.逆序所有字符
    	//2.逆序每个单词.gnijieb->beijing.
    	while (left < right)
    	{
    		char tmp = *left;
    		*left = *right;
    		*right = tmp;
    		left++;
    		right--;
    	}
    }
    int main()
    {
    	char arr[20] = { 0 };
    	gets(arr);//I like beijing.
    	int len = strlen(arr);
    	//1.把全部字符串逆序
    	//传字符串的首地址,和最后一个元素的地址
    	reverse(arr, arr + len - 1);
    	//2.再逆序每个单词
    	//也是传每个字符串的首元素地址和最后一个元素的地址
    	//需要辅助指针,指向最后一个元素的地址
    	char* start = arr;
    	while (*start)
    	{
    		char* end = start;
    		while (*end != ' '&&*end!='\0')
    		{
    			end++;
    		}
    		//循环结束后end指针指向空格
    		//逆序每个单词.gnijieb->beijing.
    		reverse(start, end - 1);
    		if (*end == ' ')
    		{
    			//跳到下个单词的首元素
    			start = end+1;
    		}
    		else
    		{
    			//end指向'\0'的情况
    			start = end;
    		}
    	}
    	printf("%s\n", arr);
    	return 0;
    }
    
    展开全文
  • C语言编写数组元素倒置字符串倒置算法函数 将数组数据“10,9,8,7,6,5,4,3,2,1”进行倒置,变成“1,2,3,4,5,6,7,8,9,10 ”。 程序如下 #include <stdio.h> #define LEN 10 void Data_Convert(int *t, int n); ...

    前言

    C语言编写数组元素倒置字符串倒置算法函数,将数组数据“10,9,8,7,6,5,4,3,2,1”进行倒置,变成“1,2,3,4,5,6,7,8,9,10 ”。

    程序源码

    #include <stdio.h>
    #define LEN 10
    void Data_Convert(int *t, int n);
    int main(void)
    {
        int buf[LEN]= {10,9,8,7,6,5,4,3,2,1};
        int i;
    	Data_Convert(buf, LEN);
        for(i = 0; i < LEN; i++)
            printf("%d,", buf[i]);
    	printf("\n");
    	return 0;
    }
    void Data_Convert(int *t, int n)
    {
        int i, j, k;
    	for(i = 0,j = n - 1; i < n / 2 ; i++,j--)
        {
            k = *( t + i );
            *( t + i ) = *( t + j );
            *( t + j ) = k;
        }
    }
    
    展开全文
  • JS实现字符串倒置

    千次阅读 2019-07-31 21:49:13
    实现字符串倒置 听到这道题,超级兴奋!!!因为我会哈哈哈哈! 我的想法是先给字符串转换成数组(字符串下的方法split() ),再用数组下的方法reverse() 来实现倒置,具体JS代码实现如下: <script> var str...

    昨天,听了一个大三学姐的面试,面试官问了下面这道题,与大家分享下~

    实现字符串倒置

    听到这道题,超级兴奋!!!因为我会哈哈哈哈!
    我的想法是先给字符串转换成数组(字符串下的方法split() ),再用数组下的方法reverse() 来实现倒置,具体JS代码实现如下:

        <script>
            var str = "abcdefghi";
            arr = str.split("");
            console.log("字符串转化成数组为:",arr);
            console.log("数组倒置:",arr.reverse());
        </script>
    

    测试结果:在这里插入图片描述

    与split() 相对应的是,数组下的方法 join() ;

    展开全文
  • 这里我们使用二分法结合函数以及while循环来解决这个问题,首先设置两个字符串,一个是你要置换的字符串arr1,另一个是你储存置换后的字符串arr2,这里可以把arr2设置成和arr1同样大小的字符串,第二步求出字符串...
  • #include #include #include using namespace std; int main() { char *src = “hello world”;... //字符串常量末尾为0,及指针len位置处值为0 printf("%s\n", dest); free(dest); return 0; }
  • English→hsilgnE #region 型コンバータ (string[]→string) internal class MyStringConverter : System.ComponentModel.SByteConverter { public override object ConvertTo(ITypeDescriptorContext context, ...
  • 个人感觉递归还是有一点难的 需要对程序和题目有较深的理解 先看代码 #include<stdio.h> #include<string.h> void reverse_string(char* arr) { char c = arr[0];...1) //如果这个字符串的大.
  • C语言:函数调用实现字符串倒置

    千次阅读 2020-03-12 22:15:27
    #include<stdio.h> #include <stdlib.h> #include<string.h> int main(){ void inverse(char str[]);... printf("输入字符串: \n"); gets(str); printf("原字符串为:%s\n",str); invers...
  • 1. 6_字符串倒置 【问题描述】 将一句话的单词进行倒置,标点不倒置。比如 I like beijing. 经过函数后变为:beijing. like I 【输入形式】 每个测试输入包含1个测试用例: I like beijing. 输入用例长度不超过...
  • C++ 字符串倒置

    千次阅读 2016-08-19 15:25:55
    字符串倒置你可以想到很多方法,例如你:你可以用循环把一个字符串依次的倒置赋值给另外一个字符串然后输出,还有就是用string 里面的reverse()函数。 加入头文件:#include #include 例子: #include #...
  • 输入一个字符串,然后把这个字符串倒置! 思路:很简单,就不具体比比了用指针指到字符串末尾,然后从后往前打印字符串,就倒置了!
  • } //回文字符串 //abcba abccba int symm(char* ch) { char* ftemp = ch; char* btemp = ch + strlen(ch) - 1; while(ftemp ) { if(*ftemp!=*btemp) return 1; ftemp++; btemp--; } return 0; } int main() { char ...
  • 字符串倒置 C/C++

    2020-08-28 15:27:40
    #define _CRT_NO_WARNINGS #include #include #include void reverse(char ... printf("请输入字符串:"); if (scanf("%s", str)) { reverse(str); printf("\n%s\n",str); } system("pause"); return 0; } 运行结果:
  • 易语言八种方法倒转字符串源码,八种方法倒转字符串,生成文本,API_CopyMemory
  • 描述:字符串置换给定两个字符串,请设计一个方法来判定其中一个字符串是否为另一个...思路:刚开始以为的倒置是字符串倒置即'abcd'与'dcba',写完代码测试后一看错了并非如此,而是要A,B两个字符串的字母个数完全相...
  • 【C语言】实现倒置字符串

    千次阅读 2022-02-28 15:23:52
    1.题目 2.思路 将整个句子进行逆序,再以每个空格为分界点,每一单词进行逆序。...void swap(char* left, char* right)//交换两个字符的位置 { while (left < right) { char temp = *left; *le.
  • JAVA倒置字符串

    2021-11-29 22:09:12
    Java倒置字符串 示例: 输入:I like beijing. 输出:beijing. like I
  • c#字符串倒置

    2010-10-28 10:28:22
    c#字符串倒置
  • 昨天打cf,在CSDN找string怎么实现逆序,有...如果要把字符串b逆序赋值给字符串a(字符串b自身不变,它的逆序给了字符串a保存),用法: ```cpp string a,b; a.assign(b.rbegin(),b.rend());//将b逆序赋值给a ``` ## 例
  • 导读热词//字符串倒置一char* StringReversal(char* strRes)){int begin=0;int end = strlen(strRes)-1;char temp;while ( end>begin ){temp = strRes[begin];strRes[begin] = strRes[end];strRes[end] = temp;...
  • 注意:倒置是以单词为单位的“逆置”,不是字符串的逆置; 思路:第一我们把每个单词分别逆置,然后再把字符串整体进行逆置;、 思路讲完我们上代码:重点是靠考虑单词结束表中,数组的越界要处理好。 #...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 17,254
精华内容 6,901
关键字:

字符串倒置

友情链接: 3.zip