getfloat的代码
来源:互联网 发布:物业网络拓扑图 编辑:程序博客网 时间:2024/06/05 19:38
#include<stdio.h>
#include<ctype.h>
#define N 100
int getfloat(float* p);
int main(void)
{ float arr[N]={0.0};
int i,r,l;
for(i=0;i<N;i++)
{ while((r=getfloat(&arr[i]))==0)
getch();
if(r==EOF||r==13)//'\n'的ASCII值
break;
}
l=i+1;
for(i=0;i<l;i++)
printf("%f\n",arr[i]);
return 0;
}
int getfloat(float* p)
{ double power;
int c,sign;
while(isspace(c=getch()));
//读取了一个非数字的字符,如果这个字符不是数字,
//且不是结束标志,那么把该字符放回到输入中,
//保证getint下一次正确读入或其它函数,程序调用输入。
if(!isdigit(c)&&c!='+'&&c!='-'&&c!='.'&&c!=EOF&&c!='\n')
{
ungetch(c);
return 0;
}
sign=(c=='-')?-1:1;
if(c=='+'||c=='-')
c=getch();
for(*p=0.0;isdigit(c);c=getch())
*p=10**p+(c-'0');
if(c=='.')
c=getch();
for(power=1.0;isdigit(c);c=getch())
{ power*=10;
*p=10**p+(c-'0');
}
*p*=(sign/power);
if(c!=EOF)
ungetch(c);
return c;
}
#include<ctype.h>
#define N 100
int getfloat(float* p);
int main(void)
{ float arr[N]={0.0};
int i,r,l;
for(i=0;i<N;i++)
{ while((r=getfloat(&arr[i]))==0)
getch();
if(r==EOF||r==13)//'\n'的ASCII值
break;
}
l=i+1;
for(i=0;i<l;i++)
printf("%f\n",arr[i]);
return 0;
}
int getfloat(float* p)
{ double power;
int c,sign;
while(isspace(c=getch()));
//读取了一个非数字的字符,如果这个字符不是数字,
//且不是结束标志,那么把该字符放回到输入中,
//保证getint下一次正确读入或其它函数,程序调用输入。
if(!isdigit(c)&&c!='+'&&c!='-'&&c!='.'&&c!=EOF&&c!='\n')
{
ungetch(c);
return 0;
}
sign=(c=='-')?-1:1;
if(c=='+'||c=='-')
c=getch();
for(*p=0.0;isdigit(c);c=getch())
*p=10**p+(c-'0');
if(c=='.')
c=getch();
for(power=1.0;isdigit(c);c=getch())
{ power*=10;
*p=10**p+(c-'0');
}
*p*=(sign/power);
if(c!=EOF)
ungetch(c);
return c;
}
阅读全文
1 0
- getfloat的代码
- 练习5-2 模仿函数getint的实现方法,编写一个读取浮点数的函数getfloat。getfloat函数的返回值应该是什么类型
- ResultSet.getFloat精度位数问题
- Oracle 数据库中getInt()与getString()getFloat()问题
- org.apache.hadoop.conf.Configuration.getFloat(String arg0, float arg1)
- 运行代码的代码
- 运行代码的代码
- 什么是代码后面的代码
- JS:运行代码的代码
- 好的代码:傻瓜型代码
- 代码框 的代码
- 网页,运行代码,复制代码,代码另存的代码
- 优秀的代码 vs. 糟糕的代码
- 优秀的代码 vs. 糟糕的代码
- 什么样的代码是合格的代码
- 优秀的代码VS糟糕的代码
- 代码维护:改进代码的一些方法
- javascript 运行代码的代码 By Stabx
- ubuntu+win7 双系统重新安装
- 建造者模式
- Redux原理(一):Store实现分析
- T20天正结构软件v4.0官方版下载附安装教程
- mybatis系列四:动态SQL
- getfloat的代码
- TF-IDF与余弦相似性的应用(三):自动摘要
- 驱动框架
- java基础复习七:数组的声明与扩容
- java中类测试总结
- String hashCode() 设计的道理
- Centos7防火墙
- 对webmagic的一个example进行Debug——框架执行流程
- java IO学习