求助大佬,为什么同一个代码错的点不一样
查看原帖
求助大佬,为什么同一个代码错的点不一样
142169
Daniel1024楼主2021/10/4 21:23
#include<bits/stdc++.h>
using namespace std;
int last;
void time(char c[]){
	int l=strlen(c);
	for(int i=0;i<l;i++){
		c[i]=(c[i]-'0')*2+'0';
	}
	for(int i=0;i<l;i++){
		if(c[i]>'9'){
			c[i]-=10;
			c[i+1]+=1;
		}
	}
}
void minu(char b[]){
	int l=strlen(b);
	b[0]-=2;
	for(int i=0;i<l;i++){
		if(b[i]<'0'){
			b[i]+=10;
			b[i+1]-=1;
		}
	}
}
int main(){
	char a[205];
	for(int i=0;i<=204;i++){
		a[i]='0';
	}
	a[0]='1';
	int n;
	cin>>n;
	for(int i=0;i<=n;i++){
		time(a);
	}
	minu(a);
	last=204;
	while(a[last]=='0')last--;
	for(int i=last;i>=0;i--){
		cout<<a[i];
	}
	return 0;
}

错误点一直在变,求大神指导

2021/10/4 21:23
加载中...