1. 程式人生 > >一道面試題(C語言)

一道面試題(C語言)

題:輸入一個數,列出所有加和等於該數的式子。

分析:

以 6 為例:

從上面的分析就比較容易找到規律了。

C語言程式碼:

 1 #include <stdio.h>
 2 
 3 int main()
 4 {
 5     int n;      // 輸入的數
 6     printf("Please input the number:");
 7     scanf("%d",&n);
 8     test(n);
 9 }
10 
11 void test(int n)
12 {
13     if(n==1){
14         printf("
1=1\n"); 15 return; 16 } 17 int i,j,k; // 迴圈變數 18 for(i=1;i<=n/2;i++) 19 { 20 for(j=(n-i);j>=i;j--) 21 { 22 printf("%d",i); 23 for(k=0;k<(n-i-j);k++) 24 { 25 printf("+1"); 26 } 27 printf("
+%d=%d\n",j,n); 28 }
29 } 30 }

這是同學去面試的時候,給的一道上機題,剛看到我就想用遞迴(當然,沒有做出來),所以……for迴圈大法好(^_^)