C語言求解100的帶分數形式的代碼

把開發過程比較重要的一些代碼片段做個備份,下面資料是關於C語言求解100的帶分數形式的代碼。

#include<stdio.h>
#include<string.h>

bool checkNum(int n){
char arr[]="x123456789";
do{
if(arr[n%10]<='9'){
arr[n%10]='x';
}else{
return false;
}
n/=10;
}while(n!=0);
return true;
}

do{
    arr[n%10]='#';
    n/=10;
}while(n!=0);

}

char tmp;

}

int len=strlen(arr),i;
for(i=0;i<len/2;i++){
    change(arr+i,arr+len-i-1);
}

}

int i,j;
for(i=len-1;i>0;i--){
    if(arr[i]>arr[i-1]){
        break;
    }
}
if(i==0){
    return false;
}
i--;
for(j=len-1;j>i;j--){
    if(arr[j]>arr[i]){
        break;
    }
}
change(arr+i,arr+j);
start2End(arr+i+1);
return true;

}

int count=0,i=0;
char ch;
while(i!=len){
}
return count;

}

int i,a,b;
for(i=len/2;i<len;i++){
    a=str2N(res,i);
    b=str2N(res+i,len-i);
    if(a/b==result && a%b==0){
        printf("%d+%d/%dn",n,a,b);
        return true;
    }
}
return false;

}

void fun(int n,int result){
char arr[]="#123456789";
char res[10];
nKill(n,arr);
int i=0,j=0;
char ch;
while((ch=arr[i++])!='0'){
if(ch!='#'){
res[j++]=ch;
}
}
res[j]='0';
do{
insert(res,j,result,n);
}while(nextArr(res,j));
}

void main(){
int i,n,tmp;
scanf("%d",&n);
for(i=1;i<n;i++){
tmp=n-i;
if(checkNum(tmp)){
fun(n-i,i);
}
}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章