#include <stdio.h>
double fun(int n)
{
int i,j,s;
double t=0.0,sum=0.0;
for(i=1;i<=n;i++)
{
s=0;
for(j=1;j<=i;j++)
{
s=s+j;
}
t=1.0/s;
sum=sum+t;
}
return sum;
}
void main()
{
FILE *wf;
int n;
double s;
printf("\n从键盘输入: ");
scanf("%d",&n);
s=fun(n);
printf("\n\ns=%f\n\n",s);
wf=fopen("out.dat","w");
fprintf(wf,"%f",fun(50));
fclose(wf);
}
4、任何一个自然数m的立方均可写成m个连续奇数之和。例如:
1^3=1
2^3=3+5
3^3=7+9+11
4^3=13+15+17+19
编程实现:输入一自然数n,求组成n^3的n个连续奇数。
#include <stdio.h>
int test(int j,int i){
int k,s;
s=0;
for (k=i;k<j;k+=2){
s+=k;
if (s>j) break;
if (s==j) return k;
}
return 0;
}
void out_list(int i, int k){
int j,x;
x=32;
for (j=i;j<=k;j+=2){
printf("%c%d",x,j);
x='+';
}
}
void main()
{
int x,y,i,j,k;
scanf("%d",&x);
y=x*x*x;
for (j=1;j<y;j+=2)
if((k=test(y,j))!=0){
printf("%d^3=%d=",x,y);
out_list(j,k);
printf("\n");
break;
}
}
5、已知abc+cba=1333,其中a,b,c均为一位数,编程求出满足条件的a,b,c所有组合。
#include <iostream>
using namespace std;
int main ()
{int a,i,j,k;
for (a=101;a<=999;a++)
{i=a/100;
j=a/10-i*10;
k=a%10;
if (1333==(i*100+j*10+k+k*100+j*10+i))
cout<<a<<endl;
}
}