代码个人制作,如需解析请私信。
9-1
int max(int a,int b){
int c=a;
c=(a>b)?a:b;
return c;
}
9-2
double mypow( double x, int n ){
double result=1;
int i;
for(i=0;i<n;i++){
result*=x;
}
return result;
}
9-3
double dist( double h, double p ){
double total=h;
for(h*=p;h>=TOL;h*=p){
total+=2*h;
}
return total;
}
9-4
int gcd( int x, int y ){
while(x!=y){
if(x>y) x=x-y;
else y=y-x;
}
return x;
}
9-5
int mypow( int x, int n ){
int result=1;
int i;
for(i=0;i<n;i++){
result*=x;
}
return result;
}
int reverse( int number ){
int i,n=0,r_number=0;
for(i=1;number/mypow(10,i-1)!=0;i+=1){
n++;
}
for(i=1;number/mypow(10,i-1)!=0;i+=1){
r_number+=((number%mypow(10,i))/(mypow(10,i)/10))*mypow(10,n-i);
}
return r_number;
}
9-6
int even( int n ){
if(n%2) return 0;
else return 1;
}
int OddSum( int List[], int N ){
int i,Result=0;
for(i=0;i<N;i++){
if ( even(List[i])==0 )
Result+=List[i];
}
return Result;
}
9-7
int mypow( int x, int n ){
int result=1;
int i=0;
for(i=0;i<n;i++){
result*=x;
}
return result;
}
int fn( int a, int n ){
int i=0,Result=0;
for(i=0;i<n;i++){
Result+=a*mypow(10,i);
}
return Result;
}
int SumA( int a, int n ){
int i=0,Result=0;
for(i=1;i<=n;i++){
Result+=fn(a,i);
}
return Result;
}
9-8
int prime( int p ){
int i,x=0;
if(p>1){
for(i=2;i<p;i++){
if((int)(1000*((double)p/(double)i))%1000==0) x++;
}//x为因子数;
if(x==0) return 1;
else return 0;
}
else return 0;
}
int PrimeSum( int m, int n ){
int i,t,x=0;
int result=0;
for(t=m;t<=n;t++){
if(prime(t)) result+=t;
}
return result;
}
9-9
int mypow( int x, int n ){
int result=1;
int i;
for(i=0;i<n;i++){
result*=x;
}
return result;
}
int is( int number ){
int i,n=0,sum=0;
for(i=1;number/mypow(10,i-1)!=0;i+=1){
n++;
}
for(i=1;i<=n;i+=1){
sum+=(number%mypow(10,i))/(mypow(10,i)/10);
}
if(sum==5) return 1;
else return 0;
}
void count_sum( int a, int b ){
int i,k=0,result=0;
for(i=a;i<=b;i++){
if(is(i)) {
result+=i;
k++;
}
}
printf("count = %d, sum = %d",k,result);
}
9-10
int Sum ( int List[], int N ){
int i,result=0;
for(i=0;i<N;i++){
result+=List[i];
}
return result;
}