您的位置:首页 > 编程语言 > C语言/C++

【C语言】为下面的函数原型编写函数定义: int ascii_to_integer(char *str); 这个字符串参数必须包含一个或者多个数字,函数应该把这些数字字符转换为整数并返回这个整数。

2015-04-02 12:19 1071 查看
/*<p>为下面的函数原型编写函数定义:</p><p>int ascii_to_integer(char *str);</p><p>这个字符串参数必须包含一个或者多个数字,函数应该把这些数字字符转换为整数并返回这个整数。</p><p><span style="font-family: Arial, Helvetica, sans-serif;">如果字符串参数包含了任何非数字字符,函数就返回零。请不必担心算数溢出。</span></p>提示:这个技巧很简单:你每发现一个数字,把当前值乘以10,并把这个值和新的数字所代表的值相加。
*/
#include <stdio.h>
int ascii_to_integer(char *str)
{
int sum=0;
while(*str!='\0')
{
if((*str>='0')&&(*str<='9'))
{
sum=sum*10+((int )(*str)-48);
str++;
}
else
return -1;
}
return sum;
}
int main()
{
char p[]="22345";
printf("%d\n",ascii_to_integer(p));
return 0;
}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