Mister-小方


私信TA

用户名:1104986125

访问量:150672

签 名:

如此英俊为哪般

等  级
排  名 5
经  验 23798
参赛次数 1
文章发表 68
年  龄 19
在职情况 学生
学  校 大连交通大学
专  业 车辆工程

  自我简介:

TA的其他文章

解题思路:
1.小方给大家提供的方法是直接将用户输入的数字当字符串看的,希望大家能够理解。

参考代码:

#include<stdio.h>
#include<string.h>
int main()
{
    int size,sum,i;
    char a[11];
    while(scanf("%s",a)!=EOF)
    {
        sum=0;
        size=strlen(a);                            //可那用户输入的数的长度是多少位的
        for(i=0;i<size;i++)                        //用其减去其acsii就可以将字符数转换为真正的数
        {
            sum+=a[i]-'0';                         //依次相加
        }
         printf("%d\n",sum);                       //输出
    }
    return 0;
}


 

0.0分

3 人评分

  评论区

#include<stdio.h>

int main()
{
    int x;
    while(scanf("%d",&x)){
    	int sum=0;
    	for(;x>0;x/=10){
    		sum += x%10;
		}
		printf("%d\n",sum);
	}
    return 0;
}

我为什么输出超限  ?!
2019-12-23 18:17:37 | |
#include<stdio.h>
int tomjs(int Tom)
{
	if(Tom!=0)
		Tom=Tom%10+tomjs(Tom/10);
	return Tom;
}
int main()
{
	int Tom;
	while(~scanf("%d",&Tom)){
		printf("%d\n",tomjs(Tom));
	}
	return 0;
}
输出超限,是为什么
2017-11-29 21:35:02 | |
为什么sum+=a[i]-'0';最后要加一个‘0’?
2017-10-08 21:42:23 | |
求指教
2017-08-26 13:56:54 | |
# include <stdio.h>
int main (void)
{
	int i , n , m , tom = 0;
	scanf ("%d" , &n);
	do {
	if (n < 0)
		return 0;
	else
	{
		tom = 0 ;
		m = n;
		while (m)
		{
			tom += m%10 ;
			m /= 10;
		}
		printf ("%d\n" , tom);
	//	scanf ("%d" , &n);
	}
	}while (scanf ("%d" , &n)  == 1);


	return 0;
}

这个程序有什么问题吗
2017-08-26 13:56:36 | |
题里范围给的是——每行一个整数(<2^32).最大是十位数
所以char a[1000];不用这么大,,,char a[11];就够了
2017-08-02 19:36:15 | |
  • «
  • 1
  • »