杭电ACM 程序设计 1001~1008网站:http:acm.hdu.edu.cndiycontest_list.php密码是:201004

杭电ACM 程序设计 1001~1008网站:http:acm.hdu.edu.cndiycontest_list.php密码是:201004,第1张

1002

#include<iostream>

#include<cstring>

using namespace std

int main()

{

int count=0,len_a,len_b,i,j,c[1024],max,n

char a[1024],b[1024],*pa,*pb

scanf("%d",&n)

while(n--)

{

scanf("%s %s",a,b)

count++

printf("Case %d:\n",count)

pa=apb=b

printf("%s + %s = ",pa,pb)

len_a=strlen(pa)

len_b=strlen(pb)

if(len_a<len_b)

{

for(i=len_a-1,j=len_b-1j>=0i--,j--)

{

if(i>=0)

c[j]=pb[j]+pa[i]-96

else

c[j]=pb[j]-48

}

}

else

{

for(i=len_a-1,j=len_b-1i>=0i--,j--)

{

if(j>=0)

c[i]=pa[i]+pb[j]-96

else

c[i]=pa[i]-48

}

}

len_a>len_b?max=len_a:max=len_b

for(i=max-1i>=1i--)

if(c[i]>=10) {c[i]-=10c[i-1]++}

for(i=0i<maxi++)

printf("%d",c[i])

printf("\n")

if(n)

printf("\n")

}

return 0

}

1005

#include <iostream>

using namespace std

int main()

{

int a,b,i

long n,num[50]

num[1]=num[2]=1

while(scanf("%d %d %ld",&a,&b,&n),a+b+n)

{

for(i=3i<=48i++)

num[i%48]=(a*num[i-1]+b*num[i-2])%7

printf("%ld\n",num[n%48])

}

return 0

}

1008

#include<iostream>

using namespace std

int main()

{

long i,t,a[128]={0},total

while(scanf("%ld",&t),t)

{

for(i=1i<=ti++)

scanf("%d",&a[i])

for(i=1,total=0i<=ti++)

{

if(a[i]>a[i-1]) total+=6*(a[i]-a[i-1])+5

else total+=4*(a[i-1]-a[i])+5

}

printf("%ld\n",total)

}

return 0

}

1001很简单就不写了,其他的都比较难~我现在只能做这几道

。学习的时候多读程序多思考,尽量弄明白每一条语句在程序中所起到作用。程序看多看懂了,也要记住一些基本的程序段,试着回想,自己去编,再在别人的基础上想想能不能添加新的功能。慢慢的编程思路也会有的。有条件的话,平时也可以上网看看视频教学。加油... 要进行设计,那就必须弄清楚题目中的要求,分清每一个条件,然后将每一个要求进行分析如何能够实现,该用什么语句,再将他们放到一起

形成完整的程序。

例如:求4位数据的个位和千位?

求个位,该用什么方法?用求余的方法; 求千位,又该用什么方法?用除法;如四位数为:1234 则1234%10将得到个位数4,;1234/1000则得到千位数1;然后明确后进行编程。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12014179.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存