早教吧作业答案频道 -->其他-->
#include"stdio.h"#include"string.h"voidmain(){chardatas[8],temp;shorti,len;printf("请输入要是传递的数据:");scanf("%s",datas);len=strlen(datas);for(i=1;i
题目详情
#include "stdio.h"
#include "string.h"
void main()
{
char datas[8],temp;
short i,len;
printf("请输入要是传递的数据:");
scanf("%s",datas);
len=strlen(datas);
for(i = 1 ; i < len / 2; i++)
{
temp=datas[i];
datas[i] = datas[len-1-i];
datas[len-1-i] = temp;
}
for(i = 0 ; i < len ; i++ )
printf("%c",(datas[i] - '0' +5) % 10+48);
printf("\n");
}
请问这句话的功能是什么呢?datas[i] - '0' +5) % 10+48,
#include "string.h"
void main()
{
char datas[8],temp;
short i,len;
printf("请输入要是传递的数据:");
scanf("%s",datas);
len=strlen(datas);
for(i = 1 ; i < len / 2; i++)
{
temp=datas[i];
datas[i] = datas[len-1-i];
datas[len-1-i] = temp;
}
for(i = 0 ; i < len ; i++ )
printf("%c",(datas[i] - '0' +5) % 10+48);
printf("\n");
}
请问这句话的功能是什么呢?datas[i] - '0' +5) % 10+48,
▼优质解答
答案和解析
重新做字符的映射,规则是:
'0' -- '5' '1' -- '6' '2' -- '7' '3' -- '8' '4' -- '9'
'5' -- '0' '6' -- '1' '7' -- '2' '8' -- '3' '9' -- '4'
详细的运算过程如下:
第一步:daas[i] - '0',是将字符串daas的第i+1位,与字符'0'相减,如果是'1',就得1,如果是'5',就得5,以此类推;
第二步:( datas[i] - '0' + 5)%10,就是将第一步结果加上5,求除以10后的余数;
第三步:最后的“+48",是还原成字符,在ASCII编码中,编号48的,就是字符'0',因此第二步的结果加上48,就可以将数字还原成字符,如:数字1,就变成'1';数字5,就变成'5'.
'0' -- '5' '1' -- '6' '2' -- '7' '3' -- '8' '4' -- '9'
'5' -- '0' '6' -- '1' '7' -- '2' '8' -- '3' '9' -- '4'
详细的运算过程如下:
第一步:daas[i] - '0',是将字符串daas的第i+1位,与字符'0'相减,如果是'1',就得1,如果是'5',就得5,以此类推;
第二步:( datas[i] - '0' + 5)%10,就是将第一步结果加上5,求除以10后的余数;
第三步:最后的“+48",是还原成字符,在ASCII编码中,编号48的,就是字符'0',因此第二步的结果加上48,就可以将数字还原成字符,如:数字1,就变成'1';数字5,就变成'5'.
看了 #include"stdio...的网友还看了以下:
expected';'before‘)’token是什么意思第11行和14行出现这句话#includ 2020-03-31 …
关于C语言For语句下列程序执行的结果是a=1b=2;c=3;while(b<a<c){t=a;a 2020-05-17 …
大家看到过来瞄一下C语言问题定义如下变量和数组:inti,x[3][3]={1,2,3,4,5,6 2020-07-05 …
2.下面程序的功能是计算1–3+5–7+…–99+101的值,请填空.main(){inti,t= 2020-07-18 …
#include"stdio.h"#include"string.h"voidmain(){cha 2020-07-23 …
下列程序运行后的输出结果是()#includemain(){inti=1,j=3printf("% 2020-07-23 …
三道C语言题,请高手指点第一道:#includedoublef(intn){inti;double 2020-07-23 …
for语句循环若i和k都是int类型变量,有以下for语句:for(i=0,k=-1;k=1;k+ 2020-07-25 …
功能:求1到10的阶乘的和。改错#include<stdio.h>intmain(){inti;in 2020-11-01 …
vb,不能赋值变量值到该表达式PrivateSubCommand1Click()DimiAsInte 2020-12-31 …