题目:猴子吃桃问题。猴子第1天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第2天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,就只剩一个桃子了。求第1天共摘多少个桃子。分析:通过阅读题目,我们可以得到2个关键信息:今天的桃子数量 == 明天的桃子数量 * 2 - 1只吃了9天桃子,第10天还没吃,手上就只有1个了由这2条信息,
问:一个球从100m高度自由落下,每次落地后反弹回原高度的一半,再落下,再反弹。求它在第10次落地时共经过多少米,第10次反弹多高。分析:这道题的代码实现起来非常简单,我们只需要注意一点——把题目读清楚。题目中求的是第10次落地时,经过多少m,而不包括第10次回弹的距离。清楚了这一点后,我们就可以开始用代码实现了:#include <stdio.h> // //球第一次弹跳为100m,
题目有一个分数序列:求出这个数列的前20项之和。分析通过研究这组数列,我们可以看出来:除第一项外,后续每一项的分母都是前一项的分子,分子都是前一项的分母与分子之和。分析完之后,这道题就很简单了。代码实现:#include <stdio.h> int main() { double top = 0.0;//分母 double dow = 0.0;//分子 double ret
企业发放的奖金根据利润提成。(利润用“x”代替)x ≤100000元的,奖金可提成10%100000< x ≤200000元部分,按7.5%提成200000< x ≤400000元部分,按5%提成400000< x ≤600000元部分,按3%提成600000< x ≤1000000元部分,按1.5%提成1000000< x 部分,按1%提成。要求:从键盘输入当月利润
#define _CRT_SECURE_NO_WARNINGS 1 // // 输入一个数 // 1.求出它是几位数 // 2.分别输出它的每一位 // 3.逆序输出它 // 如, // 输入:123 // 输出:3位 1 2 3 321 // #include <stdio.h> #include <math.h> int Num_word(int a) { //1个
从键盘输入一个小于1000的数,输出它的算术平方根,若算数平方根不为整数,则向下取整。#include <stdio.h> #include <math.h> int main() { int a = 0; int b = 0; while (scanf("%d", &a)) { if (a > 0 && a < 100
输入两个升序排列的序列,将两个序列合并为一个有序序列并输出。 输入描述:输入包含三行, 第一行包含两个正整数n, m(1 ≤ n,m ≤ 100),用空格分隔。n表示第二行第一个升序序
用户输入10个数,输出排列好的数,使奇数在偶数之前。如,输入:奇 奇 偶 奇 偶 奇 偶 奇 偶 奇输出:奇 奇 奇 奇 奇 奇 偶 偶 偶 偶(“奇”为奇数,“偶”为偶数) #define _CRT_SECURE_NO_WARNINGS 1 #define SIZE 10 #include <stdio.h> #include <ass
当char类型与int类型的数进行运算时(如下代码),char类型需要进行整型提升。int a = 1; char b = 1; int ret = 0; ret = a + b;那么整型提升的规则是什么呢?(以下皆是在补码上进行补位)有符号数:高位全部补符号位。无符号数:高位直接补0。有符号数如, char b = 1; 1的补码是:000000000000000000000000000000
字节序被分为两类:1. Big-Endian(大端):高位字节排放在内存的低地址端,低位字节排放在内存的高地址端。2.Little-Endian(小端):低位字节排放在内存的低地址端,高位字节排放在内存的高地址端。我们可以利用这2个代码来判断我们的机器是哪一种存储方式(第一个更简洁,第二个则更容易理解里面发生了什么):#include <stdio.h> int main(
如, 输入:I like coding! 输出:coding! like I #define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> #include <assert.h> #include <string.h> void Reverse_arr(char* left, char* right) {
正整数 a 和正整数 b 的最小公倍数,是指能被 a 和 b 整除的最小的正整数。求 a 和 b 的最小公倍数。比如输入5和7,5和7的最小公倍数是35,则需要返回35。#define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> int main() { int a = 0; int b = 0; long long i = 0
1瓶汽水1元,2个空瓶子可兑换1瓶新可乐,问可以喝多少瓶可乐。#define _CRT_SECURE_NO_WARNINGS 1 // // 1瓶汽水1元,2个空瓶子可兑换1瓶新可乐 // #include <stdio.h> int main() { float cash = 0.0f; int coke = 0; printf("How mach cash d
我们将菱形分为2个部分,设上部分为top,则下部分为top-1。这样行数就永远是单数,也就可以成为一个菱形。代码如下:#define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> int main() { int top = 0;//上部行数 int row = 0;//控制换行 int col = 0;//控制列的输出 sca
求0~100000的“水仙花数”。严格来说,三位自幂数才称为水仙花数。但我们这里对其进行了变种,定义“水仙花数”为:一个n位数的每位的n次方相加,刚好等于它本身的数。如:153 == 1^3 + 5^3 + 3^3分析这个题目的关键在于:如何知道这个数是几位数?如何判断这个数是否为“水仙花数”?我们分成2个函数来解决:如何知道这个数是几位数?我们不断地进行n /= 10,当n == 0时,根据循环
如,输入:2 5输出:24690 --- 2 + 22 + 222 + 2222 + 22222 的和分析:我们可以看出来,第1项 == 第2项 == 第3项 == 第4项 == 第5项 == 简化一下,第1项 == a第2项 == 第1项第3项 == 第2项第4项 == 第3项第5项 == 第4项分析完毕,开始写代码:#include <stdio.h> #inc
题目要求:输出一个字符串,长度 0< n <10000,逆向输出它。如,输入:I am a cup.输出:.puc a ma I分析:题目要求我们逆序输出,而不是更改字符串在内存中的存储顺序,所以我们依然写一个函数,然后使用以const修饰的指针来解题。#include <stdio.h> #include <assert.h> #include <str
#include <stdio.h> #include <assert.h> //因为只是读取数组的数据,而不需要做任何修改 //所以我们给形参int* p前面修饰上一个const,以防写出Bug void Print_arr(const int* p, int sz) { assert(p); int i = 0; for (i = 0; i < sz; i
为了遵循“高内聚低耦合”的设计思想,我们这里使用了2个函数,功能如下:判断是什么三角形对不同三角形的进行不同的输出#include <stdio.h> // // 约定返回值: // 直角--------4 // 等腰--------3 // 等边--------2 // 普通--------1 // 不是三角形--0 // int Is_triangle(int a, int b,
通过分析,我们发现年与年之间,天数唯一有可能不同的是2月。所以我们只需要在用户输入的是2月时,去判断该年是否为闰年。如果是,则天数+1。如果不是,则按正常天数输出即可。#define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> int Is_leap_year(int year) { return (((year % 4 == 0)
输出x图形
a:做一个自我介绍。我是专科大三的学生,专业是道路与桥梁工程技术。现在在准备100天后的专升本考试,想跨考CS专业。b:列出你编程的目标。我近3个月的编程目标是通过专升本考试(考的专业课是《C语言程序设计》)。c:你打算怎么学习编程?打算通过看B站“比特鹏哥”的视频、读C语言的书籍以及多写程序多刷题来学习C语言。d:你打算在学习编程这件事上,每周花费多少时间?在编程这件事上,我打算每周花费49个小
学习学语言笔记:认识C语言框架
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号