s=10*s+p[i][j]-'0'是什么意思

#include<stdio.h>main(){charch[2][5]={"6937","8254"},*p[2];inti,j,s=0;for(i=0;i<2;i++... #include<stdio.h>
main()
{
char ch[2][5]={"6937","8254"},*p[2];
int i,j,s=0;
for(i=0;i<2;i++)
p[i]=ch[i];
for(i=0;i<2;i++)
for(j=0;p[i][j]>'\0';j+=2)
s=10*s+p[i][j]-'0';
printf("%d\n",s);
}
展开
 我来答
xuzhouliuying
高粉答主

2017-12-16 · 繁杂信息太多,你要学会辨别
知道顶级答主
回答量:5.4万
采纳率:86%
帮助的人:2.5亿
展开全部

这个程序是通过循环,将字符数组第二维下标是偶数的字符选出,转换为整数并输出。

依次找出是字符是6、3、8、5,而语句s=10*s+p[i][j]-'0';就是转换为整数。

s=0;//即s的初始值是0

for(j=0;p[i][j]>'\0';j+=2)//依次找出数组第二维下标是偶数的字符

s=10*s+p[i][j]-'0';//转换为整数。

转换的过程如下:

s=10*0+'6'-'0',字符6对应的ASCII码值减去字符0对应的ASCII码值,就得到数字6,此时s=6

s=10*6+'3'-'0','3'-'0'得到3,此时s=60+3=63

s=10*63+'8'-'0','8'-'0'得到8,此时s=630+8=638

s=10*638+'5'-'0','5'-'0'得到5,此时s=6380+5=6385,这样就得到了整数6385

printf("%d\n",s);//直接输出这个整数。

执行程序,进行验证,结果截图:

大雅新科技有限公司
2024-11-19 广告
这方面更多更全面的信息其实可以找下大雅新。深圳市大雅新科技有限公司从事KVM延长器,DVI延长器,USB延长器,键盘鼠标延长器,双绞线视频传输器,VGA视频双绞线传输器,VGA延长器,VGA视频延长器,DVI KVM 切换器等,优质供应商,... 点击进入详情页
本回答由大雅新科技有限公司提供
angeljsp
2011-04-16 · TA获得超过421个赞
知道小有建树答主
回答量:177
采纳率:0%
帮助的人:103万
展开全部
p[][]中的类型是字符 -'0'后变成整型数字。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式