代码小集合
quliulangle
路过的风景,回头已不在。
展开
-
(5)细菌实验分组
描述有一种细菌分为A、B两个亚种,它们的外在特征几乎完全相同,仅仅在繁殖能力上有显著差别,A亚种繁殖能力非常强,B亚种的繁殖能力很弱。在一次为时一个小时的细菌繁殖实验中,实验员由于疏忽把细菌培养皿搞乱了,请你编写一个程序,根据实验结果,把两个亚种的培养皿重新分成两组。细菌繁殖能力(繁殖率)的量化标准为一个小时内细菌数量增长的比例(繁殖率 = 一小时后细菌数量 / 原本细菌数量)。两个亚种繁殖能力差异原创 2017-06-29 14:51:52 · 2519 阅读 · 0 评论 -
(3)统计二进制数中1的个数
描述给定一个十进制整数N,求其对应2进制数中1的个数输入第一个整数表示有N组测试数据,其后N行是对应的测试数据,每行为一个整数。输出N行,每行输出对应一个输入。#include<iostream>using namespace std;int main(){ int n; cin >> n;//n次输入 //循环,对每次输入的数进行二进制分解,统计二进制中1的个数原创 2017-06-27 21:28:57 · 386 阅读 · 0 评论 -
(2)奇偶排序
描述输入十个整数,将十个整数按升序排列输出,并且奇数在前,偶数在后。输入输入十个整数输出按照奇偶排序好的十个整数#include<iostream>using namespace std;int main(){ int a[10]; for (int i = 0; i < 10; i++) { cin >> a[i]; } //首先,把奇数原创 2017-06-26 22:27:55 · 744 阅读 · 0 评论 -
(12)逆波兰表达式(递归的应用)
将运算符前置的一种表达式。很简单,没什么要具体说明的。逐个拆就行。#include<iostream>using namespace std;double notation(){ char str[10]; cin >> str; switch (str[0]){ case '+':return notation() + notation(); case '原创 2017-07-02 00:24:24 · 307 阅读 · 0 评论 -
(11)分苹果问题:将m个相同的苹果放到n个相同的盘子中,多少钟分法?
分两种方向考虑:1)有盘子空着 2)所有的盘子上都有苹果 另外,如果盘子的个数大于苹果的个数,也要考虑进去。直接把多余的盘子拿掉,对结果是没有影响的。#include<iostream>using namespace std;int count(int m, int n){//主要是运用递归的思想 if (m <= 1 || n <= 0)原创 2017-07-01 23:58:13 · 4197 阅读 · 2 评论 -
(10)逻辑判断的问题:点评赛车(通过枚举处理逻辑判断问题。)
描述4名专家对4款赛车进行评论1)A说:2号赛车是最好的;2)B说:4号赛车是最好的;3)C说:3号赛车不是最好的;4)D说: B说错了。事实上只有1款赛车最佳,且只有1名专家说对了,其他3人都说错了。请编程输出最佳车的车号,以及说对的专家。输入无输入。输出输出两行。第一行输出最佳车的车号(1-4中的某个数字)。第二行输出说对的专家(A-D中的某个字母)。#include<iostream>usi原创 2017-06-30 21:13:08 · 887 阅读 · 0 评论 -
(9)计算人民币各个面额的数量
描述从键盘输入一指定金额(以元为单位,如345),然后输出支付该金额的各种面额的人民币数量,显示100元,50元,20元,10元,5元,1元各多少张,要求尽量使用大面额的钞票。输入一个小于1000的正整数。输出输出分行,每行显示一个整数,从上到下分别表示100元,50元,20元,10元,5元,1元人民币的张数 使用了一种比较麻烦的算法#include<iostream>using namespa原创 2017-06-30 20:58:14 · 5402 阅读 · 0 评论 -
(1)冒泡法排序代码(另一个应用是找到第K大的数)
#include<iostream>using namespace std;int main(){ int n, a[1000];//一共n个数,n不超过1000.a用来保存这些数 cin >> n; //输入n个数 for (int i = 0; i < n; i++) { cin >> a[i]; } //冒泡,不断比较相原创 2017-06-26 21:58:41 · 602 阅读 · 0 评论 -
(8)分数求和
描述输入n个分数并对他们求和,用约分之后的最简形式表示。比如:q/p = x1/y1 + x2/y2 +….+ xn/yn,q/p要求是归约之后的形式。如:5/6已经是最简形式,3/6需要规约为1/2, 3/1需要规约成3,10/3就是最简形式。PS:分子和分母都没有为0的情况,也没有出现负数的情况输入第一行的输入n,代表一共有几个分数需要求和接下来的n行是分数输出输出只有一行,即归约后的结果很简单原创 2017-06-30 17:37:47 · 1848 阅读 · 0 评论 -
(7)约瑟夫问题
描述约瑟夫问题:有n只猴子,按顺时针方向围成一圈选大王(编号从1到n),从第1号开始报数,一直数到m,数到m的猴子退出圈外,剩下的猴子再接着从1开始报数。就这样,直到圈内只剩下一只猴子时,这个猴子就是猴王,编程求输入n,m后,输出最后猴王的编号。输入每行是用空格分开的两个整数,第一个是 n, 第二个是 m ( 0 < m,n <=300)。最后一行是:0 0输出对于每行输入数据(最后一行除外),输出原创 2017-06-29 16:52:25 · 589 阅读 · 0 评论 -
(6)最大奇数与最小偶数之差的绝对值
描述输入6个正整数,且这6个正整数中至少存在一个奇数和一个偶数。设这6个正整数中最大的奇数为a,最小的偶数为b,求出|a-b|的值输入输入为一行,6个正整数,且6个正整数都小于100输入保证这6个数中至少存在一个奇数和一个偶数输出输出为一行,输出最大的奇数与最小的偶数之差的绝对值#include<iostream>using namespace std;int main(){ int a[6原创 2017-06-29 15:30:39 · 1775 阅读 · 0 评论 -
(4)按从小到大的顺序排列数组中的元素
使用的是选择排序法,先选择最小的数,然后将其放在第一位;然后寻找第二小的数,将其放在第二位;依次类推……#include<iostream>using namespace std;void selectionSort(int arr[], int n){ for (int i = 0; i < n; i++){ //寻找[i,n)区间里的最小值 int mi原创 2017-06-28 14:47:22 · 1354 阅读 · 0 评论