1.提示用户输入一个数n,打印出1~n的所有偶数平方值
int main()
{
int n = 0;
int i = 2;
printf("input a number:n");
scanf_s("%d", &n);
while (i * i <= n)
{
printf("%d n", i * i);
i += 2;
}
printf("n");
return 0;
}
2.一球从100米高度自由落下,每次落地后反跳回原高度的一般,再落下时,求它在第10次落地时,共经过多少米》第10次反弹多高?
int main()
{
double sn = 100;
double hn = sn / 2;
for (int i = 2; i <= 10; ++i)
{
sn = sn + 2 * hn;
hn = hn / 2;
}
printf("total:%fn", sn);
printf("第10次弹的高度:%fn", hn);
return 0;
}
3.求黄金分割比
#define N 30
int main()
{
int ar[N] = { 1,1 };
for (int i = 2; i < N; ++i)
{
ar[i] = ar[i - 1] + ar[i - 2];
}
for (int i = 3; i < N - 1; ++i)
{
printf("%d / %d => %2.10lf n", ar[i], ar[i + 1], ar[i] / ar[i + 1]);
}
return 0;
}
4.牛顿迭代法求开放`
double my_sqrt(double a)
{
double x0 = a / 2;
double x1 = (x0 + a / x0) / 2;
while (x0 - x1 > 0.000001)
{
x0 = x1;
x1 = (x0 + a / x0) / 2;
}
return x1;
}
int main()
{
double x, a;
scanf("%lf", &a);
x = my_sqrt(a);
printf("x = %lfn", x);//精度控制
return 0;
}
5.完数,求出完数,并输出因子
int main()
{
int n = 1000;
for (int i = 3; i <= 1000; ++i)
{
int sum = 0;
for (int j = 1; j < i / 2 + 1; ++j)
{
if (i % j == 0)
{
sum = sum + j;
}
}
if (sum == i)
{
printf("%d => ", i);
for (int j = 1; j < i / 2 + 1; ++j)
{
if (i % j == 0)
{
printf("%d ", j);
}
}
printf("n");
}
}
return 0;
}



