当前位置:文档之家› 浙江省计算机二级c语言上机考试真题(三)程序编写

浙江省计算机二级c语言上机考试真题(三)程序编写

(三)程序编写1,求3元方程解设计程序:统计满足条件x*x+y*y+z*z==2000的所有解的个数,并将统计结果以格式"%d"输出。

说明:若a、b、c是1个解,则a、c、b也是1个解,等等。

*/#include "stdio.h"int main(){int x,y,z,k=0;/** 考生在这里添加代码*/return 0;}∙#include <stdio.h>∙int main()∙{∙int x,y,z,k=0;∙for(x=0;x<=50;x++)∙ {∙ for(y=0;y<=50;y++)∙ {∙ for(z=0;z<=50;z++)∙ {∙ if(x*x+y*y+z*z==2000)∙ {k++;}∙ }∙ }∙ }∙printf("%d",k);∙}2,求距离和设计程序:x[i],y[i]分别表示平面上一个点的坐标,求下列10个点与点(1.0,1.0)的距离的总和,并将结果以格式"%.6f"输出。

#include#include "math.h"int main(){int i;float x[10]={-1.5,2.1,6.3,3.2,-0.7,7.0,5.1,3.2,4.5,7.6};float y[10]={3.5,7.6,8.1,4.5,6.0,1.1,1.2,2.1,3.3,4.4};float s=0.0;/** 考生在这里添加代码*/return 0;}∙#include<stdio.h>∙#include<math.h>∙int main()∙{ int i;∙ float x[10]={-1.5,2.1,6.3,3.2,-0.7,7.0,5.1,3.2,4.5,7.6};∙ float y[10]={3.5,7.6,8.1,4.5,6.0,1.1,1.2,2.1,3.3,4.4};∙ float s=0.000004;∙ float sx,sy;∙ for(i=0;i<10;i++)∙ {∙ sx=(x[i]-1.0)*(x[i]-1.0);∙ sy=(y[i]-1.0)*(y[i]-1.0);∙ s+=sqrt(sx+sy);∙ }∙ printf("%.6f",s);∙ return 0;∙}3,字符权重设计程序:在正整数中找出1个最小的、被3、5、7、9除余数分别为1、3、5、7的数,将该数以格式"%d"输出。

#include "stdio.h"#include "math.h"int main()int n=1,k=1;/*考生在这里添加代码*/printf("%d\n",n);return 0;}∙#include <stdio.h>∙#include <math.h>∙int main()∙{int j=1;∙ while(1)∙ if(j%3==1&&j%5==3&&j%7==5&&j%9==7) ∙ {∙ printf("%d\n",j+1);break;∙ }∙ else j++;∙}4,pow设计程序:将满足条件pow(1.05,n)<1e6值以格式"%d,%.0f"输出#include "stdio.h"#include "math.h"int main(){ float y=1.05; int n=1; FILE *p;/** 考生在这里添加代码*/printf("%d,%.0f",n,pow(1.05,n));return 0;}∙#include <stdio.h>∙#include <math.h>∙int main()∙{ float y=1.05; int n=1,p;∙ while((pow(y,n)<1e6))∙ {∙ n++;∙ }∙ n--;∙ printf("%d,%.0f",n,pow(1.05,n));∙ return 0;∙}5,sin多项式设计程序:计算多项式a0+a1*sin(x)+a2*sin(x*x)+a3*sin(x*x*x)+……+a9*sin(x*x*x*x*x*x*x*x*x)的值,并将其值格式"%.6f"输出*/#include "stdio.h"#include "math.h"void main(){int i; float x=2.345,t=1.0,y=0.0;float a[10]={1.2,-1.4,-4.0,1.1,2.1,-1.1,3.0,-5.3,6.5,-0.9};/** 考生在这里添加代码*/}∙#include<stdio.h>∙#include<math.h>∙int main()∙{ int i; float x=2.345,t=1.0,y=0.0;∙ float a[10]={1.2,-1.4,-4.0,1.1,2.1,-1.1,3.0,-5.3,6.5,-0.9};∙ y=y+a[0];∙p=fopen("design.dat","w");∙for(i=1;i<10;i++)∙{ t=t*x;∙y+=a[i]*sin(t);}∙fprintf(p,"%.6f",y);∙fclose(p);∙}6,x多项式设计程序:计算多项式a0+a1*x+a2*x*x+a3*x*x*x+...+a9*x*x*x*x*x*x*x*x*x的值,并将其值以格式"%f"输出n.dat中。

