- 博客(10)
- 收藏
- 关注
原创 用单向循环链表实现猴子选大王 (20 分)
一群猴子要选新猴王。新猴王的选择方法是:让n只候选猴子围成一圈,从某位置起顺序编号为1~n号。每只猴子预先设定一个数(或称定数),用最后一只猴子的定数d,从第一只猴子开始报数,报到d的猴子即退出圈子;当某只猴子退出时,就用它的定数决定它后面的第几只猴子将在下次退出。如此不断循环,最后剩下的一只猴子就选为猴王。请输出猴子退出圈子的次序以及当选的猴王编号。函数接口定义int KingOfMonkey(int n,linklist *head);裁判测试程序样例:#include <stdio
2021-03-20 11:56:43
1413
原创 实验11-2-5 链表拼接 (20 分)
在这里插入图片描述#include <stdio.h>#include <stdlib.h>struct ListNode { int data; struct ListNode *next;};struct ListNode *createlist(); /*裁判实现,细节不表*/struct ListNode *mergelists(struct ListNode *list1, struct ListNode *list2);void pri
2021-03-19 12:45:28
213
原创 基础编程题目集--阶乘计算升级版-6-10
计算n的阶乘,n小于等于1000。测试点如下。先在网上找了下关于1000的阶乘的信息:1000的阶乘为2568位数,末尾处为:70027753472+249个0。显然没有一个基础变量可以直接满足这么大位数的需求。因此采用进制的方法。进制有很多种选法,我选择int型。令每个变量最大为四位数。则我需要642个int变量。但我喜欢整一些的数。所以我定义了一个有1000个变量的数组。大致的方向有了,接下来还有两个易错点需要注意。一是进制问题,二是输出问题。关于进制,我们要注意,往下一个储存单元加
2021-03-16 18:50:31
313
原创 实验11-1-4 计算最长的字符串长度-自己的平地摔
int max_len( char *s[], int n ){ int r=0,a; for(int i=0;i<n;i++) { a=strlen(s[i]); if(r<a) r=a; } return r;}//其实最开始我是这么写的:/*int max_len( char *s[], int n ){ int i=0,idx=0; while(i<n)...
2021-01-04 15:30:37
170
原创 实验8-1-8 报数 (20分)一些思路分享
报数游戏是这样的:有n个人围成一圈,按顺序从1到n编好号。从第一个人开始报数,报到m(<n)的人退出圈子;下一个人从1开始报数,报到m的人退出圈子。如此下去,直到留下最后一个人。本题要求编写函数,给出每个人的退出顺序编号。看一下我的代码:void CountOff( int n, int m, int out[] ){ int i,j=0,cnt=1; for(i=0;i<n;i++) out[i]=0; i=0; while(cnt&
2021-01-03 13:11:01
590
4
原创 冒泡排序的一些理解。
例如,数组 a[n] 按照升序排列:void sort( int a[], int n ){ int i,j,k; for(i=0;i<n;i++) { for(j=n-2;j>=i;j--) { if(a[j]>a[j+1]) { k=a[j]; a[j]=a[j+1]; a[j+1]=
2021-01-03 12:09:40
101
1
原创 实验6-5 输出指定范围内的Fibonacci数 关于测试点
题目不复制过来了。吐槽:我觉得这题测试点有点魔幻。能过的代码:int fib( int n ){ int r; if(n<=2) r=1; else r=fib(n-1)+fib(n-2); return r; }void PrintFN( int m, int n ){ int i=1,is=0,j=1; while(j<=n) { if(j>=m)
2021-01-03 11:14:18
147
原创 PTA,关于我踩过的坑,基础易错向
作为一个基础不太好的小白,勿喷。1.要求输出如下样式的时候,用%02d;表示占两个位,空位用0来补。12:00:102.想写a等于两倍b的时候,常常a=2b;//a=2*b; this is the right way.3.判断的时候经常将‘==’写成‘=’待更新……...
2020-11-24 20:35:21
179
原创 习题9-3 平面向量加法----这种题我可以---做错
题目在最后,先记录我的奇怪历程。1.首先,他的要求输出中 ,逗号与y之间有一个空格。好家伙,我再一次跌倒。下一次要复制,不能再手打。2.关于审题:坐标输出小数点后一位(注意不能输出−0.0)。我开始没看懂,觉得它四舍五入不会出现这种括号里的情况。然后实践告诉我,这个机器似乎不太聪明的样子。踩了这两个坑,最后出来了。看看我最后的结果。#include<stdio.h>#include<math.h>int main(){ struct vector{
2020-11-24 20:26:54
251
原创 习题9-4 查找书籍 (20分) 内记录了小白的艰苦历程
习题9-4 查找书籍 (20分) 这一道题我开始过不了。发现是输入有问题。1.首先gets()函数是在这个stdlib.h函数库里,我以为是string.h(ಥ _ ಥ)2.然后我这个输入的机制也有毛病,用sample debug的时候,只能够读到第二本书的名字,就自动进行下一操作了。结果查找,发现是回车键被读gets()读掉了。所以要加上getchar()来消掉回车。 int n; scanf("%d",&n); //getchar();这个很重要(*Φ皿Φ...
2020-11-24 20:05:30
206
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人