谁帮我解释一下这个功能的函数每步实现的功能,就是每步是啥意思
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/14 08:52:35
谁帮我解释一下这个功能的函数每步实现的功能,就是每步是啥意思
请编写一个函数fun,它的功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数).例如,若输入字符串“-1234”,则函数把它转换为整数值-1234.
long fun(char *p)
{
int i,len,t;
long x=0;
len=strlen(p);
if(p[0]==’-‘)
{ t=-1;len--;p++;}
else t=1;
while(*p)
x=x*10-48+(*p++);
return x*t;
}
请编写一个函数fun,它的功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数).例如,若输入字符串“-1234”,则函数把它转换为整数值-1234.
long fun(char *p)
{
int i,len,t;
long x=0;
len=strlen(p);
if(p[0]==’-‘)
{ t=-1;len--;p++;}
else t=1;
while(*p)
x=x*10-48+(*p++);
return x*t;
}
前面的是定义变量;
len=strlen(p);//取传入的字符串长
if(p[0]==’-')//判断输入的是否是负数
{ t=-1;len--;p++;}//是,则将负号保留,跳过符号位
else t=1;//否,则符号保留为正
while(*p)
x=x*10-48+(*p++);//用while循环将数字字符串转换为相应的数值
return x*t;//返回值为 x*t 即为该数值x添加符号
//这样说可以么?不知道有没有说清楚.
再问: 这里怎么突然冒出个p[0]呢,开始也没定义数组p[],若判断输入的数是负数,len--,和p++是怎么实现将负号保留,跳过符号位,还有为什么x=x*10-48+(*p++)怎么实现字符串转化为相应的数值的啊,还有你说的那跳过符号位是什么意思啊,我c语言还是菜鸟不过报了二级,急啊,请指教啊
再答: p是指针,你传入一个数组后,p可以当数组用。指针是一个难点,一时也讲不清楚。 假如你输入的数据是:-1234。在数组中就存了5个数据,依次为:-,1,2,3,4。p[0]就是数组的第一位,如果是-号,则t=-1,这样在最后你把转换出来的数据,乘以t,就可以实现符号的保留。 p++就是跳过符号位,因为你要转换的是数字。本来p是指向-号的,++以后就指向1。 本来*p是ASCII码的值,1对应的ASCII码值为49.所以你用1的ASCII码值49-48就等于数值1。乘以10是要还原数值。如:12就等于1*10+2,123=((1*10)+2)*10)+3。所以每次的结果都要*10后才加上各位的数值。
len=strlen(p);//取传入的字符串长
if(p[0]==’-')//判断输入的是否是负数
{ t=-1;len--;p++;}//是,则将负号保留,跳过符号位
else t=1;//否,则符号保留为正
while(*p)
x=x*10-48+(*p++);//用while循环将数字字符串转换为相应的数值
return x*t;//返回值为 x*t 即为该数值x添加符号
//这样说可以么?不知道有没有说清楚.
再问: 这里怎么突然冒出个p[0]呢,开始也没定义数组p[],若判断输入的数是负数,len--,和p++是怎么实现将负号保留,跳过符号位,还有为什么x=x*10-48+(*p++)怎么实现字符串转化为相应的数值的啊,还有你说的那跳过符号位是什么意思啊,我c语言还是菜鸟不过报了二级,急啊,请指教啊
再答: p是指针,你传入一个数组后,p可以当数组用。指针是一个难点,一时也讲不清楚。 假如你输入的数据是:-1234。在数组中就存了5个数据,依次为:-,1,2,3,4。p[0]就是数组的第一位,如果是-号,则t=-1,这样在最后你把转换出来的数据,乘以t,就可以实现符号的保留。 p++就是跳过符号位,因为你要转换的是数字。本来p是指向-号的,++以后就指向1。 本来*p是ASCII码的值,1对应的ASCII码值为49.所以你用1的ASCII码值49-48就等于数值1。乘以10是要还原数值。如:12就等于1*10+2,123=((1*10)+2)*10)+3。所以每次的结果都要*10后才加上各位的数值。
谁帮我解释一下这个功能的函数每步实现的功能,就是每步是啥意思
帮我解释一下这个字的意思
下列是DM分区工具的两个功能请帮我解释一下它们的区别?
生物高手帮我解释一下关于消化系统、呼吸系统、心、循环系统的结构和功能
为下列程序代码的每条语句添加注释,解释语句的功能作用,并指出每个程序所实现的功能.
那位大侠能够帮我解释一下补充问题中的每句诗的意思,感激不尽!
谁帮我解释一下下面这个图的意思,
谁帮我解释一下下面这个程序的意思?
EXCEL里IF函数的用法:我要实现如下功能
谁可以帮我解释一下这个调频发射电路是如何实现调频的?
“这个功能是怎么实现的?”英语怎么翻译
请帮忙解释一下程序的每步的含义(VF)