星梦猫想用程序计算 unsigned long long
类型,$50!$ 也远远超过了它能表示的最大值。设计程序,计算并打印出
n 个人从 1 到 n 编号,按编号顺序顺时针围成一圈。从 1 号开始,顺时针不停报数,报到偶数的人出列,直至队伍中只剩 1 人。设计程序,输入 n,计算并打印出最后剩下的人的编号。
“投飞镖”可以近似
“投针”可以近似
- 证明上述式子。
- 设计程序,输入投掷次数,估算
$\pi$ 的值。
分解质因数。例:输入 18
,输出 2*3*3
。
根据 BMI 指数(体重(kg) 除以身高(m) 的平方),判断体重是否正常。(提示:消瘦:$\rm{BMI}<18.5$;正常:$18.5\le\rm{BMI}<24.9$;过重:$24.9\le\rm{BMI}<29.9$;肥胖:$\rm{BMI}\ge 30$)
实现 struct tm strptime(const char* str, const char* format)
函数。
汉诺塔的规则:有三根相邻的柱子,标号为A、B、C,柱子 A 上从下到上按金字塔状叠放着 n 个不同大小的圆盘,要把所有盘子一个一个移动到柱子 B 上,并且始终不能出现大盘子在小盘子上方的情况。
设计程序,输入 n,输出操作步骤。
输入 n(n>1),输出 1 到 n 的所有质数之和。
实现简单的复数结构体,并实现加、减、乘、除运算,以及求模长和辐角。
实现多项式求导。例:输入 3x^4+2x^3+7
,输出 12x^3+6x^2
。
输入行列式的阶数 n,再输入 n*n 个数作为行列式每个位置上的值,输出行列式的值。
制作简易计算器。输入第一个数,再输入运算符号,最后输入第二个数,输出结果。
输入位数 n,输出
- 查找资料,了解高效使用搜索引擎的方法。
- 熟悉键盘,知道如何打出下列符号:
+ - _ / | \ ' " : ; , . ? ! ( ) [ ] { } < > & # *
。 - 在电脑上安装 C 语言开发所需的工具链和编辑器。
- (*)了解编程语言的发展史和分类。
- (*)探索 Compiler Explorer,并了解其功能。
- (*)探索 C++ Refererence,并了解其功能。
- (**)阅读并学习《计算机程序的构造和解释》(英文书名 Structure and Interpretation of Computer Programs,简称 SICP)。
实现 RGB 与 HSV 颜色模型之间的转换。
设计程序,模拟“生命游戏”:
- 世界由 n*n 个方格组成,每个方格有两种状态:要么有生命,要么无生命;
- 每个方格周围的 8 个方格(边 5 个,角 3 个)称为它的“邻居”;
- 在每代演化中,如果某方块有生命且其邻居中的 2 个或 3 个有生命,则该方块在下一代中保持有生命;如果该方块无生命且其邻居中的 3 个有生命,则该方块在下一代中变为有生命;其余情况则保持不变。
首先输入世界大小 n;再输入 n*n 个数,作为第 0 代时的每个方格的状态;最后输入 m 作为演化的代数:输出第 m 代的的演化结果。
设 T
是一个类型,有一个函数 f
,描述一个从 T
到 T
的变换。设 arr
是一个数组:T arr[n]={ /* 初始化 */ };
;
设计一个满足如下要求的函数:如果把 arr
,n
和 f
传入函数,起到如下效果:对 arr
内所有元素进行函数 f
所描述的变换,改变他们的值。
某音乐游戏采取如下规则,计算出衡量玩家水平的评分。
其中,定数是歌曲的属性;准确度的计算公式:
其中,$\rm{AP1}$ 代表玩家达到 AP(All Perfect)的歌曲中定数最高的歌曲的定数;如果无任何歌曲达到 AP,则此项为 0。
设计程序,输入歌曲总数 n(n>0),再输入每首歌曲的定数、音符总数、Perfect 数、Good 数。计算并输出玩家评分。精确到小数点后两位。
输入圆心坐标,圆的半径和点的坐标,判断点和圆的位置关系。
判断给定年份是否为闰年。
解下列方程组:
输入 a,b,c,d,e 和 f:若有无数组解,输出“无数组解”;若只有一组解,输出解;若无解,输出“无解”。
设计一个可动态存储不同类型数据的结构。(提示:类型用 enum
,值用 union
;这种类型用一个包含上述的类型和值的 struct
表示)