杭州電1013 Digital Roots

580 ワード

テーマリンク:http://acm.hdu.edu.cn/showproblem.php?pid=1013
反省:考えは簡単ですが、各桁を合わせて10になるように注意してください。そして、0を入力する時、プログラムはどうやって表現しますか?
#include<stdio.h>

#include<string.h>

char a[1000000];

int main()

{	

	int i;	

	int sum=0;

	while(gets(a)&&a[0]!='0')

	{

		sum=0;

	for(i=0;a[i]!='\0';i++)

	sum+=a[i]-'0';

    while(sum>=10)

    {

    	sum=sum/10+sum%10;

    }

    printf("%d
",sum); } }