• Exponentiation


    题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1063

    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h>
    int memory[130]={1,0};
    int len;
    void multiplication(int n)
    {
    int carry=0,i;
    
    for(i=0;i<len;i++)
    {
    memory[i]=memory[i]*n;
    memory[i]+=carry;
    carry=memory[i]/10;
    memory[i]=memory[i]%10;
    }
    while(carry!=0)
    {
    memory[len]=carry%10;
    carry=carry/10;
    len++;
    }
    
    }
    int main()
    {
    char str[7],*p,*q,num[7];
    int n,m;
    int i;
    int point=0,flag;
    
    while(scanf("%6s%2d",&str,&n)==2)
    {
    len=strlen(str);
    point=0;
    flag=1;
    memset(memory,0,sizeof(memory));
    memory[0]=1;
    memset(num,0,sizeof(num));
    for(i=0;i<len;i++)
    {
    if(str[i]=='.')
    {
    flag=0;
    break;
    }
    }
    i=len-1;
    while(str[i]=='0'&&flag==0) //处理小数后面的0
    {
    i--;
    len--;
    }
    if(len==0)
    {
    m=0;
    len=1;
    }
    else
    {
    p=str;
    i=0;
    while(str[i]=='0')
    {
    i++;
    p++;
    }
    len=len-i;
    q=p;
    i=0;
    while(*p!='.'&&i<len)
    {
    p++;
    i++;
    }
    point=len-i-1;
    for(i=0;i<len;i++,q++)
    {
    if(*q=='.')
    {
    len--;i--;
    }
    else
    num[i]=*q;
    }
    if(len==0)
    {
    m=0;
    len=1;
    }
    else
    m=atoi(num);
    }
    if(m==0&&n==0)
    {
    printf("1
    ");
    continue;
    }
    else if(m==0)
    {
    printf("0
    ");
    continue;
    }
    for(i=0;i<n;i++)
    {
    multiplication(m);
    }
    point*=n;
    if(point>=len)
    {
    printf(".");
    for(i=0;i<point-len;i++)
    printf("0");
    for(i=len-1;i>=0;i--)
    printf("%d",memory[i]);
    }
    else
    {
    for(i=len-1;i>=0;i--)
    {
    if(i==point-1)
    printf(".");
    printf("%d",memory[i]);
    }
    }
    printf("
    ");
    }
    }
  • 相关阅读:
    如何查看ipynb文件
    使用python绘制爱心
    使用python将十进制数转为ip地址
    python使用下划线分割数字,提高可读性
    python的字符串基本操作
    pandas为csv添加新的行和列
    使用pandas库实现csv行和列的获取
    pycharm批量更改变量名
    (转)Doxygen文档生成工具
    MVC架构学习之Smarty学习——病来而蔫
  • 原文地址:https://www.cnblogs.com/cheng07045406/p/3174941.html
Copyright © 2020-2023  润新知