关注
#include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct { char sign;//符号 char cardinal_num[10005];//基数 char S_sign;//科学计数符号,默认为E int index;//指数 }Sn; void Input(Sn *num,char *inum); int Conversion(Sn num,char *cnum); int ctoi(char *num); int main(int argc,char *argv[]) { Sn num; char cnum[10002]={'\0'},inum[10002]={'\0'}; int flag; gets(inum); Input(&num,inum); flag=Conversion(num,cnum); if(flag==1) { printf("%s",cnum); } else { printf("-%s",cnum); } system("pause"); return 0; } int ctoi(char *num) { int data=0,i=0,flag=0; if(num[0]=='-') { flag=-1; } if((num[0]>='0'&&num[0]<='9')||num[0]=='+') { flag=1; } for(i=0;num[i]!='\0';i++) { if(num[i]>='0'&&num[i]<='9') { data=10*data+(num[i]-'0'); } } data=flag*data; return data; } void Input(Sn *num,char *inum) { int i,e=-1,j=0; char *p=NULL,*pnum=inum; num->sign=inum[0]; num->S_sign='E'; for(i=1;inum[i]!='\0';i++) { if(inum[i]=='E') { e=i+1; break; } if(inum[i]!='.') { num->cardinal_num[j]=inum[i]; j++; } } num->cardinal_num[j]='\0'; p=pnum+e; num->index=ctoi(p); } int Conversion(Sn num,char *cnum) { int flag=0,all,point,i,j=0,zeronum; int clen; clen=strlen(num.cardinal_num); if(num.sign=='+') { flag=1; } if(num.sign=='-') { flag=-1; } if(num.index>=0) { all=num.index+1; point=1+num.index; if(all>=clen) { for(i=0;i<all;i++) { if(num.cardinal_num[i]>='0'&&num.cardinal_num[i]<='9') { cnum[i]=num.cardinal_num[j]; j++; } else { cnum[i]='0'; } } } else { cnum[point]='.'; for(i=0;i<clen+1;i++) { if(cnum[i]!='.') { cnum[i]=num.cardinal_num[j]; j++; } } } } if(num.index<0) { cnum[0]='0'; cnum[1]='.'; zeronum=abs(num.index)-1; all=clen+zeronum; for(i=2;i<2+all;i++) { if(i<2+zeronum) { cnum[i]='0'; } else { cnum[i]=num.cardinal_num[j]; j++; } } } cnum[i]='\0'; return flag; }
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 校招生月薪1W算什么水平 #
28070次浏览 174人参与
# 硬件人的简历怎么写 #
311826次浏览 3057人参与
# “vivo”个offer #
36832次浏览 277人参与
# 我是面试官,请用一句话让我破防 #
23504次浏览 119人参与
# 工作后明白的那些道理 #
21041次浏览 220人参与
# 如果上班像打游戏,你最想解锁什么技能 #
7266次浏览 68人参与
# 中美关税战对我们有哪些影响 #
41627次浏览 351人参与
# 中美关系回暖,你会选择出海吗? #
5135次浏览 96人参与
# AI时代,哪些岗位最容易被淘汰 #
2759次浏览 27人参与
# 华为保温 #
106286次浏览 403人参与
# 机械人,签完三方你在忙什么? #
65753次浏览 244人参与
# 第一份工作应该只看薪资吗 #
192334次浏览 1687人参与
# 牛友们,签完三方你在忙什么? #
119961次浏览 958人参与
# 哪些行业值得去? #
4644次浏览 46人参与
# 金融财经春招备战日记 #
38763次浏览 210人参与
# i人适合做什么工作 #
10238次浏览 91人参与
# 如果秋招能重来,我会____ #
34670次浏览 285人参与
# 美团开奖 #
210317次浏览 1105人参与
# 国央企笔面经互助 #
161200次浏览 1182人参与
# 读研or工作,哪个性价比更高? #
77252次浏览 767人参与
# 华为池子有多大 #
109694次浏览 750人参与
查看9道真题和解析