请使用指针编程实现:编写函数int fun(char *str),其功能是将一个整数字符串str转换成一个整数返回。比如 5

请使用指针编程实现:编写函数intfun(char*str),其功能是将一个整数字符串str转换成一个整数返回。比如字符串“1234”变成一个整数1234。... 请使用指针编程实现:编写函数int fun(char *str),其功能是将一个整数字符串str转换成一个整数返回。比如字符串“1234”变成一个整数1234。 展开
 我来答
adoqq_bd
推荐于2018-04-13 · TA获得超过7050个赞
知道大有可为答主
回答量:1818
采纳率:63%
帮助的人:1636万
展开全部
//函数名是f

#include <stdio.h>
#include <string.h>
int f(char *str)
{
int l=strlen(str);
char* p;
int n=0;
for(p=str;p<str+l;p++)
{
n=n*10+(*p-'0');
}
return n;
}
int main()
{
char str[10];
int n;
gets(str);
n=f(str);
printf("%d\n",n);
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fresh218
2012-05-15 · 超过13用户采纳过TA的回答
知道答主
回答量:44
采纳率:100%
帮助的人:18.8万
展开全部
也可以直接调用atoi(str);将字符串str转化为int类型。
在#include<stdlib.h>头文件中
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
武荆轲
2012-05-15 · TA获得超过1026个赞
知道小有建树答主
回答量:648
采纳率:0%
帮助的人:300万
展开全部
#include "stdio.h"
main()
{
char sNum[100]="";
int SnumL ;
scanf("%[^\n]%n",sNum,&SnumL);
printf("%d",fun(sNum,SnumL));

}
long fun(char *strNum,int Snuml)
{
long num=0 ;
int i ,x,all10;
for(i=0;*(strNum+i);i++)
{
all10=1;
for(x=0;x<Snuml-i-1;x++)
all10*=10;
num+=((*(strNum+i)-48)*all10);
}
return num ;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
w1s2j3229
2012-05-15 · TA获得超过448个赞
知道小有建树答主
回答量:712
采纳率:25%
帮助的人:537万
展开全部
int fun(char *str)
{
char *temp =str;
int result=0;
while(*temp!='\0')
{
result = result*10+(*temp)-'0';
temp++;
}
return result;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式