Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
Re:sscanf(s+1+loc[i],"%d+",&a);这样输入有问题!!!!073变成73!!逆转后就完全错了.用字符串处理吧..In Reply To:为什么总是WA呢?郁闷的很啊! Posted by:hubo430 at 2006-07-18 17:20:48 > #include<stdio.h> > #include<string.h> > int main() > { > void daoxu(char s[10]); > int a,b,c,i,e,f,num,data[1000],loc[1000],sum; > char s[10000],s1[10],s2[10],s3[10]; > while(scanf("%s",s)==1) > { > if(strcmp(s,"0+0=0")==0) {printf("True\n");break;} > loc[0]=-1;num=1; > for(i=0;s[i];i++) > if(s[i]=='+'||s[i]=='=') loc[num++]=i; > sum=0; > for(i=0;i<num-1;i++) > { > sscanf(s+1+loc[i],"%d+",&a); > sprintf(s1,"%d",a); > daoxu(s1); > sscanf(s1,"%d",&a); > sum+=a; > } > sscanf(s+1+loc[num-1],"%d",&a); > sprintf(s1,"%d",a); > daoxu(s1); > sscanf(s1,"%d",&a); > if(a==sum) printf("True\n"); > else printf("False\n"); > } > return 0; > } > void daoxu(char s[10]) > { > int m=strlen(s); > char t; > for(int i=0;i<m/2;i++) > { > t=s[i];s[i]=s[m-1-i];s[m-1-i]=t; > } > } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator