



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
#include#include#include#includeusing namespace std;int w=0; /尾数累加器 int p=0; /指数累加器 int j=0; /十进制小数位数计数器 int e=1; /用来记录十进制数的符号,当指数为正时为1,为负时为-1 int i=0; /用来标志元素位置 int d=0; /用来表示每个数值型元素对应的数值 const int N=40;/用来确定输入识别符的最大长度char dataN;/存放输入的识别符 bool is_digit; /标志是否是数字 string CJ1;/确定是整形还是实型 double CJ2;/记数值 /函数声明 void check(char c);/检查首字母是否是数字的函数 void deal_integer(char c);/处理识别符的整数部分 void deal_point(char c);/用来处理小数部分 void deal_index(char c);/用来处理指数部分void s_next();/ 确定实型 void z_next();/确定整型 void last();/ 计算 CJ2void error();/程序中错误处理程序 void deal();/处理函数主体 int main() /主函数 coutplease input your data,and its maximum length is N:data; deal();/处理函数主体 last();/ 计算 CJ2 system(pause); return 0; void check(char c) /判断输入的首字母是否是数字 is_digit=isdigit(c); while(is_digit!=true)/输入的首字母不是数字时 coutnError! Try again.data; check(data0); void deal_integer(char c)/处理识别符的整数部分 d=(int)c-48; w=w*10+d; i+; if(isdigit(datai)!=0)/下一个仍是数值时,调用程序本身 deal_integer(datai); void deal_point(char c)/用来处理小数部分 int temp=i; if(isdigit(c)!=0)/是数值字符时 deal_integer(c); else error(); /错误处理程序 deal();/处理函数主体 j=i-temp;/记录十进制小数位数 void deal_index(char c)/用来处理指数部分 if(c=-) e=-1;i+;/是-号时 else if(c=+) i+;/是+ 号时 else if(isdigit(c)=false) /非数值字符时 error();/错误处理程序 deal();/处理函数主体 else d=(int)c-48;/把输入字符转换为整型 goto pro2; if(isdigit(datai)!=0)pro1: d=(int)(datai)-48;pro2: p=p*10+d; i+; if(isdigit(datai)!=0)/是数值字符时 goto pro1; else if(datai!=0)/非结束标志 error();/错误处理程序 deal();/处理函数主体 else s_next(); / 确定实型 void s_next()/ 确定实型 i-;/退一个字符 CJ1=实型; void z_next()/确定整型 i-;/退一个字符 CJ1=整型; void last()/ 计算 CJ2 CJ2=w*pow(double)10,e*p-j); coutCJ1: CJ2endl;/输出 void error()/程序中错误处理程序 coutnError! Try again.data; p=0;w=0;j=0; /所有全局变量重新初始化 e=1;i=0;d=0; /exit(0); void deal() check(data0);/判断输入的首字母是否是数字 deal_integer(datai);/处理识别符的整数部分 if(datai=.) deal_point(data+i);/用来处理小数部分 if(datai=e|datai=E)/如果是e或E时 deal_index(data+i);/用来处理指数部分 else if(datai!=0) error();/错误处理程序 deal();/处理函数主体 else s_next();/ 确定实型 else if(datai=e|datai=E)/如果是e或E时 deal_index(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO 17573-2:2025 EN Electronic fee collection - System architecture for vehicle related tolling - Part 2: Vocabulary
- 选拔名师笔试试题及答案
- 虹桥国际学校笔试题及答案
- 大唐安规考试试题及答案
- 石化招生笔试题目及答案
- 2025年财务分析答题题库及答案
- 化学实验报告撰写规范性训练试题
- 2025年高考物理全真模拟演练试题(二)
- 公司理财自考试题及答案
- 工地入场考试题目及答案
- 《人体的经络》课件
- 《福禄贝尔》课件
- 期中测试卷(第一单元至第四单元)-2024-2025学年六年级上册数学人教版
- 文化艺术类非学科类校外培训机构设立审核表
- 赴日签证申请表(标准版)
- BCP业务连续性管理手册
- 吸收塔及烟道内部检修脚手架搭建和拆除三措两案
- 合同验收标准
- 公安机关行业场所培训课件
- 2024年安徽马鞍山马钢集团招聘笔试参考题库含答案解析
- 3.5画角【知识精练+应用拓展】四年级数学上册课后分层作业(人教版)
评论
0/150
提交评论