蓝桥杯练习题笔记--1000~1015

2024-02-03 02:08

本文主要是介绍蓝桥杯练习题笔记--1000~1015,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

蓝桥杯练习题笔记


文章目录

  • 蓝桥杯练习题笔记
  • 前言
  • 一、1001~1015
    • 1000
    • 1001
    • 1002
    • 1003
    • 1005
    • 1008
    • 1012
    • 1013
    • 1015
  • 总结


前言

例如:随着嵌入式的不断发展,C语言变得十分重要,本文主要介绍了蓝桥杯的练习题,通过习题加深我们的熟练度。


提示:以下是本篇文章正文内容

一、1001~1015

1000

题目:输入两个整数a和b,计算a+b的和。

代码如下(C):

#include<stdio.h>
int main()
{int a,b;while(~scanf("%d%d", &a, &b))//可连续输入printf("%d\n",a+b);return 0;
}

代码如下(C++):

#include<iostream>
using namespace std;
int main()
{int a,b;while(cin>>a>>b) //可连续输入cout<<(a+b)<<endl;return 0;
}

1001

题目:请参照本章例题,编写一个C程序,输出以下信息:

Hello World!

代码如下(C):

#include<stdio.h>
int main()
{printf("**************************\n");printf("Hello World!\n");printf("**************************\n");return 0;
}

代码如下(C++):

#include<iostream>
using namespace std;
int main()
{cout << "**************************" << endl;cout << "Hello World!" << endl;cout << "**************************" << endl;return 0;
}

1002

题目:编写一个程序,输入a、b、c三个值,输出其中最大值。

代码如下(C):

#include<stdio.h>int max(int x, int y)
{return x > y ? x : y;//三目运算符
}int main()
{int a, b, c, m;scanf("%d%d%d", &a, &b, &c);printf("%d", max(max(a, b), c));return 0;
}

代码如下(C++):

/*******************************************************************************#include< algorithm >是C++的标准模版库(STL)中最重要的头文件之一,提供了大量基于迭代器的非成员模板函数。以下将介绍几个常用的库函数:
一、max(),min()和swap()
max(x,y)  //返回两个元素中值最大的元素
min(x,y)  //返回两个元素中值最小的元素
swap(x,y)  //用来交换x和y的值
二、reverse()
反转排序指定范围中的元素,reverse(a,b) 可以将数组指针在[a,b]之间的元素或容器的迭代器在[a,b]范围内的元素进行反转。
三、fill()
fill() 可以把数组或容器中的某一段区间赋为某个相同的值。
四 、 sort()
排序函数,默认为递增排序。
五、next_permutation()
返回给定范围中的元素组成的下一个按字典序的排列,即给出一个序列在全排列中的下一个序列。
********************************************************************************/
#include<iostream>
#include <algorithm>
using namespace std;
int main()
{int a, b, c;cin >> a >> b >> c;int x1 = max(a, b);  // 把 a,b 中大的值赋给 x1int x2 = max(x1, c); // 把 x1,c 中大的值赋给 x2cout << x2 << endl;  // 输出最大值return 0;
}

1003

题目:要将"China"译成密码,译码规律是:用原来字母后面的第4个字母代替原来的字母.

例如,字母"A"后面第4个字母是"E".“E"代替"A”。因此,“China"应译为"Glmre”。

代码如下(C):

#include <stdio.h>
int main()
{char s[11];                             //定义一个长度为10的字符串(注意有结尾符)gets(s);                                //输入字符串for (int i = 0; s[i] != '\0'; i++)      //循环到结尾符'\0'时停止循环{if (s[i] >= 'A' && s[i] <= 'Z')             //判断是否为大写字母{/*** 此处取余数26很巧妙 ***/s[i] = (s[i] + 4 - 'A') % 26 + 'A';     //大写字母后移}if (s[i] >= 'a' && s[i] <= 'z')             //判断是否为小写字母A{s[i] = (s[i] + 4 - 'a') % 26 + 'a';     //小写字母后移}}puts(s);                                //输出字符串return 0;
}

代码如下(C++):

#include<iostream>
using namespace std;
int main()
{char c1, c2, c3, c4, c5;cin >> c1 >> c2 >> c3 >> c4 >> c5;c1 += 4;c2 += 4;c3 += 4;c4 += 4;c5 += 4;cout << c1 << c2 << c3 << c4 << c5 << endl;return 0;
}

1005

题目:输入一个华氏温度,要求输出摄氏温度。公式为 c=5(F-32)/9,取位2小数。

代码如下(C):

