杭电acm 1003题,我为什么不能ac????
#include<stdio.h>voidmain(){charinput[1000];inti,j;intk;charm;while((m=getchar())!='0...
#include<stdio.h>
void main()
{
char input[1000];
int i,j;
int k;
char m;
while((m=getchar())!='0')
{
int sum=0;
sum+=(int)(m-'0');
for(i=1;i<1000;i++)
{
input[i]=getchar();
if(input[i]=='\n')
break;
sum+=(int)(input[i]-'0');
}
loop: if(sum<=9)
printf("%d\n",sum);
else
{
j=0;
k=sum*10;
while(k/=10)
{
j+=(sum%10);
sum/=10;
}
sum=j;
goto loop;
}
}
}
连接:http://acm.hdu.edu.cn/showproblem.php?pid=1013 展开
void main()
{
char input[1000];
int i,j;
int k;
char m;
while((m=getchar())!='0')
{
int sum=0;
sum+=(int)(m-'0');
for(i=1;i<1000;i++)
{
input[i]=getchar();
if(input[i]=='\n')
break;
sum+=(int)(input[i]-'0');
}
loop: if(sum<=9)
printf("%d\n",sum);
else
{
j=0;
k=sum*10;
while(k/=10)
{
j+=(sum%10);
sum/=10;
}
sum=j;
goto loop;
}
}
}
连接:http://acm.hdu.edu.cn/showproblem.php?pid=1013 展开
3个回答
展开全部
可能是数组定义太小了吧,我发我的ac代码给你参考一下
#include <stdio.h>
int a,b[100001],sum;
int main()
{
int t,i,n,j,k,a1,b1,max;
scanf("%d",&t);
for(j=1;j<=t;j++)
{
scanf("%d",&n);
max=-9999;sum=0;
for(i=k=1;i<=n;i++)
{
scanf("%d",&a);
sum+=a;
if(max<冲橡悄sum)
{
max=sum;
b1=i;a1=k;
}
if(sum<0)
{sum=0;
k=i+1;
}
}
printf("Case %d:\n",j);
printf("%d %d %d\n",max,a1,b1);
if(j!=t)printf("散渣如卜\n");
}
return 0;
}
#include <stdio.h>
int a,b[100001],sum;
int main()
{
int t,i,n,j,k,a1,b1,max;
scanf("%d",&t);
for(j=1;j<=t;j++)
{
scanf("%d",&n);
max=-9999;sum=0;
for(i=k=1;i<=n;i++)
{
scanf("%d",&a);
sum+=a;
if(max<冲橡悄sum)
{
max=sum;
b1=i;a1=k;
}
if(sum<0)
{sum=0;
k=i+1;
}
}
printf("Case %d:\n",j);
printf("%d %d %d\n",max,a1,b1);
if(j!=t)printf("散渣如卜\n");
}
return 0;
}
北京康思
2018-09-20 广告
2018-09-20 广告
1、基本功能。市面上的电子负载均有基本的四项功能:恒流、恒压、恒阻和恒功率(安捷伦没有恒功率)。在功能基本相同,精确度相差不大的情况下,怎么判断是否符合要求呢?CHROMA和博计的电子负载只有一套工作电路,就是恒流功能。其他功能是根据欧姆定...
点击进入详情页
本回答由北京康思提供
展开全部
#include <iostream>饥闹吵
#include <string>
using namespace std;
int Digit(int n)
{
int digit=0;
while(true)
{
digit=0;
while(n)
{
digit+=n%10;
n/=10;
}
if(digit<烂侍10) return digit;
n=digit;
}
}
int main()
{
int digit, sum, i;
string s;
while(cin>>s)
{
sum=0;
for(i=0; i<s.size(); ++i)
sum+=s[i]-'0';
if(sum==0) break;
digit=Digit(sum);
cout<<弯携digit<<endl;
}
return 0;
}
#include <string>
using namespace std;
int Digit(int n)
{
int digit=0;
while(true)
{
digit=0;
while(n)
{
digit+=n%10;
n/=10;
}
if(digit<烂侍10) return digit;
n=digit;
}
}
int main()
{
int digit, sum, i;
string s;
while(cin>>s)
{
sum=0;
for(i=0; i<s.size(); ++i)
sum+=s[i]-'0';
if(sum==0) break;
digit=Digit(sum);
cout<<弯携digit<<endl;
}
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
数组开小了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询