这两种算法都对的
第一种是先对1000取余,剩下百位和十位及个位,再对100取整就得到百位了。
第二种是先对100取整 ,就会得到a[i]的百位及以上的位数,那么结果a[i]/100里的个位就就是原来的a[i]的百位,再用a[i]/100对10取余,就得到a[i]/100个位数字,也即是原来的a[i]的百位数字。
c语言的算法是很灵活的,很多都有多种算法。
楼上是错误的,
正确的答案是:a[i]/100%10,先除100,再对10取余。
例如:
9876/100=98(不是=98.76,因为a[i]是int)
98%10=8
显然9875的百位数是8,做完。
应该是a[i]%1000/100,先对1000取余,找个百位一下,然后对100取值,找出百位的值。