浙江省计算机二级上机操作题(新)
1 of 42第二部份 C 程序设计上机操作题.2 一、数列求和.2 二、最大公约数、最小公倍数.6 三、排序算法.7 四、数组.8 五、求整数 n 的各位数字及各数字之和.11 六、平面上各点之间的距离.13 七、数制转换.16 八、字符串处理.17 九、最大值与最小值.23 十、斐波那契(Fibonacci)数列.26 十一、水仙花、完数、回文数与亲密数.27 十二、方程求根.29 十三、回文数、因子、质因子、素数.32 十三、其他算法.332 of 42第二部份第二部份 C 程序设计上机操作题程序设计上机操作题一、数列求和一、数列求和1、程序调试题试题一试题一 该程序功能:输入 x 和正数 eps,计算多项式 1-x+x*x/2!-x*x*x/3!+.的和直到末项的绝对 值小于 eps 为止。 #include #include void main() float x,eps,s=1,t=1,i=1;scanf(“%f%f“,do /* 1 */t=-t*x/+i; /+i-i+s+=t;/* 2 */ while(fabs(t)=printf(“%fn“,s); 试题二试题二 该程序功能:运行时若输入 a、n 分别为 3、6,则输出下列表达式的值: 3+33+333+3333+33333+333333 #include void main() int i,a,n; long t=0;/* 1 */s=0; /s=0-long s=0scanf(“%d%d“,for(i=1;i float f(float, float*,int); void main( ) float b5=1.1,2.2,3.3,4.4,5.5; printf(“%fn”,f(1.7,b,5); float f( 1 ) / float f( float x, float a , int n) float y=a0,t=1; int i; for(i=1;i #include void main() FILE *p;int i; float x=2.345,t=1.0,y=0.0;float a10=1.2,-1.4,-4.0,1.1,2.1,-1.1,3.0,-5.3,6.5,-0.9;/* 考生在这里添加代码p=fopen(“design.dat”,”w”);y=a0; for(i=1;i #include 4 of 42void main() FILE *p; int i; float x=1.279,t,y;float a10=1.1,3.2,-2.5,5.67,3.42,-4.5,2.54,5.6,0.97,4.65;/ 考生在这里添加代码p=fopen(“design.dat”,”w”); t=1;y=a0;for(i=1;i void main() FILE *p; long s=1,k=1; int i;/考生在这里添加代码p=fopen(“design.dat“,“w“);for(i=2;i #include void main() FILE *p; int i; float x=1.279,t=1,y=0;float a10=1.1,3.2,-2.5,5.67,3.42,-4.5,2.54,5.6,0.97,4.65;/ 考生在这里添加代码p=fopen(“design.dat“,“w“); for(i=0;i #include void main() FILE *p;/考生在这里添加代码int i;float s=0;p=fopen(“design.dat“,“w“);for(i=2;i #include void main() FILE *p; float s=0,a=81,i;/考生在这里添加代码p=fopen(“design.dat“,“w“);for(i=1;ivoid main() FILE *p; int i;6 of 42float a10=7.23,1.5,5.24,2.1,2.45,6.3,5,3.2,0.7,9.81,sum,v=0;/考生在这里添加代码p=fopen(“design.dat“,“w“);for(i=0;i=v) sum=sum+ai;fprintf(p,“%.5f“,sum);fclose(p); 试题八试题八 设计程序: 利用公式 /41-1/3+1/5-1/7+公式计算 的近似值,直到某一项的绝对 值小于 1e-6 为止。 (/4 的结果不包含此项)将结果以格式“%.6f“写入到考生目录中 Paper 子目录下的新建文件 design.dat 中。#include #include void main() FILE *fp;float n=1,t=1,pi=0;int i;/考生在这里添加代码fp=fopen(“design.dat“,“w“);while(1.0/t>=1e-6)pi=pi+n*1.0/t; t=t+2; n=-n; pi=pi*4; fprintf(fp,“%.6f“,pi); fclose(fp); 试题九试题九 计算数列 1,-1/3!,1/5!,-1/7!的和至某项的绝对值小于 1e-5 为止(该项不累加) ,将 结果以格式“%.6f“写入到考生目录中 Paper 子目录下的新建文件 design1.dat 中。 #include #include void main() FILE *p; float s=1,t=1,i=3;/ 考生在这里添加代码p=fopen(“d:design1.txt“,“w“);7 of 42t=-t*(i-1)*i;while(fabs(1/t)>=1e-5)s+=1/t;i=i+2;t=-t*(i-1)*i;fprintf(p,“%.6f“,s);fclose(p); 二、最大公约数、最小公倍数二、最大公约数、最小公倍数1、程序调试题试题一试题一 该程序功能:输入 m、n(要求输入数均大于 0,且 m>=n) ,输出它们的最小公倍数。#include void main() int m,n,k;/* 1 */ while(scanf(“%d%d“, k%n!=0;)/* 2 */k=k+n; /改为:改为:k=k+mprintf(“%dn“,k); 2、程序填空题试题一试题一 该程序功能:输入 m、n(要求输入数均大于 0) ,输出它们的最大公约数。#include void main() int m,n,k;while(scanf(“%d%d“, /!(!(n>0 n%k!=0|m%k!=0; k-); /k=m 或或 k=nprintf(“%dn“,k); 8 of 42三、排序算法三、排序算法1、程序调试题该程序功能:用选择法选择法对 10 个整数按升序排序。#include #define N 10 void main() int i,j,min,temp;int aN=5,4,3,2,1,9,8,7,6,0;printf(“nThe array is:n“); /* 输出数组元素 */for (i=0;i/* 2 */temp=amin; amin=aj; aj=temp; /* 数据交换 */ /j-