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

C语言:初阶测试错题(查漏补缺)

题一:字符串倒置

示例1

输入

I like beijing.

输出

beijing. like I 

 思路一:

        定义字符串数组arr[ ] ,利用gets()将要倒置的字符串输入,记录字符串长度len,此时写一个逆置函数Inversion(),第一步将整个字符串逆置,然后再定义开始节点指针start(),和走动节点指针cur(),第二步:循环每次逆置一个单词,最后打印字符串。

#include <stdio.h>
//字符串逆置
void Inversion(char* left, char* right) {while (left < right){char* tmp = *left;*left = *right;*right = tmp;left++;right--;}
}
int main() 
{//初始化char arr[100] = { 0 };gets(arr);int len = strlen(arr);char* cur = arr;char* start = arr;Inversion(arr, arr + len - 1);//循环判断到结束while (*cur != '\0'){//每次逆置一个单词while (*cur != ' ' && *cur != '\0'){cur++;}Inversion(start, cur - 1);start = cur + 1;if (*cur == ' ')cur++;}printf("%s", arr);return 0;
}

题二:最小公倍数

示例1

输入

6 4

输出

12

思路一:

        如下图:明确思路(由于题目有时间复杂度,要求在牛客中此解法才通过,正常暴力解发时间复杂度超过题目限制)。

#include <stdio.h>int main() 
{int a, b;while (scanf("%d %d", &a, &b) != EOF){int i = 1;while (i){if ((a * i % b) == 0){printf("%d", a * i);break;}i++;}}return 0;
}

本人实力有限可能对一些地方解释的不够清晰,可以自己尝试读代码,望海涵!

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

相关文章:

  • 数组累加器-reduce、reduceRight
  • uniapp 官方扩展组件 uni-combox 实现:只能选择不能手写(输入中支持过滤显示下拉列表)
  • TypeScript 语法
  • 已经开源的中文大模型对比,支持更新
  • 调用其他页面onload函数的方法
  • 视频怎么转换成gif表情包?三步完成视频在线转gif
  • ElasticSearch安装与介绍
  • 每天一道leetcode:剑指 Offer 36. 二叉搜索树与双向链表(中等深度优先遍历递归)
  • 基于docker搭建pytest自动化测试环境(docker+pytest+jenkins+allure)
  • Debian 10驱动Broadcom 无线网卡
  • 系统架构设计师---2018年下午试题1分析与解答(试题二)
  • 移远通信推出一站式Matter解决方案,构建智能家居开放新生态
  • 文本挖掘 day5:文本挖掘与贝叶斯网络方法识别化学品安全风险因素
  • laravel框架中批量更新数据
  • 【Linux】POSIX信号量和基于环形队列的生产消费者模型
  • Rust之编写自动化测试
  • 【网络】网络层——IP协议
  • 动力电池系统介绍(十三)——高压互锁(HVIL)
  • C# 一种求平方根的方法 立方根也可以 极大 极小都可以
  • 爬虫逆向实战(十二)--某交易所登录
  • 【C++入门到精通】C++入门 —— list (STL)
  • SOLIDWORKS有限元分析
  • Kotlin Flow 冷流
  • Android Socket使用TCP协议实现手机投屏
  • 【云原生,k8s】Helm应用包管理器介绍
  • 两个内网之间的linux服务器如何互相登录?快解析内网穿透
  • sql server 存储过程 set ansi_nulls set quoted_identifier,out 、output
  • 1046:判断一个数能否同时被3和5整除
  • 优漫动游零基础如何学习好UI设计
  • Android岗位技能实训室建设方案