C语言笔记
Leeoo_lyq
努力努力再努力
展开
-
C++创建自己的头文件
1、编写.h头文件 首先为了防止重复编译,一般在头文件中加入“ #ifndef XXX #define XXX 。。。#endif"这样的语句。其中“ifndef”是指“if not define”,而“XXX”是自定义的名字,一般是.h文件名的大写形式。然后在上面语句的中间一般写类的声明(包括类里面的成员和方法的声明)、函数原型、#define常数等,但一般来说不写出具体的实现。...原创 2020-04-24 21:22:43 · 3366 阅读 · 0 评论 -
C语言学习笔记——PAT 币值转换
题目描述:输入一个整数(位数不超过9位)代表一个人民币值(单位为元),请转换成财务要求的大写中文格式。如23108元,转换后变成“贰万叁仟壹百零捌”元。为了简化输出,用小写英文字母a-j顺序代表大写数字0-9,用S、B、Q、W、Y分别代表拾、百、仟、万、亿。于是23108元应被转换输出为“cWdQbBai”元。输入格式:输入在一行中给出一个不超过9位的非负整数。输出格式:在一行中输...原创 2019-03-29 00:41:50 · 4528 阅读 · 3 评论 -
C语言笔记——PAT 7-2 然后是几点
题目:有时候人们用四位数字表示一个时间,比如1106表示11点零6分。现在,你的程序要根据起始时间和流逝的时间计算出终止时间。读入两个数字,第一个数字以这样的四位数字表示当前时间,第二个数字表示分钟数,计算当前时间经过那么多分钟后是几点,结果也表示为四位数字。当小时为个位数时,没有前导的零,即5点30分表示为530。注意,第二个数字表示的分钟数可能超过60,也可能是负数。输入格式:...原创 2019-03-27 00:53:25 · 407 阅读 · 0 评论 -
C语言学习笔记——建立一个二叉查找树
建立一个二叉查找树,包含查找、插入、删除等基本操作,最后打印出这棵树建好树以及删除一个结点后的先序遍历的结果。输入:用数组data[10] = {5, 1, 8, 0, 3, 6, 9, 2, 4, 7} 创建BST; 要删除的数为: 5 ;输出:#include <stdio.h>#include <s...原创 2019-03-15 16:07:09 · 1780 阅读 · 1 评论 -
C语言学习笔记——利用递归将单链表逆序
问题描述:将一个单链表逆序排列,逆序不使用额外的辅助空间。方法: 先让两个指针i , j 指向链表开头的两个相邻的结点,用递归方法,然后不断使 i = j, j = j->next, 从而让这两个指针一直向链表的尾部方向滑动。直到当j->next == NULL时,说明递归到了最深一层,链表的尾结点就是当前的 j 所指向的结点; 然后就是往回递归了,每返...原创 2019-03-11 01:59:17 · 1989 阅读 · 0 评论 -
C语言学习笔记——输入五个国家的名称,按字母顺序排列输出
建立一个指针数组,数组内的每一个指针分别指向每一个国家名的字符串。排序时,直接操作指针更加方便。程序运行结果:/* Name: sortCountryName Author: leeoo Date: 19/03/19 15:16 Description: 5输入五个国家的名称,按字母顺序排列输出*/#include<stdio.h>#includ...原创 2019-03-19 15:28:30 · 22997 阅读 · 1 评论 -
C语言学习笔记——n个小孩围成一圈,顺序排号,报数报到5的出局...
问题描述:n个小孩围成一圈,顺序排号,从第一个人开始报数(从1报到5),凡是报到5的都要出局,求最后留下的人的号码。#include<stdio.h>void Game(int n){ int arr[n] = {0}; // 记录第n号孩子是否已出局,“0”表示未出局 int out = 0; // 当前出局人数统计 int cal...原创 2019-03-06 21:26:49 · 3050 阅读 · 0 评论 -
C语言学习笔记——根据二叉树的后序和中序遍历序列,求这棵树的先序和层次遍历序列
先根据二叉树的后序和中序遍历序列,用递归的方法创建出这棵树,然后用的自定义栈的先序和层次方法遍历。 输入: 7 2 3 1 5 7 6 4 1 ...原创 2019-03-14 01:45:10 · 3423 阅读 · 0 评论 -
C语言笔记——用梯形法求定积分
为求出总面积,先将区间【a, b】分成n小块,每一块的图形近似于一个小梯形。用梯形面积代替该小块图形的面积,然后进行累计,就能够得到曲线图形的近似面积。#include <stdio.h>#include <math.h>#define MAXN 30double fun1(double x);double fun2(double x);double ...原创 2019-03-06 16:25:20 · 14654 阅读 · 0 评论 -
用回溯法解决八皇后问题--C语言
问题描述:要求在8x8的国际象棋棋盘上放入八个皇后,使得任意两个皇后不能处于同一列,同一行,同一条斜线上。算法思路:1) 判断皇后之间有没有冲突,要引入四个量–row(行号,也对应于皇后的编号),column[ ](列号),slash[ ](斜线方向), bslash[ ](反斜线方向);2) 由棋盘的布局可以发现,在斜线方向上有15条对角线,每一条穿过的各个方格有如下性质:该方格的行号加...原创 2019-03-01 20:28:20 · 1382 阅读 · 0 评论 -
C语言学习笔记--计算阶乘
问题描述:实现计算非负整数阶乘的函数。其中N是用户传入的参数,其值不超过12。如果N是非负整数,则该函数必须返回N的阶乘,否则返回0。方法一:迭代法int Factorial( const int N ){ int i, r = 1; if(N<0||N>12) return 0; else{ for(i = 1; i <= N; i++) r = r * ...原创 2019-03-05 01:39:55 · 558 阅读 · 0 评论 -
C语言,将1~9这9个数字分成三组,每组中的三个数排成一个三位的完全平方数,要求每个数字必须且只能用一次
题目要求:将1~9这9个数字分成三组,每组中的三个数排成一个三位的完全平方数,要求每个数字必须且只能用一次 。思路如下:1、先造一个数组num[]用来标记1到9这几个数字是否已经被使用过。比如:num[1] = 0,表示&quot;1&quot; 还没被使用过,而 num[1] = 1,则表示&quot;1&quot;前面已经用过了,要重新取数。 每次取数之前都判断一下要取的数对应的num[]标志,这样就解决了 “每个数字必须且只能...原创 2019-02-25 17:40:54 · 13357 阅读 · 13 评论