C語言基礎程式設計題目(函式題)

2021-08-29 14:14:03 字數 3961 閱讀 2543

本題要求實現乙個函式,對給定的正整數n,列印從1到n的全部正整數。

void printn ( int n );
其中n是使用者傳入的引數。該函式必須將從1到n的全部正整數順序列印出來,每個數字佔1行。

#include void printn ( int n );

int main ()

/* 你的**將被嵌在這裡 */

3
1

23

//6-1 簡單輸出整數

/* 你的**將被嵌在這裡 */

void printn ( int n )

^(a[i]*x^)" class="mathcode" src=""/>在x點的值。

double f( int n, double a, double x );

其中n是多項式的階數,a中儲存係數,x是給定點。函式須返回多項式f(x)的值。

#include #define maxn 10

double f( int n, double a, double x );

int main()

/* 你的**將被嵌在這裡 */

2 1.1

1 2.5 -38.7

-43.1
//6-2 多項式求值

/* 你的**將被嵌在這裡 */

double f( int n, double a, double x ) }

return max;

}

本題要求實現乙個函式,求單鏈表l結點的階乘和。這裡預設所有結點的值非負,且題目保證結果在int範圍內。

int factorialsum( list l );
其中單鏈表list的定義如下:

typedef struct node *ptrtonode;

struct node ;

typedef ptrtonode list; /* 定義單鏈表型別 */

#include #include typedef struct node *ptrtonode;

struct node ;

typedef ptrtonode list; /* 定義單鏈表型別 */

int factorialsum( list l );

int main()

printf("%d\n", factorialsum(l));

return 0;

}/* 你的**將被嵌在這裡 */

3

5 3 6

846
//6-6 求單鏈表結點的階乘和

/* 你的**將被嵌在這裡 */

int factorialsum( list l )

sum+=factorial;

p=p->next; }

return sum;

}

本題要求實現乙個函式,判斷任一給定整數n是否滿足條件:它是完全平方數,又至少有兩位數字相同,如144、676等。

int isthenumber ( const int n );
其中n是使用者傳入的引數。如果n滿足條件,則該函式必須返回1,否則返回0。

#include #include int isthenumber ( const int n );

int main()

printf("cnt = %d\n", cnt);

return 0;

}/* 你的**將被嵌在這裡 */

105 500
cnt = 6
//6-7 統計某類完全平方數

int isthenumber ( const int n )

;//陣列初始化為0

while(m>0)}}

m=m/10;

}return 0;

}return 0;

}

本題要求實現乙個計算非負整數階乘的簡單函式。

int factorial( const int n );
其中n是使用者傳入的引數,其值不超過12。如果n是非負整數,則該函式必須返回n的階乘,否則返回0。

#include int factorial( const int n );

int main()

/* 你的**將被嵌在這裡 */

5
5! = 120
//6-8 簡單階乘計算

int factorial( const int n )

return factorial;

}else if(n==0)

return 1;

else

return 0;

}

本題要求實現乙個函式,可統計任一整數中某個位數出現的次數。例如-21252中,2出現了3次,則該函式應該返回3。

int count_digit ( const int n, const int d );
其中nd都是使用者傳入的引數。n的值不超過int的範圍;d是[0, 9]區間內的個位數。函式須返回nd出現的次數。

#include int count_digit ( const int n, const int d );

int main()

/* 你的**將被嵌在這裡 */

-21252 2
3
//6-9 統計個位數字

int count_digit ( const int n, const int d )

a=a/10;

}while(a>0);

return cnt;

}

本題要求實現乙個列印非負整數階乘的函式。

void print_factorial ( const int n );
其中n是使用者傳入的引數,其值不超過1000。如果n是非負整數,則該函式必須在一行中列印出n!的值,否則列印「invalid input」。

#include void print_factorial ( const int n );

int main()

/* 你的**將被嵌在這裡 */

15
1307674368000
//6-10 階乘計算公升級版

PTA 基礎程式設計題目集 函式12題

4 1 簡單輸出整數 10分 void printn int n 4 2 多項式求值 15分 double f int n,double a,double x return sum 4 3 簡單求和 10分 int sum int list,int n int factorialsum list l...

pta基礎程式設計題目集 程式設計題

題目鏈結 5 7 12 24小時制 include int main int argc,const char argv 5 8 超速判斷 include int main int argc,const char argv 5 9 用天平找小球 include int main int argc,co...

PTA基礎程式設計題目集(程式設計題)

7 2 然後是幾點 有時候人們用四位數字表示乙個時間,比如1106表示11點零6分。現在,你的程式要根據起始時間和流逝的時間計算出終止時間。讀入兩個數字,第乙個數字以這樣的四位數字表示當前時間,第二個數字表示分鐘數,計算當前時間經過那麼多分鐘後是幾點,結果也表示為四位數字。當小時為個位數時,沒有前導...