编写函数fun,其功能是将一个数字字符串转换成与其面值相同的长整型整数。例如,在键盘输入字符串2345210,函数返回长整型数2345210。
时间: 2024-03-09 18:45:18 浏览: 25
以下是实现该功能的C语言代码:
```c
#include <stdio.h>
long int fun(char* str){
long int num = 0;
int i = 0;
while(str[i] != '\0'){
num = num * 10 + (str[i] - '0');
i++;
}
return num;
}
int main(){
char str[100];
printf("请输入数字字符串:");
scanf("%s", str);
long int num = fun(str);
printf("转换后的长整型数为:%ld\n", num);
return 0;
}
```
函数`fun`接受一个指向数字字符串的指针,通过遍历字符串中的每一位数字,将其转换为长整型数。`main`函数中先读入一个字符串,然后调用`fun`函数进行转换,并输出结果。
相关问题
编写函数fun,其功能是将一个数字字符串转换成与其面值相同的长整型整数。例如,在键盘输入字符串2345210,函数返回长整型数2345210。
以下是一个可能的实现,使用`atoi`函数将字符串转换为整数:
```c
#include <stdlib.h>
long int fun(char* str) {
return atol(str);
}
```
使用`atol`函数将字符串转换为长整数。使用示例:
```c
#include <stdio.h>
int main() {
char str[] = "2345210";
long int num = fun(str);
printf("%ld\n", num); // 输出 2345210
return 0;
}
```
请用c语言编写函数fun,其功能是将一个数字字符串转换成与其面值相同的长整型整数。可调用stren函数求字符串的长度。例如:在键盘输入字符串2345210,函数返回长整型数2345210。
以下是用C语言编写的函数fun,其功能是将一个数字字符串转换成与其面值相同的长整型整数:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
long int fun(char *str)
{
int i;
long int num = 0;
int len = strlen(str);
for (i = 0; i < len; i++)
{
if (str[i] >= '0' && str[i] <= '9')
{
num = num * 10 + (str[i] - '0');
}
else
{
printf("Input Error!");
exit(1);
}
}
return num;
}
int main()
{
char str[100];
printf("Please enter a number string:");
scanf("%s", str);
long int num = fun(str);
printf("The integer is: %ld\n", num);
return 0;
}
```
在函数中,我们首先使用了 `strlen` 函数求出了字符串的长度。然后,我们遍历字符串中的每一个字符,如果是数字字符,就将其转换成整数并加到结果中,如果不是数字字符,就输出错误信息并退出程序。
在主函数中,我们首先从键盘输入一个数字字符串,然后调用 `fun` 函数将其转换成长整型整数并输出。