#include"stdio.h"
int main()
{double f,c;scanf("%lf", &f);c=5 * (f - 32) / 9;printf("c = %0.2lf", c);return 0;
}

代码如下(C++):

#include<iostream>
#include<iomanip>
using namespace std ;
int main()
{float f ;cin >> f ;float c = 5 * (f - 32) / 9 ;cout << fixed << setprecision(2) << "c=" << c << endl ;/******************************************************fixed是小数点的意思,表示下面要对小数点后进行设置,setprecision是设置精度,括号中的数表示保留几位精度输出, 如果不用fixed,直接使用setprecision(int)则表示保留几位有效数字*******************************************************/return 0 ;
}

1008

题目:给出一百分制成绩,要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’。 90分以及90分以上为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E。

代码如下(C):

#include<stdio.h>
int main()
{int score;scanf("%d",&score); switch(score/10){/***************************************************************C 库函数 int putchar(int char) 把参数 char 指定的字符(一个无符号字符)写入到标准输出 stdout 中。***************************************************************/case 9:putchar('A');break;case 8:putchar('B');break;case 7:putchar('C');break;case 6:putchar('D');break;default:putchar('E');      }
}

代码如下(C++):

#include<bits/stdc++.h>
using namespace std;
int main() {int n;cin>>n;if(n>=90) cout<<"A"<<endl;else if(n<90&&n>=80) cout<<"B"<<endl;else if(n<80&&n>=70) cout<<"C"<<endl;else if(n<70&&n>=60) cout<<"D"<<endl;else cout<<"E"<<endl;return 0;
}

1012

题目:输入一行字符,分别统计出其中英文字母、数字、空格和其他字符的个数。

代码如下(C):

#include<stdio.h>
int main()
{int num=0,letter=0,space=0,other=0;int c;while((c=getchar())!='\n'){if(48<=c&&c<=57)num++;else if(65<=c&&c<=90||97<=c&&c<=122)letter++;else if(c==32)space++;else other++;}printf("%d %d %d %d",letter,num,space,other);return 0;
}

代码如下(C++):

/*******************************************************
头文件:<ctype.h>
函数:(1)int isalpha(int ch);判断ch是否为字母,如果是返回非0,反之返回0;(2)int isdigit(int ch);判断ch是否为数字,如果是返回非0,反之返回0;(3)int islower(int ch);判断ch是否为小写字母,如果是返回非0,反之返回0;(4)int isupper(int ch);判断ch是否为大写字母,如果是返回非0,反之返回0;*******************************************************/
#include <iostream>
#include <cstdio>
#include <cstring>using namespace std;int main ()
{char str[100]; int alpha=0, digit=0, space=0, other=0;gets(str); //字符串的输入 for(int i=0; i<strlen(str); i++){if(isalpha(str[i]))++alpha;else if(isdigit(str[i]))++digit;else if(str[i]==32)++space;else++other;}cout << alpha << " " << digit << " " << space << " " << other << endl;return 0;
} 

1013

题目:求Sn=a+aa+aaa+…+aa…aaa(有n个a)之值,其中a是一个数字,为2。 例如,n=5时=2+22+222+2222+22222,n由键盘输入。

代码如下(C):

#include <stdio.h>
#include <math.h>
int main() 
{int n;scanf("%d", &n);long count = 0;for (int i = 1; i <= n; ++i) count += (2 * (1 - pow(10, i)) / (1 - 10));printf("%d", count);return 0;
}

代码如下(C++):

#include<iostream>
using namespace std;
int main()
{int n;int t = 2;int Sn = 0;cin >> n;for(int m=n; m>0; m--){Sn += t*m;t   = t*10;}cout << Sn << endl;return 0;
}

1015

题目:求以下三数的和,保留2位小数 1~a之和 1~b的平方和 1~c的倒数和

代码如下(C):

#include"stdio.h"
int main()
{double a,b,c,sum1=0,sum2=0,sum3=0,i,sum=0;scanf("%lf",&a);scanf("%lf",&b);scanf("%lf",&c);for(i=1;i<=a;i++)                 //开始和结束非常重要{sum1+=i;    }for(i=1;i<=b;i++){sum2+=i*i;}for(i=1;i<=c;i++){sum3+=1.0/i;                  //注意要用1.0/i}sum=sum1+sum2+sum3;printf("%.2lf",sum);return 0;
}

代码如下(C++):

