请编写一个函数fun,它的功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。例如,若输入字符串"-1234",则函数把它转换为整数值 -1234。 (请勿在答题框编写主函数main, 仅需完成函数fun的begin和end之间应该填写 的代码。)
时间: 2024-03-03 16:50:20 浏览: 36
C语言程序设计-编写函数fun其功能是:根据整型形参m,计算如下公式的值:y=1+13+15+17+…+1(2m+1)
5星 · 资源好评率100%
以下是函数fun的代码实现:
```
int fun(char* str) {
int num = 0;
int sign = 1;
if (*str == '-') {
sign = -1;
str++;
}
while (*str != '\0') {
if (*str >= '0' && *str <= '9') {
num = num * 10 + (*str - '0');
} else {
return 0;
}
str++;
}
return sign * num;
}
```
该函数首先判断字符串的第一个字符是否为负号,如果是则将标志sign置为-1,并将指针str指向下一个字符。接着使用while循环将字符串中每个数字字符转换为整数并累加到num变量中。在每次循环中,还需要判断当前字符是否是数字字符。如果不是,则返回0表示无法转换。最后将num乘以sign得到最终结果。
阅读全文