电脑,系统测试题5

来源:加拿大移民 发布时间:2020-07-27 点击:

系统测试题5 1.输入某年某月某日,判断这一天是这一年的第几天? #include <stdio.h> main() { int day,month,year,sum,leap; printf(“\nplease input year,month,day\n“); scanf(“%d,%d,%d“,&year,&month,&day); switch(month) { case 1:sum=0;break; case 2:sum=31;break; case 3:sum=59;break; /***********SPACE***********/ case 4:【?】;break; case 5:sum=120;break; case 6:sum=151;break; case 7:sum=181;break; case 8:sum=212;break; case 9:sum=243;break; case 10:sum=273;break; case 11:sum=304;break; case 12:sum=334;break; default:printf(“data error“);break; } /***********SPACE***********/ 【?】; /***********SPACE***********/ if(year%400==0||(【?】) leap=1; else leap=0; /***********SPACE***********/ if(【?】) sum++; printf(“it is the %dth day.“,sum); } 2.已知X、Y、Z分别表示0~9中不同的数字,编程求出使算式 XXXX+YYYY+ZZZZ=YXXXZ成立时X、Y、Z的值,并要求打印该算式。

#include <stdio.h> #include <stdlib.h> main() { int x,y,z; /***********SPACE***********/ for(x=0;【?】;x++) for(y=0;y<10;y++) { if(y==x) continue; for(z=0;z<10;z++) { /***********SPACE***********/ if(z==x【?】z==y) continue; /***********SPACE***********/ if(1111*(x+y+z)==【?】+1110*x+z) { printf(“x=%d,y=%d,z=%d\n“,x,y,z); /***********SPACE***********/ printf(“%d+%d+%d=%d\n“,1111*x,1111*y,1111*z,【?】); exit(0); } } } } 3.编程求任意给两个日期(Y0年M0月DO日和Y1年M1月D1日)相差的天数。

#include <stdio.h> #include <stdlib.h> int f(int y) { return(y%4==0&&y%100!=0||y%400==0); } int mday(int y,int m) { return(31-((m==4)+(m==6)+(m==9)+(m==11))-(3-f(y))*(m==2)); } int yday(int y,int m,int d) { return(d+31*((m>1)+(m>3)+(m>5)+(m>7)+(m>8)+(m>10))+30*((m>4)+(m>6)+(m>9)+(m>11))+(28+f(y))*(m>2)); } int yend(int y,int m,int d) { return(365+f(y)-yday(y,m,d)); } main() { int y1,m1,d1,y2,m2,d2,n,i; printf(“y1,m1,d1=“); scanf(“%d,%d,%d“,&y1,&m1,&d1); /***********SPACE***********/ if(m1<1||m1>12||d1<1||d1>【?】) exit(0); printf(“y2,m2,d2=“);scanf(“%d,%d,%d“,&y2,&m2,&d2); /***********SPACE***********/ if(m2<1||m2>12||d2<1||d2>【?】) exit(0); if(y1>y2||y1==y2&&m1>m2||y1==y2&&m1==m2&&d1>d2) { n=y1; y1=y2; y2=n; n=m1; m1=m2; m2=n; n=d1; d1=d2; d2=n; } else { /***********SPACE***********/ n=yend(y1,m1,d1)+【?】; /***********SPACE***********/ for(i=【?】;i<y2;i++) n+=365+f(i); } printf(“%d.%d.%d--->%d.%d.%d:n=%d\n“,y1,m1,d1,y2,m2,d2,n); } 4.用二分法求方程2X^3+4X^2+3X-6=0在(-10,10)之间的根 ,其中 X^n代表X的n次方。

#include <stdio.h> # include <math.h> main() { float x0,x1,x2,fx0,fx1,fx2; do { printf(“Enter x1&x2:“); scanf(“%f,%f“,&x1,&x2); fx1=x1*((2*x1-4)*x1+3)-6; fx2=x2*((2*x2-4)*x2+3)-6; /***********SPACE***********/ }while (fx1*fx2【?】); do { x0=(x1+x2)/2; fx0=x0*((2*x0-4)*x0+3)-6; /***********SPACE***********/ if(fx0*fx1【?】) { x2=x0; fx2=fx0; } else { x1=x0; fx1=fx0; } } /***********SPACE***********/ while(【?】>=1e-5); printf(“x=%6.2f\n“,x0); } 5.不用第三个变量,实现两个数的对调操作。

#include <stdio.h> main() { int a,b; scanf(“%d %d“,&a,&b); printf(“a=%d,b=%d\n“,a,b); /***********SPACE***********/ a= 【?】 ; /***********SPACE***********/ b= 【?】 ; /***********SPACE***********/ a= 【?】 ; printf(“a=%d,b=%d\n“,a,b); } 6.计算圆周率的近似值。

