| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 644 人关注过本帖
标题:[求助]ACM斑竹帮助下
只看楼主 加入收藏
scayx
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2007-5-4
收藏
 问题点数:0 回复次数:4 
[求助]ACM斑竹帮助下
http://acm.zju.edu.cn/show_problem.php?pid=2514
#include<stdio.h>
#include<string.h>
main()
{
int a,b=0,c[10000],d,i,j,n=0,l=0,e,w,m;
char yonghu[20],mima[20],p[10000][21],q[10000][21];
while(scanf("%d",&a)!=EOF)
{
if(a==0)break;
c[n]=0;
while(a)
{
a--;
c[n]=0;
scanf("%s%s",yonghu,mima);
w=strlen(yonghu);
m=strlen(mima);
if(m>10||w>10){a=a+1;continue;}
printf("aaa %d %d %d\n",a,w,m);
for(i=0;i<w;i++) q[n][i]=yonghu[i];
q[n][i]='\0';
for(i=0;i<m;i++)
{ p[n][i]=mima[i];
if(mima[i]=='0'){p[n][i]='%';c[n]=1;}
if(mima[i]=='l'){p[n][i]='L';c[n]=1;}
if(mima[i]=='O'){p[n][i]='o';c[n]=1;}
if(mima[i]=='1'){p[n][i]='@';c[n]=1;}
}
p[n][i]='\0';
if(c[n]==1)l=l+1;
n++;
}
}
printf("%d\n",l);
for(e=0;e<n;e++)
{
if(c[e]==0)printf("No account is modified\n");
else
{
for(j=0;q[e][j]!='\0';j++)printf("%c",q[e][j]);
printf(" ");
for(d=0;p[e][d]!='\0';d++) printf("%c",p[e][d]);
printf("\n");
}
}
}
这是我写的,提交但是是错的。
帮我看下我那里出错了?????
搜索更多相关主题的帖子: ACM acm 斑竹 problem 
2007-05-14 19:31
leeco
Rank: 4
等 级:贵宾
威 望:10
帖 子:1029
专家分:177
注 册:2007-5-10
收藏
得分:0 
帮别人DEBUG是一件很麻烦的事,特别是没有注释,命名不规范,一堆代码都堆在main函数里的程序,先要读懂你程序的意思,看出每个变量的作用,然后在分析你的错误在哪,之后回复你的人得到了一点点长进(甚至得不到),而你失去了一次自己DEBUG的机会,自己DEBUG吧,那将使你成长。如果实在找不到错误,那么请加上一些注释,至少的变量的作用要写出来,a,b,c,d,e,i,j,w,m,n除了你自己没人知道是干嘛用的
2007-05-14 21:42
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
LS说的很对.自己写的东西应该自己去检查.特别是做ACM.自己检查出来的就多一份自豪感.
还有要别人看你的程序,你应该要让别人你的程序做什么.题目的意思是什么.还有你的思路是什么?
这些你似乎都没有做到.别人就这样看很吃力的.
估计没有人会有这么的时间看,最多你说题目意思,别人讲思路.

倚天照海花无数,流水高山心自知。
2007-05-14 23:14
love52657
Rank: 1
等 级:新手上路
帖 子:75
专家分:0
注 册:2007-5-4
收藏
得分:0 

我 为 C 狂
2007-05-15 08:58
scayx
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2007-5-4
收藏
得分:0 
已经找出错误,其实是题目看错了。输出格式搞错了。程序是没错的。
#include<stdio.h>
#include<string.h>
main()
{
int a,b=0,c[1000],d,i,j,n=0,l=0,e,w,m;
char yonghu[11],mima[11],p[1000][12],q[1000][12];
while(scanf("%d",&a)!=EOF)
{
if(a==0)break;
c[n]=0;
while(a)
{
a--;
c[n]=0;
scanf("%s%s",yonghu,mima);
w=strlen(yonghu);
m=strlen(mima);
if(m>10||w>10){a=a+1;continue;}
for(i=0;i<w;i++) q[n][i]=yonghu[i];
q[n][i]='\0';
for(i=0;i<m;i++)
{
if(mima[i]=='0'){mima[i]='%';c[n]=1;}
if(mima[i]=='l'){mima[i]='L';c[n]=1;}
if(mima[i]=='O'){mima[i]='o';c[n]=1;}
if(mima[i]=='1'){mima[i]='@';c[n]=1;}
p[n][i]=mima[i];
}
p[n][i]='\0';
if(c[n]==1)l=l+1;
n++;
}
if(l>0)printf("%d\n",l);
for(e=0;e<n;e++)
{
if(c[e]==0&&l==0){ printf("No account is modified.\n");break;}
if(c[e]==1)
{
for(j=0;q[e][j]!='\0';j++)printf("%c",q[e][j]);
printf(" ");
for(d=0;p[e][d]!='\0';d++) printf("%c",p[e][d]);
printf("\n");
}
}
n=0;l=0;
}
}
2007-05-18 19:35
快速回复:[求助]ACM斑竹帮助下
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.079934 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved