二叉树的各种构造与遍历 //张雨辰 2021.5.20#include <iostream>#include <math.h>#include <stack>#include <stdio.h>#define MAXQSIZE 100using namespace std;typedef struct BiNode{ char data; BiNode *lchild, *rchild;} * BiTree;struct SqQueue.
7-4 求链式线性表的倒数第K项 (20 分) #include <iostream>using namespace std;int main(){ int n; cin >> n; int array[n]; int cnt=0,t; while(1){ cin >>t; if(t>=0) array[(cnt++)% n ]=t; else break; } if(cnt >= n) cout << array[cnt% n ]; els.
单向加头链表 刚刚开始学数据结构随便写写#include <iostream>using namespace std;//伟大的张雨辰同志友情赞助^_^ //创建于2021.3.11 未完待续O(∩_∩)O哈哈~ typedef int element_type;typedef struct linkednode{ //链表定义 element_type data; linkednode *next;}snode,*ptr;void initLink(ptr &h){
7-2 装箱问题 7-2 装箱问题 (20 分)假设有N项物品,大小分别为s1、s2、…、si、…、sN,其中si为满足1≤si≤100的整数。要把这些物品装入到容量为100的一批箱子(序号1-N)中。装箱方法是:对每项物品, 顺序扫描箱子,把该物品放入足以能够容下它的第一个箱子中。请写一个程序模拟这种装箱过程,并输出每个物品所在的箱子序号,以及放置全部物品所需的箱子数目。输入格式:输入第一行给出物品个数N(≤1000);第二行给出N个正整数si(1≤si≤100,
7-1 数组循环左移 (20 分) 7-1 数组循环左移 (20 分)本题要求实现一个对数组进行循环左移的简单函数:一个数组a中存有n(>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向左移m(≥0)个位置,即将a中的数据由(a0a1⋯an−1)变换为(am⋯an−1a0a1⋯am−1)(最前面的m个数循环移至最后面的m个位置)。如果还需要考虑程序移动数据的次数尽量少,要如何设计移动的方法?输入格式:输入第1行给出正整数n(≤100)和整数m(≥0);第2行给出n个整
c语言 最长最短单词 【描述】输入1行句子(不多于200个单词,每个单词长度不超过100),只包含字母、空格和逗号。单词由至少一个连续的字母构成,空格和逗号都是单词间的间隔。试输出第1个最长的单词和第1个最短单词。【输入】一行句子。【输出】两行输出:第1行,第一个最长的单词。第2行,第一个最短的单词。【样例输入】I am studying Programming language C in Peking University【样例输出】ProgrammingI#include <.
插入排序 有一个己排好序的数组,要求输入一个数后,按原来排序的规律把它插入数组中。(不接受异常处理)#include <stdio.h>void insert (int *,int *);int main(){ int a[1000],len,i; printf("请输入输入数字个数:"); scanf("%d",&len); printf("请输入排好序的数字:");...
c语言二级指针 *p:一级指针:存放变量的地址。 **q:二级指针:存放一级指针的地址。(二级指针只能存放一级指针的地址)#include <stdio.h>int main(){ int x=7; int *p=&x, **q=&p; printf("x地址:%u",&x); printf("p地址(一级指针):%u",&p)...
7-70 到底有多二 (15 分) 一个整数“犯二的程度”定义为该数字中包含2的个数与其位数的比值。如果这个数是负数,则程度增加0.5倍;如果还是个偶数,则再增加1倍。例如数字-13142223336是个11位数,其中有3个2,并且是负数,也是偶数,则它的犯二程度计算为:3/11×1.5×2×100%,约为81.82%。本题就请你计算一个给定整数到底有多二。输入格式:输入第一行给出一个不超过50位的整数N。输出格式:...
7-69 猴子选大王 (20 分) 一群猴子要选新猴王。新猴王的选择方法是:让N只候选猴子围成一圈,从某位置起顺序编号为1~N号。从第1号开始报数,每轮从1报到3,凡报到3的猴子即退出圈子,接着又从紧邻的下一只猴子开始同样的报数。如此不断循环,最后剩下的一只猴子就选为猴王。请问是原来第几号猴子当选猴王?输入格式:输入在一行中给一个正整数N(≤1000)。输出格式:在一行中输出当选猴王的编号。输入样例:11...
数组指针 数组指针,指向数组的指针,也可以写成数组形式。数组本质上就相当特殊的常数指针(其变量名相当于一个地址,但值不可改变)。int (*p)[x], 相当于指向一个长度为4个int 的二维数组。...
7-68 藏头诗 (15 分) 本题要求编写一个解密藏头诗的程序。输入格式:输入为一首中文藏头诗,一共四句,每句一行。注意:一个汉字占两个字节。输出格式:取出每句的第一个汉字并连接在一起形成一个字符串并输出。同时在末尾输入一个换行符。输入样例:一叶轻舟向东流帆稍轻握杨柳手风纤碧波微起舞顺水任从雅客流输出样例:一帆风顺#include <stdio.h>#def...
7-117 数字加密 (15 分) 输入一个四位数,将其加密后输出。方法是将该数每一位上的数字加9,然后除以10取余,做为该位上的新数字,最后将千位和十位上的数字互换,百位和个位上的数字互换,组成加密后的新四位数。例如输入1257,经过加9取余后得到新数字0146,再经过两次换位后得到4601。输入格式:输入在一行中给出一个四位的整数x,即要求被加密的数。输出格式:在一行中按照格式“The encrypted num...
链表的反转 #include <stdio.h>#define Long 4typedef struct Link{ int a; struct Link *next;}link;void ini(link *temp){ int i; for ( i=1; i<=Long; i++) { link *a=(link*)malloc(sizeo...
关于c语言空白字符的读入问题(未完待续) 给后面字符变量赋值什么时候需要清除缓冲区(fflush(stdin)) :scanf()函数是以空白字符为结束的,空白字符仍然留在缓冲区内,其中空白字符的对应关系是 n 对 n,n可以为0;fgets() 和 gets() 一样,最后的回车都会从缓冲区中取出来。只不过 gets() 是取出来丢掉,而 fgets() 是取出来自己留着。fgetsgets...
输出三角形面积和周长 7-100输出三角形面积和周长(15分)本题要求编写程序,根据输入的三角形的三条边a、b、c,计算并输出面积和周长。注意:在一个三角形中, 任意两边之和大于第三边。三角形面积计算公式:area=√s(s−a)(s−b)(s−c),其中s=(a+b+c)/2。输入格式:输入为3个正整数,分别代表三角形的3条边a、b、c。输出格式:如果输入的边能构成一个三角形,则在一...
判断上三角矩阵 (15 分) 7-97判断上三角矩阵(15分)上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。本题要求编写程序,判断一个给定的方阵是否上三角矩阵。输入格式:输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n个整数,其间以空格分隔。输出格式:每个矩阵的判断结...
换硬币 (20 分) 将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?输入格式:输入在一行中给出待换的零钱数额x∈(8,100)。输出格式:要求按5分、2分和1分硬币的数量依次从大到小的顺序,输出各种换法。每行输出一种换法,格式为:“fen5:5分硬币数量, fen2:2分硬币数量, fen1:1分硬币数量, total:硬币总数量”。最后一行输出“count = 换法个...
藏尾诗 (20 分) 本题要求编写一个解密藏尾诗的程序。输入格式:输入为一首中文藏尾诗,一共四句。每句一行,但句子不一定是等长的,最短一个汉字,最长九个汉字。注意:一个汉字占两个字节。输出格式:取出每句的最后一个汉字并连接在一起形成一个字符串并输出。同时在末尾输入一个换行符。输入样例:悠悠田园风然而心难平兰花轻涌浪兰香愈幽静输出样例:风平浪静#include...
IP地址转换 7-92IP地址转换(20分)一个IP地址是用四个字节(每个字节8个位)的二进制码组成。请将32位二进制码表示的IP地址转换为十进制格式表示的IP地址输出。输入格式:输入在一行中给出32位二进制字符串。#include <stdio.h>#include <math.h> int transform(long num){ int i = 0 ,...