#include<iostream>
#include<cstdio>
using namespace std ;
int main()
{int a,b,c ;cin>>a>>b>>c ;int nSuma = 0,nSumb = 0 ;//a,b部分和 float fSum = 0,fSumc = 0 ;//总和,c部分和 for(int i = 1;i <= a;i++){nSuma += i ;//直接累加 }for(int i = 1;i <= b;i++){nSumb += i * i ;//平方累加 }for(float i = 1;i <= c;i++){fSumc += 1 / i ;//倒数累加 }fSum = nSuma + nSumb + fSumc ;printf("%.2f\n",fSum) ;//printf更方便格式输出//cout的输出方法:cout<<fixed<<setprecision(2)<<nSum<<endl ; //fixed表示小数点,setprecision()为设置精度 return 0 ;
}

总结

以上就是今天学习的内容,C与C++头文件中提供了大量能使我们快速便捷地处理数据的库函数。

这篇关于蓝桥杯练习题笔记--1000~1015的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/672685

相关文章

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

dp算法练习题【8】

不同二叉搜索树 96. 不同的二叉搜索树 给你一个整数 n ,求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种?返回满足题意的二叉搜索树的种数。 示例 1: 输入:n = 3输出:5 示例 2: 输入:n = 1输出:1 class Solution {public int numTrees(int n) {int[] dp = new int

论文阅读笔记: Segment Anything

文章目录 Segment Anything摘要引言任务模型数据引擎数据集负责任的人工智能 Segment Anything Model图像编码器提示编码器mask解码器解决歧义损失和训练 Segment Anything 论文地址: https://arxiv.org/abs/2304.02643 代码地址:https://github.com/facebookresear

数学建模笔记—— 非线性规划

数学建模笔记—— 非线性规划 非线性规划1. 模型原理1.1 非线性规划的标准型1.2 非线性规划求解的Matlab函数 2. 典型例题3. matlab代码求解3.1 例1 一个简单示例3.2 例2 选址问题1. 第一问 线性规划2. 第二问 非线性规划 非线性规划 非线性规划是一种求解目标函数或约束条件中有一个或几个非线性函数的最优化问题的方法。运筹学的一个重要分支。2

【C++学习笔记 20】C++中的智能指针

智能指针的功能 在上一篇笔记提到了在栈和堆上创建变量的区别,使用new关键字创建变量时,需要搭配delete关键字销毁变量。而智能指针的作用就是调用new分配内存时,不必自己去调用delete,甚至不用调用new。 智能指针实际上就是对原始指针的包装。 unique_ptr 最简单的智能指针,是一种作用域指针,意思是当指针超出该作用域时,会自动调用delete。它名为unique的原因是这个

查看提交历史 —— Git 学习笔记 11

查看提交历史 查看提交历史 不带任何选项的git log-p选项--stat 选项--pretty=oneline选项--pretty=format选项git log常用选项列表参考资料 在提交了若干更新,又或者克隆了某个项目之后,你也许想回顾下提交历史。 完成这个任务最简单而又有效的 工具是 git log 命令。 接下来的例子会用一个用于演示的 simplegit

记录每次更新到仓库 —— Git 学习笔记 10

记录每次更新到仓库 文章目录 文件的状态三个区域检查当前文件状态跟踪新文件取消跟踪(un-tracking)文件重新跟踪(re-tracking)文件暂存已修改文件忽略某些文件查看已暂存和未暂存的修改提交更新跳过暂存区删除文件移动文件参考资料 咱们接着很多天以前的 取得Git仓库 这篇文章继续说。 文件的状态 不管是通过哪种方法,现在我们已经有了一个仓库,并从这个仓

忽略某些文件 —— Git 学习笔记 05

忽略某些文件 忽略某些文件 通过.gitignore文件其他规则源如何选择规则源参考资料 对于某些文件,我们不希望把它们纳入 Git 的管理,也不希望它们总出现在未跟踪文件列表。通常它们都是些自动生成的文件,比如日志文件、编译过程中创建的临时文件等。 通过.gitignore文件 假设我们要忽略 lib.a 文件,那我们可以在 lib.a 所在目录下创建一个名为 .gi

取得 Git 仓库 —— Git 学习笔记 04

取得 Git 仓库 —— Git 学习笔记 04 我认为, Git 的学习分为两大块:一是工作区、索引、本地版本库之间的交互;二是本地版本库和远程版本库之间的交互。第一块是基础,第二块是难点。 下面,我们就围绕着第一部分内容来学习,先不考虑远程仓库,只考虑本地仓库。 怎样取得项目的 Git 仓库? 有两种取得 Git 项目仓库的方法。第一种是在本地创建一个新的仓库,第二种是把其他地方的某个