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 != '\0'; p1++, p2--)
*p2 = *p1;
*p2='\0';
printf("string a is: %s\n", a);
printf("string b is: %s\n", 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("请输入一个字符串:\n");
gets(str);
reverse(str);
printf("翻转后的字符串是:\n%s\n", str);
return 0;
}
C语言指针实现字符串的反转的更多相关文章
- C语言指针和字符串
#include <stdio.h> int main() { /********************************************* * 内存: * 1.常量区 * ...
- C语言 指针与字符串
C语言可以在栈区 or 堆区 or 全局区 存放字符串,字符串不单单是存储在全局区的. //字符串与指针 #include<stdio.h> #include<stdlib.h> ...
- [C语言]进阶|指针与字符串
------------------------------------------------------------------------------------ 回顾:[C语言]指针与字符串 ...
- C语言复习:字符串和一级指针
字符串基本操作 字符数组初始化方法 int main() { //1 {}号法 初始化列表 //数组初始化有2种方法 默认元素个数.指定元素个数 char buf1[] = { ...
- C语言中的数组和指针以及字符串
数组名同时也是该数组首元素的地址,而指针提供了一种用来使用地址的符号方法,因此指针能够很有效地处理数组. 将一个整数加给指针,这个整数会和指针所指类型的字节数相乘,然后所得的结果会加到初始地址上 da ...
- 程序设计入门-C语言基础知识-翁恺-第七周:指针与字符串-详细笔记(七)
目录 第七周:指针与字符串 7.1 指针初步 7.2 字符类型 7.3 字符串 7.3 课后练习 第七周:指针与字符串 7.1 指针初步 sizeof 是一个运算符,给出某个类型或变量在内存中所占据的 ...
- 【C语言】-指针和字符串
本文目录 字符串回顾 一.用指针遍历字符串的所有字符 二.用指针直接指向字符串 三.指针处理字符串的注意 说明:这个C语言专题,是学习iOS开发的前奏.也为了让有面向对象语言开发经验的程序员,能够快速 ...
- 11-C语言指针&一维数组&字符串
一.用指针遍历数组元素 1.最普通的遍历方式是用数组下标来遍历元素 1 // 定义一个int类型的数组 2 int a[4] = {1, 2, 3, 4}; 3 4 int i; 5 for (i = ...
- C语言:通过指针对字符串进行拼接
// // main.c // Pointer_stringcat // // Created by ma c on 15/8/2. // Copyright (c) 2015年 bjsxt. ...
随机推荐
- linux命令(001) -- chkconfig
一.准备知识 在说明chkconfig命令的用途之前,有必要先了解一下Linux系统中/etc/rc[0-6].d目录的用途. 众所周知,在Linux系统定义了7种不同的启动级别,这7种启动级别的含义 ...
- mybatis中打印sql语句
在mybatis-config.xml中properties节点下,配置一个settings节点 <settings> <setting name="cacheEnable ...
- Java系列学习(十四)-集合
1.java中的集合学习 2.Collection中常用方法 1.添加功能 boolean add(E e):添加一个元素 boolean addAll(Collection<? extends ...
- Java系列学习(零)-写在前面的话
1.为什么写这套笔记 理由一:因为需求,所以学习,然后就要记笔记 理由二:同时学几种相似的语言,怕搞混,所以写 2.笔记修改日志
- 【Java设计模式】工厂模式
简单工厂模式 简单工厂模式不是23种里的一种,简而言之,就是有一个专门生产某个产品的类.比如下图中的鼠标工厂,专业生产鼠标,给参数0,生产戴尔鼠标,给参数1,生产惠普鼠标. 示例代码: //一个产品接 ...
- css每次的初始化代码
;;} body{font-size:14px;} img{border:none;} li{list-style:none;} input,select,textarea{outline:none; ...
- Puppeteer——自动化脚本设计
我被分配了一个繁琐的任务,就是要给100个相同的站点做同样的配置.曾经就有做过相同的事,那时还不会写脚本,全靠手动配置.机械的配置了两天的时间,身体感觉被掏空.所以这次我决定还是写一个脚本自动的进行配 ...
- RTL Compiler之synthesis steps
1 synthesis steps 1) Search Paths rc:/> set_attribute lib_search_path path / rc:/> set_attribu ...
- Centos6.7 安装zabbix+apache+mysql教程(第一篇)
Centos6.7 安装zabbix+apache+mysql教程 blog地址: http://www.cnblogs.com/caoguo ### 基本包安装 ### [root@ca0gu0 ~ ...
- Render2
https://blog.csdn.net/wf19930209/article/details/81109388