蓝桥杯 练习系统 基础练习答案Java

蓝桥杯 练习系统 基础练习答案Java
蓝桥杯 练习系统 基础练习答案Java

30

import java.math.BigInteger;

import java.util.*;

public class Main{

protected static ArrayList table = new ArrayList();

static {

table.add(BigInteger.valueOf(1));

}

public static synchronized BigInteger factorial(int x) {

for (int size = table.size(); size <= x; size++) {

BigInteger lastfact = (BigInteger) table.get(size - 1);

BigInteger nextfact = lastfact.multiply(BigInteger.valueOf(size));

table.add(nextfact);

}

return (BigInteger) table.get(x);

}

public static void main(String[] args) {

Scanner s=new Scanner(System.in);

int n=s.nextInt();

System.out.print(factorial(n));

}

}

29

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

public class Main{

public static void main(String[] args) throws NumberFormatException, IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

String s1 = br.readLine();

String s2 = br.readLine();

int a[] = new int[100000];

int b[] = new int[100000];

int l1 = s1.length();

int l2 = s2.length();

for(int i=0; i

a[l1-1-i] = Character.getNumericValue(s1.charAt(i));

}

for(int i=0; i

b[l2-1-i] = Character.getNumericValue(s2.charAt(i));

}

int max = l1>l2?l1:l2;

int c[] = new int[100000];

for(int i=0; i

c[i] = a[i] + b[i];

}

for(int i=0; i

if(c[i]>9){

c[i+1] += c[i]/10;

c[i] = c[i]%10;

}

}

while(c[max-1]>9){

c[max] = c[max-1]/10;

c[max-1] = c[max-1]%10;

max++;

}

for(int i=max-1; i>=0; i--){

System.out.print(c[i]);

}

}

}

28

import java.io.*;

import java.math.BigInteger;

public class Main {

public static void main(String[] args)throws IOException {

BufferedReader buf=new BufferedReader(new InputStreamReader(System.in));

int n=Integer.parseInt(buf.readLine());

String str=buf.readLine();

String s[]=str.split(" ");

int sum=0;

int a[] =new int[n];

int num=0;

for(int i=0;i

a[i]=Integer.parseInt(s[i]);

java.util.Arrays.sort(a);

if(n>1){

sum=a[0]+a[1];

num=sum;

a[1]=num;

for(int j=2;j

if(j

java.util.Arrays.sort(a);

num=a[j-1]+a[j];

a[j]=num;

java.util.Arrays.sort(a);

sum+=num;

}

}

}

else {

sum=a[0];

}

System.out.println(sum);

}

}

27

import java.util.Scanner;

public class Main {

public static int n = 0;

public static int a[] = new int[10];

public static int isa[][] = new int[10][10];

public static boolean flag = false;

public static int sum = 0;

public static boolean judge(int k) {

for (int j = 1; j < k; j++) {

if (Math.abs(j - k) == Math.abs(a[j] - a[k]) || a[j] == a[k])

return false;

}

return true;

}

public static void place(int t) {

if (t > n && !flag) {

flag = true;

place(1);

flag = false;

} else if (t > n && flag) {

sum++;

} else {

for (int i = 1; i <= n; i++) {

if (isa[t][i] == 1) {

int temp = a[t];

a[t] = i;

if (judge(t)) {

isa[t][i] = 2;

place(t + 1);

isa[t][i] = 1;

}

a[t] = temp;

}

}

}

}

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

n = sc.nextInt();

for (int i = 1; i <= n; i++) {

for (int j = 1; j <= n; j++) {

isa[i][j] = sc.nextInt();

}

}

place(1);

System.out.println(sum);

}

}

26

import java.io.*;

public class Main {

public static void main(String[] args)throws IOException {

BufferedReader buf=new BufferedReader(new InputStreamReader(System.in));

String str=buf.readLine();

String s[]=str.split(" ");

StringBuffer bf=new StringBuffer();

int i=Integer.parseInt(s[0]);

int n=Integer.parseInt(s[1]);

switch(i){

case 0:{

bf.append("zero ");

break;

}

case 1:{

bf.append("one ");

break;

}

bf.append("two ");

break;

}

case 3:{

bf.append("three ");

break;

}

case 4:{

bf.append("four ");

break;

}

case 5:{

bf.append("five ");

break;

}

case 6:{

bf.append("six ");

break;

}

case 7:{

bf.append("seven ");

break;

}

case 8:{

bf.append("eight ");

break;

}

case 9:{

bf.append("nine ");

break;

}

case 10:{

bf.append("ten ");

break;

}

case 11:{

bf.append("eleven ");

break;

}

case 12:{

bf.append("twelve ");

break;

}

bf.append("thirteen ");

break;

}

case 14:{

bf.append("fourteen ");

break;

}

case 15:{

bf.append("fifteen ");

break;

}

case 16:{

bf.append("sixteen ");

break;

}

case 17:{

bf.append("seventeen ");

break;

}

case 18:{

bf.append("eighteen ");

break;

}

case 19:{

bf.append("nineteen ");

break;

}

case 20:{

bf.append("twenty ");

break;

}

case 21:{

bf.append("twenty one ");

break;

}

case 22:{

bf.append("twenty two ");

break;

}

case 23:{

bf.append("twenty three ");

break;

}

}

if(n==0){

bf.append("o'clock");

}

else if(n/10<2){

switch(n){

case 1:{

bf.append("one");

break;

}

case 2:{

bf.append("two");

break;

}

case 3:{

bf.append("three");

break;

}

case 4:{

bf.append("Zero");

break;

}

case 5:{

bf.append("five");

break;

}

case 6:{

bf.append("six");

break;

}

case 7:{

bf.append("seven");

break;

}

case 8:{

bf.append("eight");

break;

}

case 9:{

bf.append("nine");

break;

}

case 10:{

bf.append("ten");

break;

}

case 11:{

bf.append("eleven");

break;

}

case 12:{

bf.append("twelve ");

break;

}

case 13:{

bf.append("thirteen ");

break;

}

case 14:{

bf.append("fourteen ");

break;

}

case 15:{

bf.append("fifteen ");

break;

}

case 16:{

bf.append("sixteen ");

break;

}

case 17:{

bf.append("seventeen ");

break;

}

case 18:{

bf.append("eighteen ");

break;

}

case 19:{

bf.append("nineteen ");

break;

}

}

}

