当前位置: 首页 > news >正文

字符串逆序(c语言)



错误代码

#include<stdio.h>//字符串逆序
void reverse(char arr[], int n)
{int j = 0;//采用中间值法//访问数组中第一个元素和最后一个元素//交换他们的值,从而完成了字符串逆序//所以这个需要临时变量for (j = 0; j <= n / 2; j++){char temp = arr[j];arr[j] = arr[n - 1 - j];arr[n - 1 - j] = temp;}//直接打印整个数组printf("%s",arr);
}int main()
{char arr[10000];int i = 0;//直接输入整个数组scanf("%s", arr);int sz = 0;//这个循环计算的是除了\0后这个数组元素的个数while (arr[sz] != '\0'){sz++;}//函数调用reverse(&arr, sz);return 0;
}
//

运行结果

为什么呢

因为scanf在读取输入时,不能读取空白字符(空格,制表符,换行符),遇到这些就会停止读取

所以到i就停止读取了

 知识引用:

gets函数和fgets函数的区别

正确代码

#include <stdio.h>
#include <string.h>int main() 
{char str[10001];//读取键盘中输入的字符,包括空格//需要引头文件    fgets(str, 10001, stdin);int len = strlen(str);//因为fgets把\n读取了,所以需要去除\n的情况if (str[len - 1] == '\n') {len--;}for (int i = 0; i < len / 2; i++) {// 利用中间值进行交换char temp = str[i];str[i] = str[len - 1 - i];str[len - 1 - i] = temp;}//直接打印整个数组printf("%s\n", str);return 0;
}

程序运行


http://www.lryc.cn/news/473579.html

相关文章:

  • 芯片上音频相关的验证
  • 【C/C++】函数的递归
  • 《链表篇》---两两交换链表中的节点(中等)
  • Fakelocation 步道乐跑(Root真机篇)
  • PyEcharts | 全局配置项中初始配置项和区域缩放配置项的使用
  • 突破语言壁垒:Cohere 发布多语言大模型 Aya Expanse
  • 内容安全与系统构建加速,助力解决生成式AI时代的双重挑战
  • Scrapy源码解析:DownloadHandlers设计与解析
  • shell基础-awk
  • @Controller 和 @RestController 区别
  • 【数据库设计】规范设计理论之数据依赖的公理系统(1)
  • Leetcode 合并两个数组
  • Native Crash 信号速查
  • 【工具变量】自由贸易试验区试点DID数据集(2003-2023年)
  • js-在数组中根据name查找出对应id(find与filter方法)
  • 推荐:自然语言处理方向的一些创新点
  • 成都睿明智科技有限公司抖音电商服务的领航者
  • 【大数据学习 | kafka】kafka的整体框架与数据结构
  • 隐私保护下的数据提取策略
  • vue 和 django 报 CORS(跨域资源共享,Cross-Origin Resource Sharing)是一种跨域访问的机制,
  • 「Mac畅玩鸿蒙与硬件3」鸿蒙开发环境配置篇3 - DevEco Studio 插件安装与配置
  • 【论文阅读】PGAN
  • 基于Unet卷积神经网络的脑肿瘤MRI分割
  • [java][基础]HTTPTomcatServlet
  • 【开源免费】基于SpringBoot+Vue.JS网上超市系统(JAVA毕业设计)
  • 【单片机】深入剖析USART与UART的区别
  • ‌Linux tac命令‌
  • 从简单的demo开始让您逐步了解GetX的用法
  • JAVA的动态代理
  • 「图文详解」Pycharm 远程服务器Debug