파스칼 트라이앵글 코드입니다. 이것은 'n'행 (삼각형)의 각 새 번호에 대해 n-1 행에 두 개의 숫자를 더하여 작동해야합니다. 나는 숫자 '4'를주고, 나는 다음과 같이 볼 것을 기대한다 : 1 3 3 1. 그러나 대신에 나는 보았다 : 1. 어째서 그렇게 되었습니까? 당신이 그것을 삭제할 수 있도록
역 ©의 두 번째 변수() 아무 소용이 없습니다 :파스칼 Tiangle C++ 넘침 줄
#include<iostream>
using namespace std;
void fanc(int a[],const int m,int n){
if(n==1){
a[0]=1;
}
if(n==2){
a[0]=1;
a[n]=1;
}
else{
a[0]=1;
a[n]=1;
for(int i=1;i<n;i++){
fanc(a,100,n-1);
a[i]=a[i-1]+a[i];
}
}
return;
}
int main(){
const int m=100;
int a[m],n;
cin>>n;
fanc(a,100,n);
for(int i=0;i<n+1;i++){
cout<<a[i]<<'\t';
}
system("PAUSE");
return 0;
}
당신이 디버거를 사용하고 잘못 어디로 검사 시도? – BlamKiwi