C语言 实现逆置功能
C语言 实现逆置功能
//凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/
1. 字符串的逆置
方法1:利用数组
#include<stdio.h>
#include<string.h>
void fun(char a[]){
int i,len;
char ch;
len=strlen(a);
for(i=;i<len/;i++){
ch=a[i];
a[i]=a[len--i];
a[len--i]=ch;
}
} void main(){
char s[];
printf("Pealse input a string:\n");
gets(s);
printf("The string has been inverted:\n");
fun(s);
puts(s);
}
结果为:

方法2:利用指针
#include<stdio.h>
#include<string.h>
void fun(char *a){
if(*a){
fun(a+);
printf("%c",*a);
}
} void main(){
char s[];
printf("Pealse input a string:\n");
gets(s);
printf("The string has been inverted:\n");
fun(s);
printf("\n");
}
结果为:

2.输入10个数,逆置输出
方法1:利用数组
#include<stdio.h>
#include<string.h>
#define N 10 #if(1)
void reverse(int x[],int n){
int i,j,temp,m;
m=(n-)/;
for(i=;i<=m;i++){
j=n--i;
temp=x[i];
x[i]=x[j];
x[j]=temp;
}
}
#endif #if(0)
void reverse(int *x,int n){
int *i,*j,*p,temp,m;
m=(n-)/;
i=x; //i->x[0]
j=x+n-; //j->x[n-1]
p=x+m; //p->x[m]
for(;i<=p;i++,j--){
temp=*i;
*i=*j;
*j=temp;
}
}
#endif void main(){
int i,a[N];
printf("Pealse input %d numbers:\n",N);
for(i=;i<N;i++){
scanf("%d",a+i);
}
reverse(a,N);
printf("The array has been inverted:\n");
for(i=;i<N;i++){
printf("%2d",a[i]);
}
printf("\n");
}
结果为:

方法2:利用指针
#include<stdio.h>
#include<string.h>
#define N 10 #if(0)
void reverse(int x[],int n){
int i,j,temp,m;
m=(n-)/;
for(i=;i<=m;i++){
j=n--i;
temp=x[i];
x[i]=x[j];
x[j]=temp;
}
}
#endif #if(1)
void reverse(int *x,int n){
int *i,*j,*p,temp,m;
m=(n-)/;
i=x; //i->x[0]
j=x+n-; //j->x[n-1]
p=x+m; //p->x[m]
for(;i<=p;i++,j--){
temp=*i;
*i=*j;
*j=temp;
}
}
#endif void main(){
int i,a[N];
printf("Pealse input %d numbers:\n",N);
for(i=;i<N;i++){
scanf("%d",a+i);
}
reverse(a,N);
printf("The array has been inverted:\n");
for(i=;i<N;i++){
printf("%2d",a[i]);
}
printf("\n");
}
结果为:

C语言 实现逆置功能的更多相关文章
- 2010: C语言实验——逆置正整数
2010: C语言实验——逆置正整数 Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 949 Solved: 691[Submit][Status][We ...
- 【stut 逆置正整数】
C语言实验——逆置正整数 Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 输入一个三位正整数,将它反向输出. 输入 3位正整数. ...
- C语言 链表的创建--打印--逆置--新增--删除--排序--释放
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #include<string. ...
- C语言实现单链表的逆置
单链表的逆置是一个非常经典的问题,这里利用两个思想进行解决. 首先,我们需要看下原理图,其实两个思想都是一样的,都是使后一个的节点的 next 指针指向前一个节点,依次递推,直 ...
- 【C语言编程练习】7.1 线型表就地逆置
写在前面的话:直接从第5章跳到了第7章数据结构的趣题,原因是前面的数学趣题做久了,会觉得稍许疲倦,所以想“变个口味”,以后数学趣题和数据结构混合着练习. 1. 题目要求 编写一个函数,实现顺序表的就地 ...
- C语言strrev()函数:字符串逆置(倒序、逆序)
头文件:#include<string.h> strrev()函数将字符串逆置,其原型为: char *strrev(char *str); [参数说明]str为要逆置的字符串. s ...
- C语言实现整数数组的逆置算法
读入100个整数到一个数组中,写出实现该数组进行逆置的算法. 方法一: 假设100个整数读入到数组a中,算法f1的思想是分别从数组两端依次将对应数进行交换,即a[i]与a[100 - i - 1]进行 ...
- 已知单链表的数据元素为整型数且递增有序,L为单链表的哨兵指针。编写算法将表中值大于X小于Y的所有结点的顺序逆置。(C语言)
对此题目的完整示例可直接运行代码如下: #include <stdio.h> #include <stdlib.h> typedef struct LNode{ int dat ...
- 逆置单链表(基于c语言)
直接插入全部代码:(reverseLinklist函数是逆置操作) #include <stdio.h> #include <stdlib.h> #include <as ...
随机推荐
- SpringBoot系列——EnableScheduling,对定时器的支持
前言 定时器功能在项目里面往往会用到,比如定时发送邮件.定时释放数据库资源:这里记录一下springboot对定时器的支持的简单实例 cron表达式 开始之前要先介绍一下cron表达式,这里当一下百度 ...
- .Net EF6+Mysql 环境搭建
由于一直使用的数据库是mysql,之前所用的orm都是轻量级的例如 dapper 这些的,然后想用ef配置一下mysql,总共时间花了差不多2天,才将坑填完,写个博客将流程记录一下 给后来者少掉点坑. ...
- c#连接oracle数据库 DBHelper
闲着没事自己写了一个OracleHelper类,希望大神给点建议优化 using System; using System.Collections.Generic; using System.Linq ...
- .NET 配置文件实用指南
我想大家对配置文件一定不会陌生,在大部分的项目中都会用到它,在此笔者给出一些配置文件的实用示例. XML配置文件 利用XML格式的配置文件储存连接字符串,再用反射技术读取. using System. ...
- with与上下文管理器
如果你有阅读源码的习惯,可能会看到一些优秀的代码经常出现带有 "with" 关键字的语句,它通常用在什么场景呢? 对于系统资源如文件.数据库连接.socket 而言,应用程序打开这 ...
- 【Java基础】16、小数的浮点型和定点型
一.简介 1.对于不需要任何准确计算精度的数字可以直接使用浮点型,但是如果需要精确计算的结果,则必须使用定点型(BigDecimal类) 浮点型:float,double 定点型:BigDecimal ...
- js节点的类型
1. dom>documentElement>body>tagname 2.我们常用的节点标签. 元素节点(标签) 文本节点 属性节点(标签里的属性) 3.document有个属性n ...
- Docker 系列五(Docker Compose 项目).
一.概念 Docker Compose 是官方编排项目之一,负责快速的部署分布式应用.它允许用户通过一个单独的 docker-compose.yml 模板文件(YAML格式)来定义一种相关联的应用容器 ...
- crontab 配置文件
1.系统配置文件 etc/crontab 2.vim打开crontab 以上配置解释 1. 代表用bash去执行shell command line2.代表crontab 默认的环境变量3.cront ...
- vue-awesome-swiper 水平滚动异常
使用教程:https://github.com/cynthiawupore/vue-awesome-swiper 实例: <template> <div class="in ...