else {

switch(n/10){

case 2:{

break;

}

case 3:{

bf.append("thirty ");

break;

}

case 4:{

bf.append("forty ");

break;

}

case 5:{

bf.append("fifty ");

break;

}

}

switch(n%10){

case 1:{

bf.append("one");

break;

}

case 2:{

bf.append("two");

break;

}

case 3:{

bf.append("three");

break;

}

case 4:{

bf.append("four");

break;

}

case 5:{

bf.append("five");

break;

}

case 6:{

bf.append("six");

break;

}

case 7:{

break;

}

case 8:{

bf.append("eight");

break;

}

case 9:{

bf.append("nine");

break;

}

}

}

System.out.println(bf.toString());

}

}

25

import java.io.BufferedReader;

import java.io.InputStreamReader;

import java.io.IOException;

public class Main{

/**

* @param args

*/

public static void main(String[] args)throws IOException{

// TODO Auto-generated method stub

BufferedReader br=new BufferedReader(new InputStreamReader(System.in));

int[] nm=new int[2];

String[] s=br.readLine().split(" ");

for(int i=0;i<2;i++){

nm[i]=Integer.parseInt(s[i]);

}

int m=nm[0],n=nm[1];

//System.out.println(n+" "+m);

int[][] arr=new int[m][n];

for(int i=0;i

String s1=br.readLine();

String[] str=s1.split(" ");

for(int j=0;j

arr[i][j]=Integer.parseInt(str[j]);

}

}

int num=n*m,brr=0;

int i=0,j=0,x=0,y=0,z=0;

for(int ii=0;ii

if(j

brr=arr[i][j];

if(i

i++;

}

x++;

}

else if(j

j++;

y++;

brr=arr[i][j];

}

else if(j==y&&i>z){

i--;

brr=arr[i][j];

}

else if(i==z&&j>z){

j--;

brr=arr[i][j];

if(i==z&&j==z+1){

z++;

i++;

m=m-1;

n=n-1;

x=z;

y=z;

}

}

System.out.print(brr+" ");

}

}

}

24

import java.io.*;

