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

📄 2~n.cpp

📁 从磁盘输入一个数N 计算2的N次方.五位五位出输出 用数组。
💻 CPP
字号:
//计算2的N次方

#include<iostream.h>  
#include<math.h>  
#include <stdio.h>
int n;
int a[100];  
int b1=0;  
int temp=0;  
void openfile(){
	FILE *fp;
	if ((fp = fopen("D:\\C语言\\2~n.txt", "r")) == NULL)printf("打开输入文件错误\n");
	else{
		fscanf(fp, "%d", &n);
		printf("N= %d \n",n);
		fclose(fp);
	}
}
void cpu(){
	a[0]=1;
	for(int i=1;i<n;i++)
		a[i]=0;
	for(i=0;i<=n-1;i++) {		
		for(int j=0;j<=i;j++){
			temp=a[j]*2+b1;  
			if(temp<100000){a[j]=temp; b1=0;} 
			else {a[j]=temp%100000;b1=temp/100000;}
			
        }
	}
}


void print()
{   
	
	int m, i,cnt,cnt1,t,temp;
	m=(int)(n*log10(2)) / 5;
	cnt=0;
	cnt1=1;
	cout<<"2~N结果是:"<<endl;
	for (i = m; i >= 0; i--) {
		if (cnt == 8) {
			cout<<endl;
			cnt=0;
		}
		temp=10000;
		t=a[i]/temp;
		while(t==0) {
			cout<<"0";
			temp = temp / 10;
			t = a[i] / temp;}
		cout<<a[i]<<" ";
		cnt++;
	} 
	cout<<endl;
} 


void savetofile(){
	FILE *fp;
	int m, i,cnt,cnt1,t,temp;
	if (fp = fopen("d:\\C语言\\000.txt", "w")){
		
		m=(int)(n*log10(2)) / 5;
		cnt=0;
		cnt1=1;
		
		for (i = m; i >= 0; i--) {
			
			if (cnt == 8) {
				fprintf(fp,"\n","w");//cout<<endl;
				cnt=0;
			}
			
			temp=10000;
			t=a[i]/temp;
			while(t==0) {
				fprintf(fp,"0","w");//cout<<"0";
				temp = temp / 10;
				t = a[i] / temp;}
			
			//cout<<a[i]<<" ";
			fprintf(fp,"%d ",a[i]);
			cnt++;
			
			
			
		} 
		fprintf(fp,"\n","w");//cout<<endl;
		fclose(fp);
	}   else printf("建立文件错误\n");
	
}



int main()
{
	openfile();
	cpu();
	print();
    savetofile();
	return 0;
}


⌨️ 快捷键说明

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