[题目分析]设字符串存于字符数组X中若转换后的数是负数字符串的第一个字符必为 取出的数字字符通过减去字符零()的ASCII值变成数先前取出的数乘上加上本次转换的数形成部分数直到字符串结束得到结果
long atoi(char X[])//一数字字符串存于字符数组X中本算法将其转换成数
{long num=;
int i=; //i 为数组下标
while (X[i]!= \) num=*num+(X[i++]);//当字符串未到尾进行数的转换
if(X[]==) return (num);//返回负数
else return ((X[])*+num); //返回正数第一位若不是负号则是数字
}//算法atoi结束
[算法讨论]如是负数其符号位必在前面即字符数组的x[]所以在作转换成数时下标i从 开始数字字符转换成数使用X[i]即字符与的ASCII值相减请注意对返回正整数的处理
[] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] []