C语言编程数组题

来源:百度知道 编辑:UC知道 时间:2024/09/22 09:57:03
编写一个函数 double aatof(char digitstring[ ]) , 将给出的字符数组digitstring 中double浮点数数字串转换成double浮点数,并返回该double浮点数。
再编写main函数,定义一个字符数组a,从键盘上输入如下的字符串:
25.12 33.456 12345.789
存放到字符数组a中, 然后调用aatof 函数进行转换。(注意:每次调用只转换一数)。
能有个大概就好 正在上机 求助!!!!!

楼主要自定义函数吧

#include<stdio.h>
double aatof(char s[])//字符型数据转化为双精度型数据
{
int i=0;
double a[32],p=1.0,sum1=0.0;
while(s[i]&&s[i]!='.')
{
a[i]=s[i]-'0';
sum1=sum1*10+a[i++];
}
if(s[i++]=='.')
while(s[i])
{
a[i]=s[i]-'0';
p=p/10;
sum1=sum1+a[i++]*p;
}
return sum1;
}
void main()
{
char s[32];
scanf("%s",s);
printf("%f",aatof(s));
}
哪里不明白
留言

必回

#include<stdio.h>
#include <stdlib.h>
main()
{
double aatof(char digitstring[]);
double a[3],b[3];
int i=0;
for (i=0;i<3;i++)
b[i]=aatof(a[i]);
}
double aatof(char digitstringp[])
{
f = atof(digitstring[]);
return f;

}

atof() 是系统的函数;;;字符串转成浮点

按你的意思你要转换那一个?
是25.12还是33.456还是