我的程式碼只要把"index"換成其他名子就會AC,不然就會一直CE,想請教一下大神們原因是什麼!!
#include<stdio.h>
#include<string.h>
char str1[60],str2[60],ans[60];
int pos,len,index;
void print(int left,int right){
if(left>right)
return;
pos--;
for(int i=0;i<len;i++){
if(str1[i]==str2[pos]){
print(i+1,right);
print(left,i-1);
ans[--index]=str1[i];
return;
}
}
}
int main(){
while(~scanf(" %s %s",str1,str2)){
index=len=pos=strlen(str1);
print(0,pos-1);
ans[len]='\0';
puts(ans);
}
}
我的程式碼只要把"index"換成其他名子就會AC,不然就會一直CE,想請教一下大神們原因是什麼!!
#include
#include
char str1[60],str2[60],ans[60];
int pos,len,index;
void print(int left,int right){
if(left>right)
return;
pos--;
for(int i=0;i<len;i++){
if(str1[i]==str2[pos]){
print(i+1,right);
print(left,i-1);
ans[--index]=str1[i];
return;
}
}
}
int main(){
while(~scanf(" %s %s",str1,str2)){
index=len=pos=strlen(str1);
print(0,pos-1);
ans[len]='\0';
puts(ans);
}
}
應該是本來就有叫做"index"的函數了,你又定義一個變數叫index,所以產生衝突。