互换函数和反转字符串

简介: 互换函数和反转字符串

C语言中互换函数的设置

方法一:

1. void chang(int *a,int *b)
2. {int temp=*a;*a=*b;*b=temp;}
1. chang(&a[1],&a[2]);
2. printf("%d %d\n",a[1],a[2]);

方法二:

1. void chang1(int &a,int &b)
2. {int temp=a;a=b;b=temp;}
1. chang1(a[1],a[2]);
2. printf("%d %d\n",a[1],a[2]);

方法三:

1. void swap3(int a[],int x,int y)
2. {int t=a[x];a[x]=a[y];a[y]=t;}
1. swap3(a,0,1);
2. printf("%d %d",a[0],a[1]);

 

C语言中反转字符串的函数strrev()和reverse()

1、使用string.h 中的strrev()。strrev函数只对字符数组有效,对string类型是无效的。

1. #include <stdio.h>
2. #include <string.h>
3. int main()
4. {
5.  char s[]="Hello world!";
6.  strrev(s);
7.  puts(s);
8.  return 0; 
9. }

2、使用algorithm中的reverse函数。reverse函数是反转容器中的内容,对字符数组无效。

1. #include <iostream>
2. #include <string>
3. #include <algorithm>
4. using namespace std;
5. int main()
6. {
7.  string s="Hello world!";
8.  reverse(s.begin(),s.end());
9.  puts(s.c_str());
10.   return 0; 
11. }

 

 

相关文章
|
7月前
|
机器学习/深度学习 C语言
函数递归与迭代附n的阶乘+顺序打印一个整数的每一位数+求第n个斐波那契数
函数递归与迭代附n的阶乘+顺序打印一个整数的每一位数+求第n个斐波那契数
57 0
代码随想录Day9 栈与队列 LeetCodeT20 有效的括号 T1047 删除字符串中所有相邻重复项 T150 逆波兰表达式求值
代码随想录Day9 栈与队列 LeetCodeT20 有效的括号 T1047 删除字符串中所有相邻重复项 T150 逆波兰表达式求值
33 0
|
7月前
|
存储 编译器 Linux
标准库中的string类(中)+仅仅反转字母+字符串中的第一个唯一字符+字符串相加——“C++”“Leetcode每日一题”
标准库中的string类(中)+仅仅反转字母+字符串中的第一个唯一字符+字符串相加——“C++”“Leetcode每日一题”
|
存储 算法
算法训练day11|20. 有效的括号;1047. 删除字符串中的所有相邻重复项;150. 逆波兰表达式求值
算法训练day11|20. 有效的括号;1047. 删除字符串中的所有相邻重复项;150. 逆波兰表达式求值
|
编译器 C语言 C++
学C的第十六天【操作符详解:9. 条件操作符;10. 逗号表达式;11. 下标引用,函数调用和结构函数;12.表达式求值:整型提升、算术转换、操作符的属性;练习:使用函数完成整型函数的打印、元素逆置】-2
12.表达式求值 1. 表达式求值的顺序一部分是由操作符的优先级和结合性决定。 2. 有些表达式的操作数在求值的过程中可能需要转换为其它类型。
107 0
逆置字符串
逆置字符串
64 0
|
C语言
C语言中二维数组a[3][4]行列元素互换,存到另一个数组中。
C语言中二维数组a[3][4]行列元素互换,存到另一个数组中。
267 0
逆序字符串 和 字符串的逆序输出 的区别~
逆序字符串 和 字符串的逆序输出 的区别~
116 0
|
C语言 容器
【C语言】为什么推荐把for循环写成左闭右开区间
循环十次打印"hello world",判定条件通常有两种写法:左闭右开区间、左闭右闭区间