有趣的编程题目
文章平均质量分 62
劲夫学编程
扬州大学软件工程在读研究生
C语言学习在《C语言快速入门》和《C语言考研重置版》,个人建议看考研重置版,讲的更详细
数据结构详解在《数据结构专栏》
数据结构代码在《数据结构代码汇总》
JAVA学习在《JAVA快速入门》和《java EE》
读者可自行查看作者专栏,与君共同进步
展开
-
动态内存泄漏的常见问题及两种改进方法
前言今天遇见了一道有意思的内存泄露题目,特地分享给大家,相信屏幕前的你学习完一定有所收获,预祝读者学习愉快一、例题试问该段代码能打印什么,或者不能打印什么,说出理由#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<string.h>#include<stdlib.h>void getmemory(char*p){ p = (char*)malloc(100);}void test(.原创 2021-10-08 15:48:41 · 267 阅读 · 0 评论 -
超详细讲解C语言结构体实现简易通讯录
文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport.原创 2021-09-24 16:54:19 · 2515 阅读 · 4 评论 -
光速解决杨氏矩阵,看完必上手!
题目概要有一个数字矩阵,矩阵的每行从左到右都是递增的,矩阵从上到下都是递增的,请编写程序在这样的矩阵中查找某个数字是否存在?一、解题思路对于查找一个数组中元素是否存在,很多同学第一想法就是从头到尾遍历一遍。这样的想法优点是代码简单且无脑容易上手,但是这样的缺点也很明显,比如是m *n的数组,你从头到尾遍历,最坏情况要找m *n次。题目给的相关条件比如从左向右递增,从上向下递增你也完全没有使用,这样的暴力求解显然不是我们想看到的我们来介绍第一种方法,以下列二维数组进行举例1 2 34 5 67原创 2021-09-12 18:32:29 · 152 阅读 · 1 评论 -
最详细讲解多种方法实现一个函数,可以左旋字符串中的k个字符
文章目录前言法一、将左旋1次这个动作执行k次法二、多次逆序字符串前言今天看到一个有趣的笔试题:实现一个函数,可以左旋字符串中的k个字符。示例如下:ABCD左旋一个字符得到BCDAABCD左旋两个字符得到CDAB提示:以下是本篇文章正文内容,下面案例可供参考法一、将左旋1次这个动作执行k次这个方法的思路我来简单介绍一下:现有1个字符串abcd我们将a移出来,然后bcd前会空出一个位置将bcd向前移动一个位置,最后把a放入最后一个位置,即可完成1次左旋那么1次完成了,对于左旋.原创 2021-09-12 10:29:29 · 206 阅读 · 6 评论 -
进阶版指针笔试题
前言今天遇到两道非常有趣的指针笔试题,相信学完今天的笔试题,屏幕前的你对指针一定会有更近一步的理解和收获。提示:以下是本篇文章正文内容,下面案例可供参考一、笔试题1代码如下:#include<stdio.h>int main(){ int a[4] = { 1,2,3,4 }; int*ptr1 = (int*)(&a + 1); int*ptr2 = (int*)((int)a + 1); printf("%x,%x", ptr1[-1], *ptr2);//.原创 2021-09-08 22:46:15 · 230 阅读 · 5 评论 -
C语言有趣的编程题:游泳谁是冠亚军?
前言今日份有趣编程题:5位运动员参加了10米台跳水比赛,有人让他们预测比赛结果:A选手说:B第二,我第三;B选手说:我第二,E第四;C选手说:我第一,D第二;D选手说:C最后,我第三;E选手说:我第四,A第一;比赛结束后,每位选手都说对了一半,请编程确定比赛的名次。。提示:以下是本篇文章正文内容,下面案例可供参考一、解题思路示例:这个题目和昨天的“谁是凶手"题目有异曲同工之妙(详情见上一期c语言有趣编程题),都是几个人说话给条件,然后让你找其中的正确的话。我们先来理清一下A、B、C.原创 2021-08-09 22:01:39 · 435 阅读 · 1 评论 -
C语言有趣的编程题:最详细解答谁是凶手?
前言提示:今天遇到一道很有意思的题目:日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个嫌疑犯的一个。以下为4个嫌疑犯的供词。A说:不是我。B说:是C。C说:是D。D说:C在胡说已知3个人说了真话,1个人说的是假话。一、解题思路示例:我们首先由题干得知3个人说了真话,1个人说的假话,那么我们可以把这四个人的话看做4个已知条件,视1为真,0为假。那么这4个条件会有3个1和1个0,我们把这里作为切入口。二、解题步骤代码如下(示例):假设k代表杀手,因为A~D在ASCII码表上是连续原创 2021-08-08 21:31:12 · 1837 阅读 · 0 评论