C语言中字符串实现正序与逆序实例详解

发布时间 - 2026-01-11 02:14:04    点击率:

C语言中字符串实现逆序实例详解

字符串逆序和正序的实现代码:

#include <stdio.h>

#include <stdlib.h>

#include <conio.h>

#include <malloc.h>

#include <string.h>

/*定义*/

typedef struct node

{

 char c;

 struct node *llink,*rlink;

}stud;

/*建立链表*/

stud * creat(void)

{

 stud *p,*h,*s;

 char a;

 if((h=(stud *)malloc(sizeof(stud)))==NULL)

 {

  printf("不能分配内存空间!");

  exit(0);

 }

 h->c = 0;

 h->llink=NULL;

 h->rlink=NULL;

 p=h;

 while(1)

 {

a = getchar();

if(a=='\n')

break;

  if((s= (stud *) malloc(sizeof(stud)))==NULL)

  {

   printf("不能分配内存空间!");

   exit(0);

  }

  p->rlink=s;

  

  s->c =a;

  s->llink=p;

  s->rlink=NULL;

  p=s;

 }

 h->llink=s;

 p->rlink=h;

 return(h);

}

/*正序*/

void print1(stud *h)

{

 stud *p;

 p=h->rlink;

 printf("字符串(正序):");

 while(p!=h)

 {

  printf("%c",p->c);

  p=p->rlink;

 }

 printf("\n");

}

/*逆序*/

void print2(stud *h)

{

 stud *p;

 p=h->llink;

 printf("字符串(逆序):");

 while(p!=h)

 {

  printf("%c",p->c);

  p=p->llink;

 }

 printf("\n");

}

/*释放*/

void free_stud(stud *h)

{

 stud *p,*q;

 p=h->llink;

 while(p!=h)

 {

  q=p;

  p=p->llink;

  free(q);

 }

 free(h);

}

/*主函数*/

int main()

{

 stud *head=NULL;

 head=creat();

 print1(head);

 print2(head);

 free_stud(head);

 return 0;

}

实现效果图:

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# C语言中字符串实现正序与逆序  # 字符串的逆序与正序  # C语言递归实现字符串逆序的方式详解  # 使用C语言实现字符串逆序操作案例  # C语言 将字符串逆序输出的实例  # C语言解字符串逆序和单向链表逆序问题的代码示例  # c语言经典习题之逆序字符串详解  # 希望能  # 谢谢大家  # 链表  # string  # typedef  # conio  # malloc  # char  # llink  # struct  # node  # stdlib  # class  # brush  # strong  # pre  # cpp  # stdio  # gt  # include 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel怎么判断请求类型_Laravel Request isMethod用法  Laravel中Service Container是做什么的_Laravel服务容器与依赖注入核心概念解析  公司门户网站制作流程,华为官网怎么做?  laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程  js实现点击每个li节点,都弹出其文本值及修改  微信小程序 wx.uploadFile无法上传解决办法  MySQL查询结果复制到新表的方法(更新、插入)  Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程  如何用PHP快速搭建CMS系统?  Laravel如何使用Seeder填充数据_Laravel模型工厂Factory批量生成测试数据【方法】  Laravel如何处理文件下载请求?(Response示例)  Laravel如何使用Eloquent进行子查询  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  Python文件流缓冲机制_IO性能解析【教程】  jquery插件bootstrapValidator表单验证详解  如何挑选高效建站主机与优质域名?  Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  Android中Textview和图片同行显示(文字超出用省略号,图片自动靠右边)  如何在阿里云域名上完成建站全流程?  如何在橙子建站上传落地页?操作指南详解  Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程  如何做网站制作流程,*游戏网站怎么搭建?  JavaScript如何实现路由_前端路由原理是什么  无锡营销型网站制作公司,无锡网选车牌流程?  Laravel怎么连接多个数据库_Laravel多数据库连接配置  Linux系统命令中tree命令详解  教你用AI润色文章,让你的文字表达更专业  详解阿里云nginx服务器多站点的配置  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  Java解压缩zip - 解压缩多个文件或文件夹实例  php增删改查怎么学_零基础入门php数据库操作必知基础【教程】  Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  如何在HTML表单中获取用户输入并用JavaScript动态控制复利计算循环  如何快速搭建高效简练网站?  原生JS获取元素集合的子元素宽度实例  Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】  教你用AI将一段旋律扩展成一首完整的曲子  ChatGPT 4.0官网入口地址 ChatGPT在线体验官网  Laravel Octane如何提升性能_使用Laravel Octane加速你的应用  浅述节点的创建及常见功能的实现  微信小程序 scroll-view组件实现列表页实例代码  通义万相免费版怎么用_通义万相免费版使用方法详细指南【教程】  移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?  JS经典正则表达式笔试题汇总  javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】  php在windows下怎么调试_phpwindows环境调试操作说明【操作】  微信小程序 require机制详解及实例代码  利用vue写todolist单页应用  Java类加载基本过程详细介绍