*/#include "stdio.h"#include "math.h"void main(){ int i; float x=1.279,t=1,y=0;float a[10]={1.1,3.2,-2.5,5.67,3.42,-4.5,2.54,5.6,0.97,4.65};/***考生这里添加代码*****/printf("%f",y);}∙include<stdio.h>∙#include<math.h>∙int main()∙{ int i; float x=1.279,t=1.0,y=0.0;∙ floata[10]={1.1,3.2,-2.5,5.67,3.42,-4.5,2.54,5.6,0.97,4.65};∙ y=a[0];∙ for(i=1;i<=9;i++)∙ {t=t*x; y=y+a[i]*t; }∙ printf("%f",y);∙}7,最小的x1y1设计程序:z=f(x,y)=10*cos(x-4)+5*sin(y-2),若x,y取值为区间[0,10]的整数,找出使z取最小值的x1,y1,并将x1、y1以格式"%d,%d"输出#include "stdio.h"#include "math.h"int main(){int x,y,x1,y1;float z,z1;/** 考生在这里添加代码*/return 0;}#include<stdio.h>#include<math.h>void main(){FILE *p;int x,y,x1,y1; float z,z1;/*考生在这里添加程序*/p=fopen("design.dat","w");z1=0;for(x=0;x<=10;x++)for(y=0;y<=10;y++){ z=10*cos(x-4)+5*sin(y-2);if(z<z1){z1=z;x1=x;y1=y;}}fprintf(p,"%d,%d",x1,y1);fclose(p);}8,大于数组平均和设计程序:在数组a的10个数中求平均值v,将大于等于v的数组元素进行求和,并将结果以格式"%.5f"输出#include "stdio.h"int main(){int i;float a[10]={7.23,1.5,5.24,2.1,2.45,6.3,5,3.2,0.7,9.81},sum,v=0;/**** 在这里添加代码***/printf("%.5f,%.5f",v,sum);}∙#include <stdio.h>∙ #include <math.h>∙int main()∙{∙ int i,k=0;∙ floatx[10]={7.23,1.5,5.24,2.1,2.45,6.3,5,3.2,0.7,9.81},sum=0,v=0;∙ for(i=0;i<10;i++)∙ {v+=x[i];}∙ v=v/10;∙ for(i=0;i<10;i++)∙ {∙ if(x[i]>=v)∙ {sum+=x[i];}∙ }∙ printf("%.5f",sum);∙}9,百鸡问题设计程序:求解百鸡问题。

已知公鸡每只5元、母鸡每只3元、小鸡1元3只。

求出用100元买100只鸡的解。

将得到的解按公鸡、母鸡和小鸡的只数以"%d,%d,%d\n"的格式输出。

#include "stdio.h"void main(){int cock,hen,chick;/***考生在这里添加代码**/printf("%d,%d,%d",cock,hen,chick);}∙#include <stdio.h>∙int main()∙{ int cock,hen,chick; FILE *p;∙ for(cock=20;cock>=0;cock--)∙ for(hen=0;hen<33;hen++)∙ {chick=100-cock-hen;∙ if(cock*5+hen*3+chick/3.0==100)∙ printf("%d,%d,%d\n",cock,hen,chick);∙ }∙}10,函数区间最大值设计程序:z=f(x,y)=(3.14*x-y)/(x+y),若x、y取值为区间[1,6]的整数,找出使z 取最小值的x1、y1,并将x1、y1以格式"%d,%d"输出。

相关主题