C语言 百炼成钢7
//题目19:一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程找出1000以内的所有完数。 #define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<math.h> //分析:首先必须求出该数所有的因子 //方法1(不推荐)
void maina(){
int arr[][] = {};
int arr2[] = { };
int index = ;
int index2 = ;
int temp = ;
int temp2 = ;
for (int j = ; j < ; j++)
{
temp = ;
temp2 = ;
index = ;
//计算出该数所有的因数
for (int i = ; i < j; i++)
{
if (j%i == )
{
arr[j][index] = i;
index++;
}
} if (arr[j][] != )
{
while (arr[j][temp] != ){
temp2 += arr[j][temp];
temp++;
}
if (temp2 == j)
{
arr2[index2] = j;
index2++;
}
}
}
for (int k = ; k < index2; k++)
{
printf("\n%d", arr2[k]);
}
system("pause");
} //方法2
void main(){
//int k[50] = { 0 };
int s=,n=;
for (int i = ; i < ; i++)
{
s = i;
n = ;
for (int j = ; j < i; j++)
{
if (i%j==)
{
//用这个数不断的减去因子
s = s - j;
}
}
//证明是完数
if (s==)
{
printf("\n完数是%d",i);
}
}
system("pause");
}

//题目20:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在
//第10次落地时,共经过多少米?第10次反弹多高? #define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<math.h> //分析:1--100,2--50,3--25,4--12.5...,就是每次的高度是上次的1/2,即f(n)=0.5*f(n-1);
//这种由前面的值决定后面值的办法,可以使用递归
//第一次落地,经过100米,第二次经过f(1)+f(2)
//第十次落地就是前9次相加之和 double run(int n){
if (n==)
{
return 100.0;
}
else{
return 0.5*run(n - );
}
} void main(){
int n = ;
double sun = 0.0;
for (int i = ; i <; i++)
{
if (i==)
{
//第一次只有上没有下,所以经过的是100米
sun = 100.0;
}
else{
//第二次会先跳上去,再跳下来
sun += *run(i + );
} }
printf("第10次落地时,共经过%lf米,第10次反弹%lf米",sun,run()); system("pause");
}

//题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个
//第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下
//的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。 #define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<math.h> //分析:该题也是前一天,后一天的问题,可以考虑使用递归
//第一天剩下的桃子为f(1);那么第二天剩下的桃子数目就是f(2)=f(1)*0.5-1,即f(1)=2*(f(2)+1);第三天f(2)=2*(f(3)+1);
//由此可知:f(9)=2*(f(10)+1); int run(int n){
if (n==)
{
return ;
}
else{
return * (run(n+) + );
}
} void main(){
printf("第一天共摘了%d桃子\n", run()); system("pause");
}

C语言 百炼成钢7的更多相关文章
- C语言 百炼成钢19
/* 题目55: 有一个字符串符合以下特征(”abcdef,acccd,eeee,aaaa,e3eeeee,sssss,";),要求写一个函数(接口),输出以下结果 1) 以逗号分割字符串, ...
- C语言 百炼成钢3
//题目7:用*号输出空心菱形图案 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> # ...
- C语言 百炼成钢2
//题目4:输入某年某月某日,判断这一天是这一年的第几天? #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<st ...
- C语言 百炼成钢1
//题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> ...
- C语言 百炼成钢18
//题目52:用递归打印以下图形 //* //*.*. //*..*..*.. //*...*...*...*... //*....*....*....*....*.... #include<s ...
- C语言 百炼成钢17
//题目49:老师将糖果分成若干份,让学生按任意次序领取,第一个领取的,得到1份加上剩余糖果的1/10, //第二个领取的,得到2份加上剩余糖果的1/10,第三个领取的,得到3份加上剩余糖果的1/10 ...
- C语言 百炼成钢16
//题目46:海滩上有一堆桃子,五只猴子来分.第一只猴子把这堆桃子凭据分为五份,多了一个,这只 //猴子把多的一个扔入海中,拿走了一份.第二只猴子把剩下的桃子又平均分成五份,又多了 //一个,它同样把 ...
- C语言 百炼成钢15
//题目43:有n个人围成一圈,顺序排号.从第一个人开始报数(从1到3报数),凡报到3的人退出 //圈子,问最后留下的是原来第几号的那位. #include<stdio.h> #inclu ...
- C语言 百炼成钢14
//题目40:输入3个数a,b,c,按大小顺序输出.(使用指针完成) #include<stdio.h> #include<stdlib.h> //分析:用指针完成,说明不可以 ...
- C语言 百炼成钢13
//题目37:将一个数组逆序输出.用第一个与最后一个交换. #include<stdio.h> #include<stdlib.h> #include<math.h> ...
随机推荐
- 安卓开发_浅谈Android动画(三)
一.LayoutAnimation布局动画 用于为一个layout里面的控件,或者是一个ViewGroup里面的控件设置动画效果 在res-anim文件下新建一个动画xml文件 <?xml ve ...
- 《C程序设计的抽象思维》2.10编程练习(未完)
本文地址:http://www.cnblogs.com/archimedes/p/programming-abstractions-in-c-2.html,转载请注明源地址. 2.按照规定求圆柱的表面 ...
- iOS开发笔记11:表单键盘遮挡、浮点数价格格式化显示、省市区选择器、View Debugging
1.表单键盘遮挡 应用场景为一个collectionView上有多个textfield.textView供用户填写信息. 之前输入项较少时,采取的方法比较粗暴,didSelectItemAtIndex ...
- iOS 正则表达式判断邮箱、身份证..是否正确
//邮箱 + (BOOL) validateEmail:(NSString *)email { NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Z ...
- LeetCode 2 Add Two Numbers(链表操作)
题目来源:https://leetcode.com/problems/add-two-numbers/ You are given two linked lists representing two ...
- delete_old_backup.bat
在前面forfiles命令批量删除N天前文件 这篇文章里面讲述了如何在SQL Server 2000中使用forfile删除N天前备份文件,但是现在又有新需求: 需求描述:通过数据库维护计划将备份生成 ...
- 魔改——MFC SDI程序 转换为 MDI程序
==================================声明================================== 本文原创,转载在正文中显要的注明作者和出处,并保证文章的完 ...
- 在Myeclipse中添加User Library,用户自己的库
在Myeclipse中添加User Library,用户自己的库 作用:可以将常用的jar包添加到一个固定的库中,避免每一次都要手动导入. 步骤: 1.选择项目,点击Myeclipse的window菜 ...
- 2013年 蓝桥杯预赛 java 本科A 题目
1.标题: 世纪末的星期 曾有邪教称1999年12月31日是世界末日.当然该谣言已经不攻自破. 还有人称今后的某个世纪末的12月31日,如果是星期一则会.... 有趣的是,任何一个世纪末的年份的12月 ...
- linux动态网络和静态网络和克隆后的网络配置
建议设置网卡NAT模式 动态网络配置:1.一定要开启本地DHCP服务 2.在虚拟网络编辑器中选择NAT模式选中DHCP项如下图 3.ifup eth0 静态网络配置 : 注释:ifcfg-eth0部分 ...