永发信息网

杭电acm1013这个什么意思

答案:2  悬赏:70  手机版
解决时间 2021-03-19 20:33
#include
int f(int n){
if (n <= 9){
return n;
}
int r = 0;
while (n > 0){
r += n%10;
n /= 10;
}
return f(r);
}
int main(){
char s[1025];
int i, n;
while (scanf("%s", s) == 1){
n = 0;
for (i=0; s[i]; ++i){
n += s[i]-'0';//什么意思
}
if (n == 0){
break;
}
printf("%d\n", f(n));
}
return 0;
}
最佳答案
n += s[i]-'0';

s[i]是字符型,'0'也是字符型。假设s[i]='5',它的ASCII值是53,'0'的ASCII值是48,
'5'-'0'=53-48=5。
我们用长整型处理数字时,只能处理到11位,处理1000位的大数时,就用字符串处理,它的加减是用ASCII值来计算的,因此要把'5'(即53)转成5,必须减去'0'(即48).
全部回答
1.一位数模9是它本身(9除外);整十数模9是它十位的数字(90除外);整百数摸9是它百位的数字(900除外)...... 2.对于一个一般的数,可以分拆成几个10的幂的和;一般的数模9的结果,实质就是题目所描述的"数字根"(9的倍数除外). 3.反复提到9的倍数除外,那这个除外的结果是什么?想一下就清楚.所以楼主先--a再%9最后+1就是在处理这种情况 4.数字后面跟u后缀代表无符号整数,至于9啊48啊还要加这个,那是楼主在炫耀他的代码能力,大家可无视之 5.最后提醒 48 == ‘0’
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
115网盘已经下载好的视频播放时老是正在努力
农贸市场常见的转基因蔬菜水果食品有哪些?怎
请问,600151,航天机电还有戏吗,如果不行,我要
A8的核显比A6的核显性能提升有多少?
三庄在什么地方啊,我要过去处理事情
女生适合什么蜂蜜
散打鞭腿需要蹦直踢吗,如果蹦直踢的话需要勾
坦克世界移动手机充值十元换多少金币?
在火车上皮箱被盗怎么办能找到
保送复旦难么
关于现代女主重生带自己的空间小说文包
我的手机clear emmc后一直是开机状态,回不到
失业后没时间培训,过段时间能去培训吗
纪念1929运动词
洗个牙有必要去三甲医院吗?
推荐资讯
2018年甘肃省三支一夫名额
什么手游类似魔兽世界一样
追一个女生两星期了 刚开始我感有戏 但她的一
一榨鲜玉米汁的保质期是多长时间?
鼎尚汽车美容在什么地方啊,我要过去处理事情
63÷7=9中,谁是谁的倍数,谁是谁的因数
dell的笔记本电脑是全球联保的么?
9岁的小孩子还看动画片,正常吗
通达广告装饰怎么去啊,有知道地址的么
请问江湖尘侠歌词有知道的么?
为什么我的苹果六只这几天耗电量很厉害
28T的昂科威和28T的君越那个好
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?