pta簡單實現x的n次方 pta函式答案 doc

2021-10-18 12:55:02 字數 2384 閱讀 8288

三、程式填空題

3-32程式閱讀:

下列程式將輸出(5分)。

# include

int s;

int f(int m)

static int k=0;

for(; k<=m; k++) s++;

return s;

int main(void )

int s=1;

s=f(2)+f(2);

printf("%d#%d#", s, f(20));

return 0;

四、函式

4-3?求m到n之和???(10分)

int sum(int m, int n)

int i;

int s=0;

for(i=m; i<=n; i++)

s= s + i;

return (s);

4-34?簡單輸出整數???(10分)

void printn ( int n )

int i;

for(i=1; i<=n; i++)

printf("%d\n", i);

4-36?簡單求和???(10分)

int sum ( int list, int n )

int k;

int sum=0;

for(k=0; k

sum += list[k];

return sum;

4-40?簡單階乘計算???(10分)

int factorial( const int n )

int i;

int s=1;

if( n < 0 )

return 0;

else if( n == 0)

return 1;

else

for(i=1; i<=n; i++)

s*=i;

return s;

4-41?統計個位數字???(15分)

int count_digit(const int n, const int d)

int x;

int count=0;

int temp=0;

x=n;

if(x<0)

x=-x;

dotemp=x%10;

if(temp==d)

count++;

x=x/10;

while(x>0);

return count;

4-43?找兩個數中最大者???(10分)

int max( int a, int b )

int max;

if(a >= b)

max = a;

else

max = b;

return max;

4-44?數字金字塔???(15分)

void pyramid(int n)

int i, j, space;

for(i=1; i <= n; i++)

space = n - i;

for(j=0; j < space; j++)

putchar(' ');

for(j=0; j < i; j++)

printf("%-2d", i);

putchar('\n');

4-45?判斷奇偶性???(10分)

int even( int n )

if( n<0 )

n = -n;

if( n%2==0 )

return 1;

else

return 0;

4-46?使用函式求奇數和???(15分)

int even( int n )

if( n<0 )

n = -n;

if( n%2==0 )

return 1;

else

return 0;

int oddsum( int list, int n )

int k;

int oddsum = 0;

for(k=0; k

if(even(list[k])==0)

oddsum += list[k];

return oddsum;

4-47?使用函式計算兩點間的距離???(10分)

double dist( double x1, double y1, double x2, double y2 )

double dist;

dist = sqrt((x1-x2)*(x1-x2) + (y1-y2)*(y1-y2) );

return dist;

4-48?使用函式求素數和???(20分)

int prime( int p )

int i,j;

計算x的n次方

計算x的n次方有遞迴和遞推程式。不論從時間或空間來看,自然遞推優於遞迴。然而,二分法則是極其優的一種方法,用在計算x的n次方完全沒有問題,而且不是遞迴而是遞推的程式。程式中使用條件編譯,以便於統計分析演算法的計算量。正解是函式power3。計算x的n次方程式 1.遞迴程式 2.非遞迴程式 3.二分法...

java 計算x的n次方

x的n次方,可以用簡單的迭代方法自乘n次,但這種方法十分低效。可以用兩種方法 如下 計算x的n次方的方法,public class x n 第二種方法 把n轉化為二進位制數,掃瞄每個二進位制位,若為0則,則直接平方,否則平方後再乘以x param i param j return private s...

快速冪求x的n次方

o logn 的時間複雜度求x的n次方,x為自然數,n為整數?如果 power 5 為奇數,result儲存當前的多餘的乙個4,並在返回結果時一併與結果相乘。2 10 2 2 2 2 2 2 2 2 2 2 4 5 4 4 4 4 4 4 4 4 4 16 2 16 2 16 16 256 如果 p...