程序设计基础课程设计.docVIP

  • 88
  • 0
  • 约9.88千字
  • 约 19页
  • 2017-02-08 发布于重庆
  • 举报
程序设计基础课程设计

《程序设计基础课程设计》实验报告 班级:1403011 姓名:陈玉洪 学号:14030110075 所选题目: 1_1, 1_3 , 1_4, 2_1, 2_3, 3_1, 3_3 , 4_1 , 5_1 . 第1_1题 算法描述: 设计一个复数输入实部和虚部生成一个复数复数求和求差求积#includestdio.h int main(){ float a1,a2,b1,b2,a,b; char c1; scanf(%f+%fi,a1,b1); while(1){ c1=getchar() if(c1==\n){break;} scanf(%f+%fi,a2,b2); if(c1==+){ a=a1+a2; b=b1+b2; } if(c1==-){ a=a1-a2; b=b1-b2; } if(c1==*){ a=a1*a2-b1*b2; b=a1*b2+a2*b1; } a1=a;b1=b; } printf(%f+%fi,a,b); return 0; } 测试数据: 第1_3题 算法描述: 假定用一个整型数组表示一个长整数,数组的每个元素存储长整数的一位数字,实际的长整数m表示为:m=a[k]×10k-1+a[k-1]×10k-2+….+a[2]×101+a[1]×100 其中a[0]保存该长整数的位数。长整数除普通整数。#includestdio.h #includectype.h int count(int x){ int i; for(i=0;x0;x/=10){ i++; } return i; } int main(){ int n,mun,t,x,i,j,a[100],b[100]; char c; printf(m = ); for(i=1;(c=getchar())!=\n;i++){ a[i]=c-0; } i--; a[0]=i; for(j=1;j=a[0]/2;j++,i--){ t=a[j]; a[j]=a[i]; a[i]=t; } printf(n = ); scanf(%d,n); x=count(n); for(mun=0,j=a[0];ja[0]-x;j--){ mun*=10; mun+=a[j]; } if(mun/n!=0){ b[0]=a[0]-x+1; for(i=b[0];i=1;i--){ b[i]=mun/n; mun%=n; mun=mun*10+a[i-1]; } } else{ b[0]=a[0]-x; mun=mun*10+a[a[0]-x]; for(i=b[0];i=1;i--){ b[i]=mun/n; mun=mun%n; mun=mun*10+a[i-1]; } } printf(m/n = ); for(i=b[0];i0;i--){ printf(%d*10^%d,b[i],i-1); if(i1) printf(+); } putchar(\n); return 0; } 测试数据: 第1_4题 算法描述: 根据输入的数字N,计算N以内(包括N)数据链并统计数据链末尾数字是1的数据个数。例如N=44,则数字链为:44-32-13-10-1,其规则为:4*4+4*4=32,3*3+2*2=13,1*1+3*3=10,1*1+0*0=1。 源程序#includestdio.h int fenjie(int x){ int t,num=0; for(t=0;x0;x/=10){ t=x%10; num+=t*t; } return num; } int main(){ int j,x, i,m,count=0; for(j=0;j5;j++){ scanf(%d,x); if(x=10) break; else printf(error! input again\n); } if(j==5) printf(too much erro

文档评论(0)

1亿VIP精品文档

相关文档