C语言学习
C语言学习 以及蓝桥杯
Astro_zxx
这个作者很懒,什么都没留下…
展开
-
蓝桥杯 C语言 13年真题 黄金连分数 精度到100位
尾数四舍五入,0要保留要求黄金分割数足够精确公式为 1/(1+x).x=1/(1+x)1黄金数 = ---------------------11 + -----------------11 + -------------11 + ---------1 + …也就是伟大的斐波拉契数列的知识啦需要递归式思路:1、转为求斐波拉契数列的n和n+1项2、n取多少?再增加n,...原创 2020-04-10 21:18:16 · 755 阅读 · 1 评论 -
试题 历届试题 分糖果 C语言
问题描述 有n个小朋友围坐成一圈。老师给每个小朋友随机发偶数个糖果,然后进行下面的游戏:每个小朋友都把自己的糖果分一半给左手边的孩子。一轮分糖后,拥有奇数颗糖的孩子由老师补给1个糖果,从而变成偶数。反复进行这个游戏,直到所有小朋友的糖果数都相同为止。你的任务是预测在已知的初始糖果情形下,老师一共需要补发多少个糖果。输入格式 程序首先读入一个整数N(2<N<100),表...转载 2020-03-07 21:10:02 · 571 阅读 · 0 评论 -
试题 基础练习 Huffuman树 蓝桥杯 C语言
资源限制时间限制:1.0s 内存限制:512.0MB问题描述 Huffman树在编码中有着广泛的应用。在这里,我们只关心Huffman树的构造过程。 给出一列数{pi}={p0, p1, …, pn-1},用这列数构造Huffman树的过程如下: 1. 找到{pi}中最小的两个数,设为pa和pb,将pa和pb从{pi}中删除掉,然后将它们的和加入到{pi}中。这个过程的费用记为...原创 2020-03-04 20:45:34 · 1072 阅读 · 0 评论 -
试题 基础练习 高精度加法 C语言
问题描述 输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。 定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。 计算c = a + b的时候,首先将A[0]与B[0]相加,如果有进位产生,则把进位(即...转载 2020-03-03 22:27:02 · 1371 阅读 · 2 评论 -
蓝桥杯 C语言 基础练习 杨辉三角形
问题描述杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。下面给出了杨辉三角形的前4行:11 11 2 11 3 3 1给出n,输出它的前n行。输入格式输入包含一个数n。输出格式输出杨辉三角形的前n行。每一行从这一行的第一个数开始依次输出,中间使用一个空格分隔。请不要在前面输出多余的空...原创 2020-02-29 23:37:07 · 889 阅读 · 2 评论 -
试题 基础练习 特殊回文数 蓝桥杯练习题 C语言
资源限制时间限制:1.0s 内存限制:512.0MB问题描述 123321是一个非常特殊的数,它从左边读和从右边读是一样的。 输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。输入格式 输入一行,包含一个正整数n。输出格式 按从小到大的顺序输出满足条件的整数,每个整数占一行。样例输入52样例输出8999989899899988...原创 2020-02-29 12:43:20 · 797 阅读 · 1 评论 -
试题 入门训练 序列求和 蓝桥杯 练习题
问题描述求1+2+3+…+n的值。输入格式输入包括一个整数n。输出格式输出一行,包括一个整数,表示1+2+3+…+n的值。样例输入4样例输出10样例输入100说明:有一些试题会给出多组样例输入输出以帮助你更好的做题。一般在提交之前所有这些样例都需要测试通过才行,但这不代表这几组样例数据都正确了你的程序就是完全正确的,潜在的错误可能仍然导致你的得分较低。样例输出5050...原创 2020-02-26 22:11:30 · 192 阅读 · 0 评论 -
《啊哈!算法》笔记——C语言链表操作
#include<stdio.h>#include<stdlib.h>int main(){ int *p;//定义一个指针p p=(int *)malloc(sizeof(int));//指针p获取动态分配的内存 //malloc函数的作用就是从内存中申请分配指定字节大小的内存空间 *p=10;//向指针p所指向的内存空间中存入10 printf("...原创 2020-01-19 21:37:49 · 183 阅读 · 0 评论 -
《啊哈!算法》笔记——C语言快速排序
快速排序诶//快速排序#include <stdio.h>int a[101],n;//定义全局变量。这两个变量需要在子函数中使用void quicksort(int left,int right) { int i,j,t,temp; if(left>right) return; temp=a[left]; //temp存入基准数 i = left; ...原创 2020-01-17 22:31:36 · 273 阅读 · 0 评论 -
《啊哈!算法》笔记——C语言队列操作
//队列操作#include <stdio.h>struct queue{ int data[100];//队列的主体,用来存储内容 int head;//队首 int tail;//队尾 } ;int main(){ struct queue q; int i; //初始化队列 q.head=1; q.tail=1; for(i=1;i<=9;i+...原创 2020-01-17 22:36:15 · 136 阅读 · 0 评论 -
《啊哈!算法》笔记——C语言栈操作之回文匹配
//栈操作,匹配回文字符串#include <stdio.h>#include <string.h>int main(){ char a[101],s[101]; int i,len,mid,next,top; gets(a);//读入一行字符串 len=strlen(a);//求字符串的长度 mid=len/2-1;//求字符串的中点 top=...原创 2020-01-17 22:37:17 · 171 阅读 · 0 评论 -
《啊哈!算法》笔记——C语言深度优先搜索算法,depth first search,dfs
//深度优先搜索 depth first search,DFS #include <stdio.h>int a[10],book[10],n;//C语言的全局变量在没有赋值以前默认以前默认为0//因此这里的book数组无需全部再次赋初值为0void dfs(int step)//step表示现在站在第几个盒子面前{ int i; if(step==n+1) //如果站在...原创 2020-01-27 22:28:11 · 381 阅读 · 0 评论 -
《啊哈!算法》笔记——C语言dijkstra算法——单源最短路
//dijkstra算法——单源最短路#include <stdio.h>int main(){ int e[10][10],dis[10],book[10],i,j,n,m,t1,t2,t3,u,v,min; int inf=99999999;//用Inf存储一个我们认为的正无穷值 //读入n和m,n表示顶点个数,m表示边的条数 scanf("%d %d",&n...原创 2020-01-31 22:56:16 · 326 阅读 · 0 评论 -
《啊哈!算法》笔记——C语言 bellman-ford算法
//bellman-ford算法 #include<stdio.h>int main(){ int e[10][10],dis[10],i,k,j,n,m,u[10],v[10],w[10],check,flag; int inf=99999999;//用Inf存储一个我们认为的正无穷值 //读入n和m,n表示顶点个数,m表示边的条数 scanf("%d %d",&...原创 2020-01-31 22:41:54 · 973 阅读 · 0 评论 -
《啊哈!算法》笔记——C语言、MATLAB 只有五行的算法——Floyd-Warshall
恰好今天看C语言算法和数学建模的方法都提到了这个算法核心代码只有五行的算法Floyd-Warshall算法是解决任意两点间的最短路径的一种算法。通常可以在任何图中使用,包括有向图、带负权边的图。Floyd-Warshall 算法用来找出每对点之间的最短距离。它需要用邻接矩阵来储存边,这个算法通过考虑最佳子路径来得到最佳路径。#include<stdio.h>int main(...原创 2020-01-29 21:38:18 · 511 阅读 · 0 评论 -
C语言 斐波拉契数列 42项出现负数 解决办法 蓝桥杯入门训练 问题描述 Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。
因为int型会溢出,所以出现负数的解决办法提供两个解决办法:1、原来的定义为int型,改为定义为double型,输入、输出格式都改为%lf2、原来的定义为int型,改为long long,输入、输出格式都改为%lld问题描述Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。资源...原创 2020-02-25 23:55:53 · 3916 阅读 · 1 评论 -
《啊哈!算法》笔记——C语言的桶排序
桶排序比较好玩儿诶笨重//桶排序#include <stdio.h>int main(){ int a[11],i,j,t; for(i=0;i<=10;i++) a[i]=0; //初始化为0 for(i=1;i<=5;i++) { scanf("%d",&t); a[t]++; } for(i=0;i<=10;i+...原创 2020-01-17 22:30:18 · 153 阅读 · 0 评论 -
《啊哈!算法》笔记——C语言的冒泡排序
C语言的冒泡蛮基础啦,记得大一学C语言期末考试就考到这个了,旁边同学的也是,旁边同学的旁边同学(禁止套娃???)也是排序,都是我帮他们做的,敲在我屏幕上,他们再抄过去。那天晚上和这俩哥们看了电影《我不是药神》,然后去网吧包夜了。。。老了老了//冒泡排序#include <stdio.h>int main(){ int a[100],i,j,t,n; scanf("%d"...原创 2020-01-17 22:29:09 · 177 阅读 · 0 评论 -
试题 入门训练 圆的面积 蓝桥杯练习题 C语言
问题描述给定圆的半径r,求圆的面积。输入格式输入包含一个整数r,表示圆的半径。输出格式输出一行,包含一个实数,四舍五入保留小数点后7位,表示圆的面积。说明:在本题中,输入是一个整数,但是输出是一个实数。对于实数输出的问题,请一定看清楚实数输出的要求,比如本题中要求保留小数点后7位,则你的程序必须严格的输出7位小数,输出过多或者过少的小数位数都是不行的,都会被认为错误。实数输出的问题...原创 2020-02-26 21:56:02 · 271 阅读 · 0 评论