public class Main {

public static void main(String[] args)throws Exception {

BufferedReader bf=new BufferedReader(new InputStreamReader(System.in));

String str[]=bf.readLine().split(" ");

int v1=Integer.parseInt(str[0]);

int v2=Integer.parseInt(str[1]);

int t=Integer.parseInt(str[2]);

int s=Integer.parseInt(str[3]);

int l=Integer.parseInt(str[4]);

int x=0,y=0,time=0;

for(int i=1;i<=l;i++){

if(x-y

x+=v1;

y+=v2;

}

else{

for(int j=1;j<=s;j++){

i=i+1;

y+=v2;

if(y==l)

break;

}

i=i-1;

}

if(x==l||y==l){

time=i;

break;

}

}

if(y==l&&x

System.out.println("T");

if(x==l&&y

System.out.println("R");

if(y==l&&x==l)

System.out.println("D");

System.out.println(time);

}

}

23

import java.io.*;

public class Main {

public static void main(String[] args)throws Exception {

BufferedReader bf=new BufferedReader(new InputStreamReader(System.in));

int n=Integer.parseInt(bf.readLine());

int a[][]=new int[n][n];

int b[]=new int[n*n];

int i=0,j=0;

for(i=0;i

String s[]=bf.readLine().split(" ");

for(j=0;j

a[i][j]=Integer.parseInt(s[j]);

if(a[i][j]==0)

b[j]=b[j]+1;

}

}

for(i=0;i

if(b[i]<=n/2)

System.out.print(i+1+" ");

}

}

22

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

public class Main {

/**

* @param args

* @throws IOException

*/

public static void main(String[] args) throws IOException {

BufferedReader bf=new BufferedReader(new InputStreamReader(System.in));

String s=bf.readLine();

int n=Integer.parseInt(s);

String a="A";

f(n,a,1);

}

private static void f(int n, String a, int i) {

if(n==i){

System.out.println(a);

return;

}

else {

a=a+String.valueOf((char)(i+65))+a;

if(i==n){

System.out.println(a);

return;

}

}

//while(i

f(n,a,i+1);

}

}

21

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

int n = scanner.nextInt();

String string = f(n, 1, 1);

System.out.println(string);

}

private static String f1(int n, int i, int j) {

if (i == n)

return "sin(" + j + ")";

if (i % 2 == 0)

return "sin(" + i + "+" + f1(n, i + 1, j + 1) + ")";

else

return "sin(" + i + "-" + f1(n, i + 1, j + 1) + ")";

}

private static String f(int n, int i, int j) {

if (i == n)

return f1(n, i, j) + "+" + i;

return "(" + f(n, i + 1, j) + ")" + f1(n, i, j) + "+" + i;

}

}

20

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

public class Main{

public static void main(String[] args) throws IOException {

BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

String num = in.readLine();

char[] ch = num.toCharArray();

getRed(ch,num);

}

public static void getRed(char[] ch,String str){

int numL01 = ch.length;

String[] numR01 = new String[numL01];

for(int a = 0;a < numL01;a++){

numR01[a] = getNum(ch[a] + "");

}

int numL02 = 2 * numL01 - 1;

String[] numR02 = new String[numL02];

numR02[0] = numR01[0];

int i01 = 10 - numL01;

int i02 = 1;

for(int a = 1;a < numL02;a++){

if((a%2) == 0){

numR02[a] = numR01[i02];

i02++;

}else{

numR02[a] = getR(i01);

i01++;

}

}

String red = numR02[0];

for(int a = 1;a < numL02;a++){

if(a%2 == 0){

if(red.endsWith("ling ")){

if(getT(numR02[a]))red += numR02[a];

}else{

red += numR02[a];

}

}else{

if(red.endsWith("ling ")){

if(getTR(numR02[a]))red = red.substring(0, red.length() - 5) + numR02[a];

}else{

red += numR02[a];

}

}

}

if(red.endsWith("ling "))red = red.substring(0, red.length() - 5);

if((str.length() > 8)

& (red.startsWith("yi shi "))){

red = red.substring(3);

}

if(red.indexOf(" i wan ")!=-1){

red = red.replaceFirst(" i wan ", " yi ");

}else if(red.indexOf(" i ")!=-1){

red = red.replaceFirst(" i ", " yi ");

}

if(str.length() == 6){

if(red.indexOf("yi shi ")!=-1){

red = red.replaceFirst("yi shi ", "shi ");

}

}

System.out.println(red);

}

public static String getNum(String str){

String[] num = {"ling ","yi ","er ","san ","si ","wu ","liu ","qi ","ba ","jiu "};

str = num[Integer.parseInt(str)];

return str;

}

public static String getR(int i){

String[] red = {"shi ","i ","qian ","bai ","shi ","wan ","qian ","bai ","shi ",""};

return red[i];

}

public static boolean getT(String str){

String[] red = {"yi ","er ","san ","si ","wu ","liu ","qi ","ba ","jiu "};

boolean num = false;

for(int a = 0;a < red.length;a++){

if(str.equals(red[a]))num = true;

if(str.equals(red[a]))break;

}

return num;

}

public static boolean getTR(String str){

boolean r = false;

if((str.equals("wan ")) | (str.equals("i ")))r = true;

return r;

}

}

19

import java.io.*;

public class Main{

public static void main(String args[]) throws IOException {

BufferedReader buf = new BufferedReader(

new InputStreamReader(System.in));

int n = Integer.parseInt(buf.readLine());

String s = buf.readLine();

char c[] = s.toCharArray();

int count = 0, num = 0;

char ch = '0';

int i, k = 0, j;

int b[] = new int[26];

for (i = 0; i < n; i++)

for (i = 0; i < n; i++) {

j = c[i] - 'a';

b[j]++;

}

for (j = 0; j < 26; j++) {

if (b[j] % 2 != 0) {

k++;

ch = (char) (j + 'a');

}

}

if (k >= 2)

System.out.println("Impossible");

else

System.out.println(changes(c, ch, n)); }

public static int changes(char s[], char x, int n) { int i, change = 0, j, k;

for (i = 0; i < n / 2; i++) {

if (s[i] == x) {

for (j = i; j < n - i - 1; j++)

if (s[n - i - 1] == s[j])

break;

change += j - i;

for (k = j; k > i; k--)

s[k] = s[k - 1];

s[i] = s[n - i - 1];

} else {

for (j = n - i - 1; j >= i; j--)

if (s[i] == s[j])

break;

change += n - i - 1 - j;

for (k = j; k < n - i - 1; k++)

s[k] = s[k + 1];

s[n - i - 1] = s[i];

}

}

return change;

}

}

18

import java.io.*;

public class Main

{

public static void main(String[] args)throws IOException

{

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

double[][] arr = new double[2][4];

String tag1[] = br.readLine().split(" ");

String tag2[] = br.readLine().split(" ");

for(int b=0;b<4;b++)

{

arr[0][b] = Double.valueOf(tag1[b]);

}

for(int b=0;b<4;b++)

{

arr[1][b] = Double.valueOf(tag2[b]);

}

double a,b,c,d,e,f,g,h;

a = Math.max(arr[0][0],arr[0][2]);

b = Math.min(arr[0][0],arr[0][2]);

c = Math.max(arr[0][1],arr[0][3]);

d = Math.min(arr[0][1],arr[0][3]);

e = Math.max(arr[1][0],arr[1][2]);

f = Math.min(arr[1][0],arr[1][2]);

g = Math.max(arr[1][1],arr[1][3]);

h = Math.min(arr[1][1],arr[1][3]);

if(a

{

System.out.println("0.00");

}

else

{

double i = (Math.min(a,e)-Math.max(b,f));

double j = (Math.min(c,g)-Math.max(d,h));

String s = String.format("%.2f",i*j);

System.out.println(s);

}

}

}

蓝桥杯练习系统题目汇总c++版

蓝桥杯练习系统题目汇总 入门训练 1. Fibonacci数列 问题描述 Fibonacci数列的递推公式为:F n=F n-1+F n-2,其中F1=F2=1。 当n比较大时,F n也非常大,现在我们想知道,F n除以10007的余数是多少。 输入格式 输入包含一个整数n。 输出格式 输出一行,包含一个整数,表示F n除以10007的余数。 说明:在本题中,答案是要求F n除以10007的余数,因此我们只要能算出这个余数即可,而不需要先计算出F n的准确值,再将计算的结果除以10007取余数,直接计算余数往往比先算出原数再取余简单。 样例输入 10 样例输出 55 样例输入 22 样例输出 7704 数据规模与约定 1 <= n <= 1,000,000。 参考代码:c++ 1.#include 2.#include 3.#define MOD 10007 4.#define MAXN 1000001 5.int n, i, F[MAXN]; 6.int main() 7.{ 8.scanf("%d", &n); 9.F[1] = 1; 10.F[2] = 1; 11.for(i = 3; i <= n; ++i) 12.F[i] = (F[i-1] + F[i-2]) % MOD; 13.printf("%d\n", F[n]);

14.return0; 15.} 2. 实数输出 问题描述 给定圆的半径r,求圆的面积。 输入格式 输入包含一个整数r,表示圆的半径。 输出格式 输出一行,包含一个实数,四舍五入保留小数点后7位,表示圆的面积。 说明:在本题中,输入是一个整数,但是输出是一个实数。 对于实数输出的问题,请一定看清楚实数输出的要求,比如本题中要求保留小数点后7位,则你的程序必须严格的输出7位小数,输出过多或者过少的小数位数都是不行的,都会被认为错误。 实数输出的问题如果没有特别说明,舍入都是按四舍五入进行。 样例输入 4 样例输出 50.2654825 数据规模与约定 1 <= r <= 10000。 提示 本题对精度要求较高,请注意π的值应该取较精确的值。你可以使用常量来表示π,比如PI=3.14159265358979323,也可以使用数学公式来求π,比如PI=atan(1.0)*4。 c++ 1.#include 2.#include 3.int main() 4.{ 5.int r; 6.double s, PI; 7.scanf("%d", &r); 8.PI = atan(1.0) * 4; 9.s = PI * r * r; 10.printf("%.7lf", s); 11.return0; 12.} 3. 求和公式 问题描述 求1+2+3+...+n的值。

蓝桥杯java练习题分类汇总

蓝桥杯java练习题分类汇总 (一)字符串处理类型题目 1.密码破解 据说最早的密码来自于罗马的凯撒大帝。消息加密的办法是:对消息原文中的每个字母,分别用该字母之后的第5个字母替换(例如:消息原文中的每个字母A都分别替换成字母F)。而你要获得消息原文,也就是要将这个过程反过来。 密码字母: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 M 原文字母:V W X Y Z A B C D E F G H I J K L M N O P Q R S T U (注意:只有字母会发生替换,其他非字母的字符不变,并且消息原文的所有字母都是大写的。) 输入:最多不超过100个数据集组成,每个数据集之间不会有空行,每个数据集由3部分组成: 1.起始行:START 2.密码消息:由1到200个字符组成一行,表示凯撒发出的一条消息. 3.结束行:END 在最后一个数据集之后,是另一行:ENDOFINPUT。 输出: 每个数据集对应一行,是凯撒的原始消息。 ?Sample Input START NS BFW, JAJSYX TK NRUTWYFSHJ FWJ YMJ WJXZQY TK YWNANFQ HFZXJX END START N BTZQI WFYMJW GJ KNWXY NS F QNYYQJ NGJWNFS ANQQFLJ YMFS XJHTSI NS WTRJ END START IFSLJW PSTBX KZQQ BJQQ YMFY HFJXFW NX RTWJ IFSLJWTZX YMFS MJ END ENDOFINPUT ?Sample Output IN WAR, EVENTS OF IMPORTANCE ARE THE RESULT OF TRIVIAL CAUSES I WOULD RATHER BE FIRST IN A LITTLE IBERIAN VILLAGE THAN SECOND IN ROME DANGER KNOWS FULL WELL THAT CAESAR IS MORE DANGEROUS THAN HE 2. 判断是否为回文串 形如:“abccba”,“abcba”的串称为回文串(指顺读和倒读都一样的词

2018蓝桥杯试题

2018蓝桥杯C语言b组国赛真题 1.标题:换零钞 x星球的钞票的面额只有:100元,5元,2元,1元,共4种。 小明去x星旅游,他手里只有2张100元的x星币,太不方便,恰好路过x星银行就去换零钱。 小明有点强迫症,他坚持要求200元换出的零钞中2元的张数刚好是1元的张数的10倍, 剩下的当然都是5元面额的。 银行的工作人员有点为难,你能帮助算出:在满足小明要求的前提下,最少要换给他多少张钞票吗? (5元,2元,1元面额的必须都有,不能是0) 注意,需要提交的是一个整数,不要填写任何多余的内容。 手算都可以。。。下面是代码,答案74 1.#include https://www.360docs.net/doc/c42924960.html,ing namespace std; 3.int main(){ 4.for(int i=1;i<40;i++){ 5.for(int j=1;j<200;j++){ 6.if(5*i+2*10*j+1*j==200) 7. cout<<"5*"<

13. 2.标题:激光样式 14.x星球的盛大节日为增加气氛,用30台机光器一字排开,向太空中打 出光柱。 15.安装调试的时候才发现,不知什么原因,相邻的两台激光器不能同时打 开! 16.国王很想知道,在目前这种bug存在的情况下,一共能打出多少种激 光效果? 17.显然,如果只有3台机器,一共可以成5种样式,即: 18.全都关上(sorry, 此时无声胜有声,这也算一种) 19.开一台,共3种 20.开两台,只1种 21.30台就不好算了,国王只好请你帮忙了。 22.要求提交一个整数,表示30台激光器能形成的样式种数。 23.注意,只提交一个整数,不要填写任何多余的内容。 思路很简单,暴力搜索,30个灯光从左到右,从左边第一个开始,第一个可以开关,第二个要根据左边的灯光是否开启来取值,以此类推。。。答案2178309 1.#include 2.#include https://www.360docs.net/doc/c42924960.html,ing namespace std; 4.int ans = 0; 5.int x[31];//0代表关,1代表开 6. 7.void dfs(int index){ 8.if(index == 30){ 9.ans++; 10.return; 11.}

蓝桥杯(客观题)练习题

1.AT89系列单片机提供了两种省电方式:分别是__空闲模式_____和 ___掉电模式______。 2.远距离传输通常应采用__串行______通信。 3.MCS-51单片机有5个中断源,2个优先级,上电复位时,__外部中 断0______中断源优先级级别最高。 4.MCS-51单片机的堆栈区只可设置在_____片内RAM ____(器),堆 栈寄存器SP是____8___位寄存器。 5.MCS-51单片机外部中断请求信号有_电平方式________和脉冲方式, 在电平方式下,当采集到INT0、INT1的有效信号为___低电平______时,激活外部中断。 6.访问89C51片外数据存储器采用的是__寄存器间接_____寻址方式。 7.进行BCD码运算时,只需要在ADD和ADDC后面紧跟一条__DA __A____指令即可。 8.计算机(微处理器)能够直接识别并执行的语言是_机器语言______。 9.十六进制数D/A转换为十进制数是___218 _____,二进制数 10110110转换为十六进制数是__B6______。 10.键盘工作方式有三种,分别是__编程扫描______、___定时扫描 ______和中断扫描方式。 11.A/D转换的基本功能是把___模拟量______变成数字量。 12.溢出标志OV只有在进行___符号数______加法运算时才有意 义,OV=0表示加法运算结果__正确_____,OV=1表示加法运算结果超出了_________所能表达的符号数有效范围。

13.MCS51单片机的外部中断信号请求信号若设定为电平方式,只 有在中断请求引脚上采样到有效的___低电子______信号时,才能激活外部中断,而在脉冲方式时,只有在中断请求引脚上采样到脉冲的____后沿负跳_____有效信号时,才能激活外中断。 14.MCS51单片机的一个机器周期包含了___6______个状态周期, 每个状态周期又可划分为___2______拍节,一个机器周期实际又包含了______12___个震荡周期。 15.PCON寄存器中与串行通信有关的只有D7位(SMOD),该位为 波特率信增位。当SMOD=___1______时,串行口波特率增加1倍,当SMOD=_____0____时,串行口波特率为设定值。 16.外围的扩展芯片的选择方法有两种方式,它们分别是___线选法 ______和_____译码法____。 17.定时器的计数方式是对来自T0,T1引脚的脉冲计数,输入的 外部脉冲在___负跳变______时有效,计数器加1,定时功能也是通过计数器计数来实现的,定时功能下的计数脉冲来自单片机内部的____时针_____电路。 18.MCS-51单片机片内共有____128_____字节单元的RAM。 19.若MCS-51单片机的程序状态字PSW中的RSI,RS0=11,那么, 工作寄存器R0~R7的直接地址为__18H-1FH_______。 20.I/O编址技术有____独立编址_____和____统一编址_____两种方式。 21.I/O数据传送的控制方式有___中断驱动方式______,程序查询方 式和____通道控制方式_____。

蓝桥杯2016年JavaB组省赛题

2016年JavaB组省赛题 1.煤球数目 (结果填空) 有一堆煤球,堆成三角棱锥形。具体: 第一层放1个, 第二层3个(排列成三角形), 第三层6个(排列成三角形), 第四层10个(排列成三角形), .... 如果一共有100层,共有多少个煤球? 请填表示煤球总数目的数字。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 2.生日蜡烛 (结果填空) 某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。现在算起来,他一共吹熄了236根蜡烛。 请问,他从多少岁开始过生日party的? 请填写他开始过生日party的年龄数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 3.凑算式 (结果填空) B DEF A + --- + ------- = 10 C GHI (如果显示有问题,可以参见【图1.jpg】) 这个算式中A~I代表0~9的数字,不同的字母代表不同的数字。 比如: 6+8/3+952/714 就是一种解法, 5+3/1+972/486 是另一种解法。

这个算式一共有多少种解法? 注意:你提交应该是个整数,不要填写任何多余的内容或说明性文字。 5.抽签 (代码填空) X星球要派出一个5人组成的观察团前往W星。 其中: A国最多可以派出4人。 B国最多可以派出2人。 C国最多可以派出2人。 .... 那么最终派往W星的观察团会有多少种国别的不同组合呢? 下面的程序解决了这个问题。 数组a[] 中既是每个国家可以派出的最多的名额。 程序执行结果为: DEFFF CEFFF CDFFF CDEFF CCFFF CCEFF CCDFF CCDEF BEFFF BDFFF BDEFF BCFFF BCEFF BCDFF BCDEF

蓝桥杯练习系统题目汇总

蓝桥杯练习系统题目汇总: 入门训练 1. Fibonacci数列 问题描述 Fibonacci数列的递推公式为:F n=F n-1+F n-2,其中F1=F2=1。 当n比较大时,F n也非常大,现在我们想知道,F n除以10007的余数是多少。 输入格式 输入包含一个整数n。 输出格式 输出一行,包含一个整数,表示F n除以10007的余数。 说明:在本题中,答案是要求F n除以10007的余数,因此我们只要能算出这个余数即可,而不需要先计算出F n的准确值,再将计算的结果除以10007取余数,直接计算余数往往比先算出原数再取余简单。 样例输入 10 样例输出 55 样例输入 22 样例输出 7704 数据规模与约定 1 <= n <= 1,000,000。 参考代码:c++ 1.#include 2.#include 3.#define MOD 10007 4.#define MAXN 1000001 5.int n, i, F[MAXN]; 6.int main() 7.{ 8.scanf("%d", &n); 9.F[1] = 1; 10.F[2] = 1; 11.for(i = 3; i <= n; ++i) 12.F[i] = (F[i-1] + F[i-2]) % MOD; 13.printf("%d\n", F[n]); 14.return0; 15.}

java: 1.import java.util.Scanner; 2.public class Main{ 3.public static void main(String[] args) { 4.Scanner scanner = new Scanner(System.in) ; 5.int num = scanner.nextInt() ; 6.int[] a = new int[num+2] ; 7.a[1] = a[2] = 1; 8.if(num == 1) { 9.a[num] = 1 ; 10.}else if(num == 2) { 11.a[num] = 1 ; 12.}else{ 13.for(int i = 3; i <= num; i++) { 14.a[i] = (a[i - 1] + a[i - 2] ) % 10007 ; 15.} 16.} 17.System.out.println(a[num]); 18.} 19.} 2. 实数输出 问题描述 给定圆的半径r,求圆的面积。 输入格式 输入包含一个整数r,表示圆的半径。 输出格式 输出一行,包含一个实数,四舍五入保留小数点后7位,表示圆的面积。 说明:在本题中,输入是一个整数,但是输出是一个实数。 对于实数输出的问题,请一定看清楚实数输出的要求,比如本题中要求保留小数点后7位,则你的程序必须严格的输出7位小数,输出过多或者过少的小数位数都是不行的,都会被认为错误。 实数输出的问题如果没有特别说明,舍入都是按四舍五入进行。 样例输入 4 样例输出 50.2654825 数据规模与约定

2016年度蓝桥杯java高职C组

2016年蓝桥杯Java C组考试题(考试日期2016/3/20日)第一题: 有奖猜谜 小明很喜欢猜谜语。 最近,他被邀请参加了X星球的猜谜活动。 每位选手开始的时候都被发给777个电子币。 规则是:猜对了,手里的电子币数目翻倍, 猜错了,扣除555个电子币, 扣完为止。 小明一共猜了15条谜语。 战果为:vxvxvxvxvxvxvvx 其中v表示猜对了,x表示猜错了。 请你计算一下,小明最后手里的电子币数目是多少。 请填写表示最后电子币数目的数字。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 public static void main(String[] args) { int n=777; for(int i=1;i<=12;i++) { if(i%2!=0) { n=n*2; } else n=n-555; } n=n*2; n=n*2; n=n-555; System.out.println(n); } 答案:58497

第二题: 煤球数目 有一堆煤球,堆成三角棱锥形。具体: 第一层放1个, 第二层3个(排列成三角形), 第三层6个(排列成三角形), 第四层10个(排列成三角形), .... 如果一共有100层,共有多少个煤球? 请填表示煤球总数目的数字。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 public static void main(String[] args) { int sum[]=new int[101]; int sum1=0; int s=0; for(int i=1;i<=100;i++) { sum1=sum1+i; sum[i]=sum1; s=s+sum[i]; } System.out.println(s); } 答案:171700 第三题: 平方怪圈 如果把一个正整数的每一位都平方后再求和,得到一个新的正整数。 对新产生的正整数再做同样的处理。 如此一来,你会发现,不管开始取的是什么数字, 最终如果不是落入1,就是落入同一个循环圈。 请写出这个循环圈中最大的那个数字。

2014第五届蓝桥杯JAVA本科B组试题及答案

2014第五届蓝桥杯JAVA本科B组试题及答案 1. 武功秘籍小明到X山洞探险 2000 10页和第1111页和第12页不在同一张纸上。 小明只想练习该书的第81页到第92 撕 80,81 82,8384,8586,87888990,9192,93 2. 切面条2根面条。 如果先对折13根面条。 如果连续对折25根面条。 10 1025 import java.util.Scanner; public class Main { public static void main(String []args){ Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int num = (int)Math.pow(2, n) + 1; System.out.println(num); //结果:2015 } } 3. 猜字母把abcd...s共19个字母组成的序列重复拼接1062014的串。

接下来删除第1a35个等所有奇数位置的 字母。 写 出该字母。 q import java.util.Scanner; /** * 该程序类似与约瑟夫环的问题 */ public class Main { public static void main(String[] args) { Scanner s = new Scanner(System.in); String str = "abcdefghijklmnopqrs"; String str1 = ""; for(int i = 0;i < 106;i++){ str1 = str1 + str;

蓝桥杯Java试题

1. 历届试题核桃的数量 问题描述 小张是软件项目经理,他带领3个开发组。工期紧,今天都在加班呢。为鼓舞士气,小张打算给每个组发一袋核桃(据传言能补脑)。他的要求是: 1. 各组的核桃数量必须相同 2. 各组内必须能平分核桃(当然是不能打碎的) 3. 尽量提供满足1,2条件的最小数量(节约闹革命嘛)输入格式 输入包含三个正整数a, b, c,表示每个组正在加班的人数,用空格分开(a,b,c<30) 输出格式 输出一个正整数,表示每袋核桃的数量。 样例输入1 2 4 5 样例输出1 20

样例输入2 3 1 1 样例输出2 3 JAVA 源代码 1import java.util.Scanner; 2public class Main { 3 4public static void main(String[] args){ 5 Scanner sc=new Scanner(System.in); 6int a=sc.nextInt(); 7int b=sc.nextInt(); 8int c=sc.nextInt(); 9int i; 10for(i=1;;i++){ 11if(i%a==0&&i%b==0&&i%c==0) 12 13break; 14 } 15 System.out.println(i); 16 }} 2.基础练习Sine之舞 时间限制:1.0s 内存限制:512.0MB 问题描述 最近FJ为他的奶牛们开设了数学分析课,FJ知道若要学

好这门课,必须有一个好的三角函数基本功。所以他准备和奶牛们做一个“Sine之舞”的游戏,寓教于乐,提高奶牛们的计算能力。 不妨设 An=sin(1–sin(2+sin(3–sin(4+...sin(n))...) Sn=(...(A1+n)A2+n-1)A3+...+2)An+1 FJ想让奶牛们计算Sn的值,请你帮助FJ打印出Sn的完整表达式,以方便奶牛们做题。 输入格式 仅有一个数:N<201。 输出格式 请输出相应的表达式Sn,以一个换行符结束。输出中不得含有多余的空格或换行、回车符。 样例输入 3 样例输出 ((sin(1)+3)sin(1–sin(2))+2)sin(1–sin(2+sin( 3)))+1 语言JAVA 源代码17import java.util.Scanner; 18public class Main { 19private static int m; 20public static void main(String[] args){ 21 Scanner sc=new Scanner(System.in); 22 m=sc.nextInt(); 23for(int i=0;i

蓝桥杯练习题库 3算法训练题.(DOC)

算法训练图形显示 时间限制:1.0s 内存限制:512.0MB 查看参考代码 问题描述 编写一个程序,首先输入一个整数,例如5,然后在屏幕上显示如下的图形(5表示行数): * * * * * * * * * * * * * * * #include int main() {int i,j,a[100][100],n; while(scanf("%d",&n)!=EOF) {for(i=0;i

9 2 30 样例输出 30 9 2 #include #include #define num 100 int main(void) { int i,j,t,a[3]={0}; for (i=0;i<3;i++) { scanf("%d",&a[i]); } for (i=0;i<3;i++) for (j=i;j<3;j++) if (a[i]<=a[j]){t=a[i];a[i]=a[j];a[j]=t;} for (i=0;i<3;i++) { printf("%d",a[i]); if(i!=2) printf(" "); } printf("\n"); return 0; } 算法训练2的次幂表示 时间限制:1.0s 内存限制:512.0MB 查看参考代码 问题描述 任何一个正整数都可以用2进制表示,例如:137的2进制表示为10001001。 将这种2进制表示写成2的次幂的和的形式,令次幂高的排在前面,可得到如下表达式:137=2^7+2^3+2^0 现在约定幂次用括号来表示,即a^b表示为a(b) 此时,137可表示为:2(7)+2(3)+2(0) 进一步:7=2^2+2+2^0 (2^1用2表示) 3=2+2^0 所以最后137可表示为:2(2(2)+2+2(0))+2(2+2(0))+2(0)

蓝桥杯算法vip训练习题与答案带测试数据1

算法训练 编号:ALGO-1 题目:区间k大数查询列 关键字:排序查找 类型:普通试题 问题描述 给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个。 输入格式 第一行包含一个数n,表示序列长度。 第二行包含n个正整数,表示给定的序列。 第三个包含一个正整数m,表示询问个数。 接下来m行,每行三个数l,r,K,表示询问序列从左往右第l个数到第r个数中,从大往小第K大的数是哪个。序列元素从1开始标号。 输出格式 总共输出m行,每行一个数,表示询问的答案。

样例输入 5 1 2 3 4 5 2 1 5 2 2 3 2 样例输出 4 2 数据规模与约定 对于30%的数据,n,m<=100; 对于100%的数据,n,m<=1000; 保证k<=(r-l+1),序列中的数<=1000000。本题的Java参考代码如下: import java.io.BufferedInputStream; import java.io.IOException; import java.util.Arrays; public class Main {

private static BufferedInputStream in = new BufferedInputStream(System.in);//回顾一下 public static void main(String[] args) throws IOException、//回顾 { int[] nums = new int[readInt()];//重点看一下 for(int i=0; i0; i--) { int a = readInt(); int b = readInt(); int c = readInt();//?? int[] tn = new int[b-a+1]; for(int j=0; j

2017年蓝桥杯省赛赛前集训题(共14题)

第1题:星系炸弹(2015年省赛C/C++B组第2题)在X星系的广袤空间中漂浮着许多X星人造“炸弹”,用来作为宇宙中的路标。 每个炸弹都可以设定多少天之后爆炸。 比如:阿尔法炸弹2015年1月1日放置,定时为15天,则它在2015年1月16日爆炸。 有一个贝塔炸弹,2014年11月9日放置,定时为1000天,请你计算它爆炸的准确日期。 请填写该日期,格式为yyyy-mm-dd 即4位年份2位月份2位日期。比如:2015-02-19 请严格按照格式书写。不能出现其它文字或符号。 ?结果:2017-08-05 ?解决方法:用Excel拖 这个题会了的同学们把上课讲过的,课件上的,其他几道Excel拖动题都做一遍。 第2题:(2015年校内选拔赛C/C++B组第3题)如果x的x次幂结果为10(参见【图1.png】),你能计算出x的近似值吗? 显然,这个值是介于2和3之间的一个数字。 请把x的值计算到小数后6位(四舍五入),并填写这个小数值。 注意:只填写一个小数,不要写任何多余的符号或说明。 #include #include

#include using namespace std; int main() { double x; for(x=2;x<=3;x+=1e-7) { if (abs(pow(x,x)-10)<1e-6) cout<

蓝桥杯所有真题

2012(1) 假设有两种微生物X和Y,X出生后每隔3分钟分裂一次(数目加倍),Y出生后每隔2分钟分裂一次(数目加倍)。一个新出生的X,半分钟之后吃掉1个Y,并且,从此开始,每隔1分钟吃1个Y。现在已知有新出生的X=10, Y=89,求60分钟后Y的数目。如果X=10,Y=90 呢?本题的要求就是写出这两种初始条件下,60分钟后Y的数目。题目的结果令你震惊吗?这不是简单的数字游戏!真实的生物圈有着同样脆弱的性质!也许因为你消灭的那只Y 就是最终导致Y 种群灭绝的最后一根稻草!请忍住悲伤,把答案写在“解答.txt”中,不要写在这里!(循环) 2012(2) 福尔摩斯到某古堡探险,看到门上写着一个奇怪的算式:ABCDE * ? = EDCBA。他对华生说:“ABCDE应该代表不同的数字,问号也代表某个数字!”华生:“我猜也是!”于是,两人沉默了好久,还是没有算出合适的结果来。请你利用计算机的优势,找到破解的答案。把ABCDE 所代表的数字写出来。 答案写在“解答.txt”中,不要写在这里!(循环、递归) 2012(3) 有一群海盗(不多于20人),在船上比拼酒量。过程如下:打开一瓶酒,所有在场的人平分喝下,有几个人倒下了。再打开一瓶酒平分,又有倒下的,再次重复...... 直到开了第4瓶酒,坐着的已经所剩无几,海盗船长也在其中。当第4瓶酒平分喝下后,大家都倒下了。等船长醒来,发现海盗船搁浅了。他在航海日志中写到:“......昨天,我正好喝了一瓶.......奉劝大家,开船不喝酒,喝酒别开船......”。请你根据这些信息,推断开始有多少人,每一轮喝下来还剩多少人。如果有多个可能的答案,请列出所有答案,每个答案占一行。格式是:人数,人数,...例如,有一种可能是:20,5,4,2,0。答案写在“解答.txt”中,不要写在这里!(循环、递归) #include void main() { int i,j,k,l; for(i=4;i<21;i++) { for(j=3;j

蓝桥杯C语言本科B组预赛试题

蓝桥杯C语言本科B组预赛试题

————————————————————————————————作者:————————————————————————————————日期:

2014蓝桥杯C/C++语言本科B组预赛试题(完整) 1.啤酒和饮料 啤酒每罐2.3元,饮料每罐1.9元。小明买了若干啤酒和饮料,一共花了82.3元。 我们还知道他买的啤酒比饮料的数量少,请你计算他买了几罐啤酒。 注意:答案是一个整数。请通过浏览器提交答案。 不要书写任何多余的内容(例如:写了饮料的数量,添加说明文字等)。 2.切面条 一根高筋拉面,中间切一刀,可以得到2根面条。 如果先对折1次,中间切一刀,可以得到3根面条。 如果连续对折2次,中间切一刀,可以得到5根面条。 那么,连续对折10次,中间切一刀,会得到多少面条呢? 答案是个整数,请通过浏览器提交答案。不要填写任何多余的内容。 3.李白打酒

话说大诗人李白,一生好饮。幸好他从不开车。 一天,他提着酒壶,从家里出来,酒壶中有酒2斗。他边走边唱: 无事街上走,提壶去打酒。 逢店加一倍,遇花喝一斗。 这一路上,他一共遇到店5次,遇到花10次,已知最后一次遇到的是花,他正好把酒喝光了。 请你计算李白遇到店和花的次序,可以把遇店记为a,遇花记为b。则:babaabbabbabbbb就是合理的次序。像这样的答案一共有多少呢?请你计算出所有可能方案的个数(包含题目给出的)。 注意:通过浏览器提交答案。答案是个整数。不要书写任何多余的内容。 4.史丰收速算 史丰收速算法的革命性贡献是:从高位算起,预测进位。不需要九九表,彻底颠覆了传统手算! 速算的核心基础是:1位数乘以多位数的乘法。 其中,乘以7是最复杂的,就以它为例。 因为,1/7是个循环小数:0.142857...,如果多位数超过142857...,就要进1 同理,2/7,3/7, ...6/7 也都是类似的循环小数,多位数超过n/7,就要进n

蓝桥杯试题C语言答案

1、A、B、C、D、E五名学生有可能参加计算机竞赛,根据下列条件判断哪些 人参加了竞赛: (1)A参加时,B也参加; (2)B和C只有一个人参加; (3)C和D或者都参加,或者都不参加; (4)D和E中至少有一个人参加; (5)如果E参加,那么A和D也都参加。 00110 c、d #include<> int main() { int a,b,c,d,e; /*0表示不参加, 1表示参加.*/ for(a=0;a<2;a++) for(b=0;b<2;b++) for(c=0;c<2;c++) for(d=0;d<2;d++) for(e=0;e<2;e++) { if(a&&!b) continue; if(b&&c||!b&&!c) continue; if(c&&!d||!c&&d) continue; if(!d&&!e) continue; if(e&&(!a||!d)) continue; printf("%d%d%d%d%d",a,b,c,d,e); } return 0; } 2、某侦察队接到一项紧急任务,要求在A、B、C、D、E、F六个队员中尽可能多地挑若干人,但有以下限制条件: 1)A和B两人中至少去一人; 2)A和D不能一起去; 3)A、E和F三人中要派两人去; 4)B和C都去或都不去; 5)C和D两人中去一个; 6)若D不去,则E也不去。 试编写一个程序,输出问应当让哪几个人去? #include<> int main() { int a,b,c,d,e,f; for(a=1;a>=0;a--) for(b=1;b>=0;b--)/*1:去 0:不去*/ for(c=1;c>=0;c--)

蓝桥杯java高职C组

蓝桥杯j a v a高职C组文档编制序号:[KK8UY-LL9IO69-TTO6M3-MTOL89-FTT688]

2016年蓝桥杯Java C组考试题(考试日期2016/3/20日)第一题: 有奖猜谜 小明很喜欢猜谜语。 最近,他被邀请参加了X星球的猜谜活动。 每位选手开始的时候都被发给777个电子币。 规则是:猜对了,手里的电子币数目翻倍, 猜错了,扣除555个电子币, 扣完为止。 小明一共猜了15条谜语。 战果为:vxvxvxvxvxvxvvx 其中v表示猜对了,x表示猜错了。 请你计算一下,小明最后手里的电子币数目是多少。 请填写表示最后电子币数目的数字。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 public static void main(String[] args) { int n=777; for(int i=1;i<=12;i++) { if(i%2!=0) { n=n*2;

} else n=n-555; } n=n*2; n=n*2; n=n-555; System.out.println(n); } 答案:58497 第二题: 煤球数目 有一堆煤球,堆成三角棱锥形。具体: 第一层放1个, 第二层3个(排列成三角形), 第三层6个(排列成三角形), 第四层10个(排列成三角形), .... 如果一共有100层,共有多少个煤球? 请填表示煤球总数目的数字。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。

public static void main(String[] args) { int sum[]=new int[101]; int sum1=0; int s=0; for(int i=1;i<=100;i++) { sum1=sum1+i; sum[i]=sum1; s=s+sum[i]; } System.out.println(s); } 答案:171700 第三题: 平方怪圈 如果把一个正整数的每一位都平方后再求和,得到一个新的正整数。对新产生的正整数再做同样的处理。 如此一来,你会发现,不管开始取的是什么数字, 最终如果不是落入1,就是落入同一个循环圈。 请写出这个循环圈中最大的那个数字。 请填写该最大数字。

第七届蓝桥杯Java B组省赛答案

package com.diqijie.shengsai; /** * @author leibaobao * 煤球数目 * 解:100层为1+2+3....+100 = 5050 */ publicclass _1 { publicstaticvoid main(String[] args) { // TODO Auto-generated method stub int sum = 0; for(int i = 1; i <= 100; i++){ for(int j = 1; j <= i; j++) sum += j; } System.out.println(sum); } }

package com.diqijie.shengsai; /** * @author leibaobao * 生日蜡烛 * 解:人最大也不过100岁,不要想太多。暴力一点 */ publicclass _2 { publicstaticvoid main(String[] args) { // TODO Auto-generated method stub int sum = 0; for(int i = 0; i < 100; i++){ for(int j = i; j < 100; j++){ sum += j; if(sum == 236) System.out.println(i); } sum = 0; } }

}

package com.diqijie.shengsai; import java.util.HashSet; /** * @author leibaobao * 凑算式 * 解:前几题不要多想,暴力一点。但是Java能不用大数不要去用大数 * 麻烦,慢。这题通分加for循环不就OK了吗 */ publicclass _3 { publicstaticvoid main(String[] args) { // TODO Auto-generated method stub int count = 0; for(int a = 1; a < 10; a++) for(int b = 1; b < 10; b++) for(int c = 1; c < 10; c++) for(int d = 1; d < 10; d++) for(int e = 1; e < 10; e++)

蓝桥杯模拟题加真题

Fibonacci数列的递推公式为:F n=F n-1+F n-2,其中F1=F2=1。 当n比较大时,F n也非常大,现在我们想知道,F n除以10007的余数是多少。 输入格式 输入包含一个整数n。 输出格式 输出一行,包含一个整数,表示F n除以10007的余数。 说明:在本题中,答案是要求F n除以10007的余数,因此我们只要能算出这个余数即可,而不需要先计算出F n的准确值,再将计算的结果除以10007取余数,直接计算余数往往比先算出原数再取余简单。 样例输入 10 样例输出 55 样例输入 22 样例输出 7704 数据规模与约定 1 <= n <= 1,000,000 1.#include 2.#include 3.#define MOD 10007 4.#define MAXN 1000001 5.int n, i, F[MAXN]; 6.int main() 7.{ 8.scanf("%d", &n); 9.F[1] = 1; 10.F[2] = 1; 11.for (i = 3; i <= n; ++i) 12.F[i] = (F[i-1] + F[i-2]) % MOD; 13.printf("%d\n", F[n]); 14.return 0; 15.} 2、问题描述 给定圆的半径r,求圆的面积。 输入格式 输入包含一个整数r,表示圆的半径。

输出一行,包含一个实数,四舍五入保留小数点后7位,表示圆的面积。 说明:在本题中,输入是一个整数,但是输出是一个实数。 对于实数输出的问题,请一定看清楚实数输出的要求,比如本题中要求保留小数点后7位,则你的程序必须严格的输出7位小数,输出过多或者过少的小数位数都是不行的,都会被认为错误。 实数输出的问题如果没有特别说明,舍入都是按四舍五入进行。 样例输入 4 样例输出 50.2654825 数据规模与约定 1 <= r <= 10000。 提示 本题对精度要求较高,请注意π的值应该取较精确的值。你可以使用常量来表示π,比如PI=3.14159265358979323,也可以使用数学公式来求π,比如PI=atan(1.0)*4。 1.#include 2.#include 3. 4.int main() 5.{ 6.int r; 7.double s, PI; 8.scanf("%d", &r); 9.PI = atan(1.0) * 4; 10.s = PI * r * r; 11.printf("%.7lf", s); 12.return 0; 13.} 3、问题描述 求1+2+3+...+n的值。 输入格式 输入包括一个整数n。 输出格式 输出一行,包括一个整数,表示1+2+3+...+n的值。 样例输入 4 样例输出 10 样例输入

相关文档
最新文档