看板 C_and_CPP 關於我們 聯絡資訊
我直接copy你的題目google,照著看到的演算法寫的 #include <iostream> int a[100]; int length; void print_array(int* a){ int i; for(i=0;i<length;i++) {printf("%d",a[length-1-i]);} printf("\n"); } void write_binary(int N){ if (N>=0) { a[N] = 0; write_binary(N-1); a[N] = 1; write_binary(N-1); } else print_array(a); } int main(){ printf("input binary string length:"); scanf("%d",&length); write_binary(length-1); system("pause"); return 0; } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.193.10.86
dh3014:其實不用遞迴 binary addition is enough 10/07 06:26
infant00:感謝原PO 10/07 08:33
infant00:這解法我看過 不過他寫的超級亂 你寫的好淺顯易懂 10/07 08:38
x8:我也google過 淺顯易懂! 10/07 13:58
infant00:原來是學長 學長好!!! 10/07 19:36