⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1001.c

📁 pku online judge的一些题目的代码,全部AC的,适合编程初学者以及爱好者
💻 C
字号:
Source Code

Problem: 1001  User: O_Q 
Memory: 80K  Time: 0MS 
Language: C  Result: Accepted 

Source Code 
#include<stdio.h>
#include<string.h>
#include<stdlib.h>

int main()
{
	char r[7],res[200],dig[200];
	int n,i,j,k,tmp,num,m,flag;
	while(scanf("%s%d",r,&n)!=-1)
	{
		for(i=j=0;r[i];i++)
			if(r[i]!='.')
				res[j++]=r[i];
			else
				flag=i;
		res[j]='\0';
		num=atol(res);
		strcpy(res,"1");
		for(i=1;i<=n;i++)
		{
			m=strlen(res);
			for(j=m-1,k=tmp=0;j>=0;j--)
			{
				dig[k++]=((res[j]-'0')*num+tmp)%10+'0';
				tmp=((res[j]-'0')*num+tmp)/10;
			}
			while(tmp)
			{
				dig[k++]=tmp%10+'0';
				tmp/=10;
			}
			dig[k]='\0';
			strrev(dig);
			strcpy(res,dig);
		}
		if((5-flag)*n>k)
		{
			putchar('.');
			for(j=0;j<(5-flag)*n-k;j++)
				putchar('0');
		}
		for(j=k-1;k-j<=(5-flag)*n;j--)
			if(res[j]!='0')
				break;
		for(i=0;i<=j;i++)
		{
			if(i==k-(5-flag)*n)
				putchar('.');
			putchar(res[i]);
		}
		putchar('\n');
	}
	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -