都是蓝桥杯中的一些基础练习题,希望对大家有帮助。
1.序列求和
求1+2+3+...+n的值。
#include<stdio.h>
int main()
{
long long n,sum=0;
scanf("%I64d",&n);
sum=(1+n)*n/2;
printf("%I64d",sum);
return 0;
}
2.圆的面积
/*给定圆的半径r,求圆的面积。*/
#include<stdio.h>
#define PI 3.14159265358979323
int main()
{
int n;
scanf("%d",&n);
printf("%.7f",PI*n*n);
return 0;
}
3.斐波那契数
/*Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。
当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。*/
#include<stdio.h>
int main()
{
long a,b,fn,n,i;
scanf("%d",&n);
a=1;b=1;
for(i=0;i<n-2;i++)
{
fn=(a+b)%10007;
a=b;b=fn;
}
printf("%d",fn);
return 0;
}
4.01串
/*对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是:
00000
00001
00010
00011
00100
请按从小到大的顺序输出这32种01串。*/
#include<stdio.h>
int main()
{
int i,j,a[5],v,k=0;
for(i=0;i<32;i++)
{
v=i;
for(j=0;j<5;j++)
{
a[j]=v%2;
v=v/2;
}
for(j=4;j>=0;j--)printf("%d",a[j]);
printf("\n");
}
return 0;
}
5.字母图形
/*利用字母可以组成一些美丽的图形,下面给出了一个例子:
ABCDEFG
BABCDEF
CBABCDE
DCBABCD
EDCBABC
这是一个5行7列的图形,请找出这个图形的规律,并输出一个n行m列的图形。*/
#include<stdio.h>
int main()
{
int i,j,n,m;
char a[100][100];
scanf("%d %d",&n,&m);
char b[27]={'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
{
if(i==0)
a[0][j]=b[j];
else {a[i][j]=a[i-1][j-1];a[i][0]=b[i];}
printf("%c",a[i][j]);
}
printf("\n");
}
return 0;
}
6.数列特征
/*给出n个数,找出这n个数的最大值,最小值,和。*/
#include<stdio.h>
int main()
{
int n,i,a[10000],min,max,h=0;
scanf("%d",&n);
for (i=0;i<n;i++)
scanf("%d",&a[i]);
max=min=a[0];
for(i=0;i<n;i++)
{
if(min>a[i])min=a[i];
else if(max<a[i])max=a[i];
h+=a[i];
}
printf("%d\n",max);
printf("%d\n",min);
printf("%d\n",h);
return 0;
}
7.查找整数
/*给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。*/
#include<stdio.h>
int main()
{
int n,a[1000],i,m,k=-1;
scanf("%d",&n);
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
scanf("%d",&m);
for(i=1;i<=n;i++)
{
if(m==a[i])
{k=i;
break;}
}
printf("%d",k);
return 0;
}
8.杨辉三角
/*杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。
它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。
下面给出了杨辉三角形的前4行:
1
1 1
1 2 1
1 3 3 1
给出n,输出它的前n行。*/
#include<stdio.h>
int main()
{
int n,i,a[100][1000],j;
a[0][0]=1;
scanf("%d",&n);
printf("%d \n",a[0][0]);
for(i=1;i<n;i++)
{
for(j=0;j<i+1;j++)
{
a[i][j]=a[i-1][j-1]+a[i-1][j];
printf("%d ",a[i][j]);
}
printf("\n");
}
return 0;
}
9.特殊数字
/*153是一个非常特殊的数,它等于它的每位数字的立方和,即153=1*1*1+5*5*5+3*3*3。
编程求所有满足这种条件的三位十进制数。*/
#include<stdio.h>
int main()
{
int a,b,c,i,j,k;
int sum,t[1000];
for(i=1;i<10;i++)
{ a=i;
for(j=0;j<10;j++)
{ b=j;
for(k=0;k<10;k++)
{ c=k;
sum=a*100+b*10+c;
if(sum==a*a*a+b*b*b+c*c*c)
printf("%d\n",sum);
}
}
}
return 0;
}
10.回文数
/*1221是一个非常特殊的数,它从左边读和从右边读是一样的,编程求所有这样的四位十进制数。*/
#include<stdio.h>
int main()
{
int a,b,c,d,i,j,k,l;
for(i=1;i<10;i++)
{ a=i;
for(j=0;j<10;j++)
{ b=j;
for(k=0;k<10;k++)
{ c=k;
for(l=0;l<10;l++)
{ d=l;
if(a==d&&b==c)printf("%d%d%d%d\n",a,b,c,d);
}
}
}
}
return 0;
}
10.特殊回文
/*123321是一个非常特殊的数,它从左边读和从右边读是一样的。
输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。*/
#include<stdio.h>
int main()
{
int a,b,c,d,e,f,i,j,k,l,p,q,n,sum,sun;
scanf("%d",&n);
for(i=0;i<10;i++)
{ a=i;
for(j=0;j<10;j++)
{ b=j;
for(k=0;k<10;k++)
{ c=k;
for(l=0;l<10;l++)
{ d=l;
for(p=0;p<10;p++)
{ e=p;
for(q=0;q<10;q++)
{ f=q;
sum=a+b+c+d+e+f;
sun=b+c+d+e+f;
if(a==f&&a!=0&&b==e&&c==d&&sum==n)printf("%d%d%d%d%d%d\n",a,b,c,d,e,f);
else if(a==0&&b==f&&c==e&&sun==n)printf("%d%d%d%d%d\n",b,c,d,e,f);
}
}
}
}
}
}
return 0;
}
11.十进制转十六进制
//十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。
给出一个非负整数,将它表示成十六进制的形式。
#include<stdio.h>
int main()
{
int n,i=0,j;
char a[100];
scanf("%d",&n);
if(n==0)printf("%d",n);
else
{
while(n!=0)
{
switch(n%16)
{
case 0:a[i]='0';break;
case 1:a[i]='1';break;
case 2:a[i]='2';break;
case 3:a[i]='3';break;
case 4:a[i]='4';break;
case 5:a[i]='5';break;
case 6:a[i]='6';break;
case 7:a[i]='7';break;
case 8:a[i]='8';break;
case 9:a[i]='9';break;
case 10:a[i]='A';break;
case 11:a[i]='B';break;
case 12:a[i]='C';break;
case 13:a[i]='D';break;
case 14:a[i]='E';break;
case 15:a[i]='F';break;
}
n=n/16;
i++;
}
for(j=i-1;j>=0;j--)printf("%c",a[j]);
}
return 0;
}
12.十六进制转十进制
/*从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。*/
#include<stdio.h>
#include<string.h>
#include<math.h>
int main()
{
char a[100];
int i;
long long n=0;
scanf("%s",&a);
for (i=0;a[i]!='\0';i++)
{
if(a[i]>='A' && a[i]<='F')
a[i]=(a[i]-'A')+10+'0';
n+=((a[i]-'0')*(pow(16,strlen(a)-1-i)));
}
printf("%lld",n);
return 0;
}
13.数列排序
/* 给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200*/
#include<stdio.h>
int main()
{
int n,a[1000],k,temp=0,i,j;
scanf("%d",&n);
if(n<1||n>200)return 0;
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<n-1;i++)
{
k=i;
for(j=i+1;j<n;j++)
{
if(a[j]<a[k])k=j;
}
temp=a[i];
a[i]=a[k];
a[k]=temp;
}
for(i=0;i<n;i++)
printf("%d ",a[i]);
return 0;
}
希望对大家有所帮助哈~
我正在寻找执行以下操作的正确语法(在Perl、Shell或Ruby中):#variabletoaccessthedatalinesappendedasafileEND_OF_SCRIPT_MARKERrawdatastartshereanditcontinues. 最佳答案 Perl用__DATA__做这个:#!/usr/bin/perlusestrict;usewarnings;while(){print;}__DATA__Texttoprintgoeshere 关于ruby-如何将脚
几个月前,我读了一篇关于rubygem的博客文章,它可以通过阅读代码本身来确定编程语言。对于我的生活,我不记得博客或gem的名称。谷歌搜索“ruby编程语言猜测”及其变体也无济于事。有人碰巧知道相关gem的名称吗? 最佳答案 是这个吗:http://github.com/chrislo/sourceclassifier/tree/master 关于ruby-寻找通过阅读代码确定编程语言的rubygem?,我们在StackOverflow上找到一个类似的问题:
?博客主页:https://xiaoy.blog.csdn.net?本文由呆呆敲代码的小Y原创,首发于CSDN??学习专栏推荐:Unity系统学习专栏?游戏制作专栏推荐:游戏制作?Unity实战100例专栏推荐:Unity实战100例教程?欢迎点赞?收藏⭐留言?如有错误敬请指正!?未来很长,值得我们全力奔赴更美好的生活✨------------------❤️分割线❤️-------------------------
HashMap中为什么引入红黑树,而不是AVL树呢1.概述开始学习这个知识点之前我们需要知道,在JDK1.8以及之前,针对HashMap有什么不同。JDK1.7的时候,HashMap的底层实现是数组+链表JDK1.8的时候,HashMap的底层实现是数组+链表+红黑树我们要思考一个问题,为什么要从链表转为红黑树呢。首先先让我们了解下链表有什么不好???2.链表上述的截图其实就是链表的结构,我们来看下链表的增删改查的时间复杂度增:因为链表不是线性结构,所以每次添加的时候,只需要移动一个节点,所以可以理解为复杂度是N(1)删:算法时间复杂度跟增保持一致查:既然是非线性结构,所以查询某一个节点的时候
嗨~大家好,这里是可莉!今天给大家带来的是7个C语言的经典基础代码~那一起往下看下去把【程序一】打印100到200之间的素数#includeintmain(){ inti; for(i=100;i 【程序二】输出乘法口诀表#includeintmain(){inti;for(i=1;i 【程序三】判断1000年---2000年之间的闰年#includeintmain(){intyear;for(year=1000;year 【程序四】给定两个整形变量的值,将两个值的内容进行交换。这里提供两种方法来进行交换,第一种为创建临时变量来进行交换,第二种是不创建临时变量而直接进行交换。1.创建临时变量来
1.postman介绍Postman一款非常流行的API调试工具。其实,开发人员用的更多。因为测试人员做接口测试会有更多选择,例如Jmeter、soapUI等。不过,对于开发过程中去调试接口,Postman确实足够的简单方便,而且功能强大。2.下载安装官网地址:https://www.postman.com/下载完成后双击安装吧,安装过程极其简单,无需任何操作3.使用教程这里以百度为例,工具使用简单,填写URL地址即可发送请求,在下方查看响应结果和响应状态码常用方法都有支持请求方法:getpostputdeleteGet、Post、Put与Delete的作用get:请求方法一般是用于数据查询,
Ⅰ软件测试基础一、软件测试基础理论1、软件测试的必要性所有的产品或者服务上线都需要测试2、测试的发展过程3、什么是软件测试找bug,发现缺陷4、测试的定义使用人工或自动的手段来运行或者测试某个系统的过程。目的在于检测它是否满足规定的需求。弄清预期结果和实际结果的差别。5、测试的目的以最小的人力、物力和时间找出软件中潜在的错误和缺陷6、测试的原则28原则:20%的主要功能要重点测(eg:支付宝的支付功能,其他功能都是次要的)80%的错误存在于20%的代码中7、测试标准8、测试的基本要求功能测试性能测试安全性测试兼容性测试易用性测试外观界面测试可靠性测试二、质量模型衡量一个优秀软件的维度①功能性功
ES一、简介1、ElasticStackES技术栈:ElasticSearch:存数据+搜索;QL;Kibana:Web可视化平台,分析。LogStash:日志收集,Log4j:产生日志;log.info(xxx)。。。。使用场景:metrics:指标监控…2、基本概念Index(索引)动词:保存(插入)名词:类似MySQL数据库,给数据Type(类型)已废弃,以前类似MySQL的表现在用索引对数据分类Document(文档)真正要保存的一个JSON数据{name:"tcx"}二、入门实战{"name":"DESKTOP-1TSVGKG","cluster_name":"elasticsear
关闭。这个问题是off-topic.它目前不接受答案。想改进这个问题吗?Updatethequestion所以它是on-topic用于堆栈溢出。关闭11年前。Improvethisquestion我不经常使用ruby-通常它加起来相当于每两个月或更长时间编写一次脚本。我的大部分编程都是使用C++进行的,这与ruby有很大不同。由于我与ruby之间的差距如此之大,我总是忘记语言的基本方面(比如解析文本文件和其他简单的东西)。我想每天练习一些基本的东西,我想知道是否有一些我可以订阅的网站,并且会向我发送当天的Ruby问题或类似的东西。有人知道这样的站点/Internet服务吗?
如果特定语言环境中缺少翻译,如何配置i18n以使用en语言环境翻译?当前已插入翻译缺失消息。我正在使用RoR3.1。 最佳答案 找到相似的question这里是答案:#application.rb#railswillfallbacktoconfig.i18n.default_localetranslationconfig.i18n.fallbacks=true#railswillfallbacktoen,nomatterwhatissetasconfig.i18n.default_localeconfig.i18n.fallback