#include <stdio.h> #include <math.h> main() { int s,n; /***********SPACE***********/ double 【?】,t; t=1;pi=0;n=1;s=1; /***********SPACE***********/ while(【?】>=2e-6) { pi+=t;n+=2;s=-s;t=s/n; } /***********SPACE***********/ pi*=【?】; printf(“pi=%.6f\n“,pi); } 7.计算并输出n(包括n)以内能被3或7整除的所有自然数的倒数之和。

例如,从键盘给n输入30后,输出为:S=1.226323。

#include <stdio.h> main() { int i,n; /***********SPACE***********/ float 【?】; printf(“请输入n: “); /***********SPACE***********/ 【?】(“%d“, &n); sum = 0.0; /***********SPACE***********/ for (i=1; i<=n ; 【?】) { if (i%3==0 || i%7==0) /***********SPACE***********/ sum += 【?】; } /***********SPACE***********/ printf(“s=%f\n“,【?】); } 8.将字母转换成密码,转换规则是将当前字母变成其后的第四个字母,但W变成A、X变成B、Y变成C、Z变成D。小写字母的转换规则同样。

#include <stdio.h> main() { char c; /***********SPACE***********/ while((c=【?】)!='\n') { /***********SPACE***********/ if((c>='a'&&c<='z')||(c>='A'&&c<='Z'))【?】; /***********SPACE***********/ if((c>'Z'【?】c<='Z'+4)||c>'z') c-=26; printf(“%c“,c); } } 9.百鸡问题:100元买100只鸡,公鸡一只5元钱,母鸡一只3元钱,小鸡一元钱三只,求100元钱能买公鸡、母鸡、小鸡各多少只? #include <stdio.h> main() { int cocks,hens,chicks; cocks=0; while(cocks<=19) { /***********SPACE***********/ 【?】=0; /***********SPACE***********/ while(hens<=【?】) { chicks=100-cocks-hens; if(5*cocks+3*hens+chicks/3==100) printf(“%d,%d,%d\n“,cocks,hens,chicks); /***********SPACE***********/ 【?】; } /***********SPACE***********/ 【?】; } } 10.三角形的面积为:area=sqrt(s*(s-a)*(s-b)*(s-c)).其中 ,s=(a+b+c)/2,a、b、c为三角形三条边的长。定义两个带参数的宏,一个用来求s,另一个用来求area。编写程序,在程序中用带参数的宏求面积area。

#include <stdio.h> #include “math.h“ /***********SPACE***********/ #【?】 S(x,y,z)(x+y+z)/2 #define AREA(s,x,y,z)sqrt(s*(s-x)*(s-y)*(s-z)) main() { double area; float a,b,c,s; printf(“a,b,c=“); /***********SPACE***********/ scanf(“%f,%f,%f“,&a,【?】,&c); if(a+b>c&&b+c>a&&c+a>b) { /***********SPACE***********/ s=【?】; /***********SPACE***********/ area=【?】; printf(“area=%f\n“,area); } } 11.已知一个数列,它的头两项分别是0和1,从第三项开始以后的每项都是其前两项之和。编程打印此数,直到某项的值超过200为止。

#include <stdio.h> main() { int i,f1=0,f2=1; /***********SPACE***********/ for(【?】;;i++) { printf(“5%d“,f1); /***********SPACE***********/ if(f1>【?】) break; printf(“5%d“,f2); if(f2>200) break; if(i%2==0) printf(“\n“); f1+=f2; /***********SPACE***********/ f2+=【?】; } printf(“\n“); } 12.以下程序的功能是:输出a、b、c三个变量中的最小值。

#include <stdio.h> main() { int a,b,c,t1,t2; /***********SPACE***********/ scanf(“%d%d%d“,&a,&b, 【?】); t1=a<b? a:b; /***********SPACE***********/ t2=c<t1? 【?】; printf(“%d\n“,t2); } 13.以下程序的功能是:输出a、b、c三个变量中的最小值。

#include <stdio.h> main() { int a,b,c,t1,t2; /***********SPACE***********/ scanf(“%d%d%d“,&a,&b, 【?】); t1=a<b? a:b; /***********SPACE***********/ t2=c<t1? 【?】; printf(“%d\n“,t2); } 14.以下程序的功能如(图1)。

#include <stdio.h> /***********SPACE***********/ 【?】 main() { double x,f; scanf(“%f“,&x); /***********SPACE***********/ if(x<0) 【?】; /***********SPACE***********/ else if(【?】) f=2*x+1; else f=sin(x)+5; /***********SPACE***********/ printf(“x=%f,y=%f\n“, 【?】); }

推荐访问:38npt螺纹底孔 3当今世界经济发展基本特点和趋势认识 3我深知你是我惟一所爱32-pec 3简述教育评价的功能
上一篇:市直机关工委2020年上半年宣传工作总结
下一篇:20205.4青年节活动方案策划合集

Copyright @ 2013 - 2018 优秀啊教育网 All Rights Reserved

优秀啊教育网 版权所有