教材第四章习题.docx
《教材第四章习题.docx》由会员分享,可在线阅读,更多相关《教材第四章习题.docx(34页珍藏版)》请在冰豆网上搜索。
教材第四章习题
教材第四章习题
第一题:
#include
#include
main()
{
doublea,s;
scanf("%lf",&a);
if(a<0)
printf("Thenumberiserror");
else{
s=sqrt(a);
printf("%f",s);
}
}
第2题:
#include
#include
voidmain()
{
doublex,y;
scanf("%lf",&x);
if(x>=0&&x<=8)
y=x+2*pow(x,2)+10;
else
y=x-3*pow(x,3)-9;
printf("y=%f",y);
}
第三题:
第一种方法
#include
voidmain()
{
inta;
scanf("%d",&a);
if(a>=0&&a<60)
printf("E");
if(a>=60&&a<70)
printf("D");
if(a>=70&&a<80)
printf("C");
if(a>=800&&a<90)
printf("B");
if(a>=90&&a<=100)
printf("A");
}
第2种方法:
#include
voidmain()
{
inta,t;
printf("inputdate:
\n");
scanf("%d",&a);
t=a/10;
switch(t){
case1:
case2:
case3:
case4:
case5:
printf("E\n");break;
case6:
printf("D\n");break;
case7:
printf("C\n");break;
case8:
printf("B\n");break;
case9:
case10:
printf("A\n");break;
}
}
第四题:
#include
#include
voidmain()
{
doublex,y,z;
scanf("%lf%lf",&x,&y);
if(x>=0&&y>=0){
z=pow(x,2)+pow(y,2);
printf("z=%f",z);
}
if(x<0&&y<0){
z=pow(x,2)-pow(y,2);
printf("z=%f",z);
}
if(x>0&&y<0){
z=x+y;
printf("x=%f",z);
}
if(x<0&&y<0){
z=x-y;
printf("x=%f",z);
}
}
第五题:
#include
#include
voidmain()
{
doublea,b,c,x,y,z,s,area;
scanf("%lf%lf%lf",&a,&b,&c);
x=a+b-c;
y=a+c-b;
z=c+b-a;
if(x!
=0&&y!
=0&&z!
=0){
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("area=%f\n",area);
}
else
printf("error!
\n");
}
第六题:
#include
#include
voidmain()
{
inta;
printf("inputafiger:
\n");
scanf("%d",&a);
switch(a){
case1:
printf("星期1");break;
case2:
printf("星期2");break;
case3:
printf("星期3");break;
case4:
printf("星期4");break;
case5:
printf("星期5");break;
case6:
printf("星期6");break;
case7:
printf("星期7");break;
}
}
第七题:
#include
voidmain()
{
inty,m,d,i,mon=0,sum=0;
inta[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
printf("inpury-m-d:
\n");
scanf("%d-%d-%d",&y,&m,&d);
if(m<=0||m>12||d<=0||d>31){
printf("error!
\n");
exit(0);
}
if(y/4==0&&y/100==0||y/400==0)
a[2]=29;
for(i=0;imon+=a[i];
sum=mon+d;
printf("sum=%d",sum);
}
第八题:
#include
voidmain()
{
intn,s=1,i,x;
printf("inputn:
\n");
scanf("%d",&n);
printf("inputnfigers:
\n");
for(i=0;iscanf("%d",&x);
if(x%2!
=0){
s*=x;
}
}
printf("s=%d",s);
}
第九题:
#include
#include
voidmain()
{
inta,t,sum=0,d;
printf("inputafiger:
\n");
scanf("%d",&a);
if(a<0){
printf("error!
\n");
exit(0);
}
do{
t=a%10;
sum=sum+t;
d=a;
a=d/10;
}while(a!
=0);
printf("sum=%d",sum);
}
第十题:
#include
voidmain()
{
intn,a=0,b=0,c=0,i;
doublex;
printf("inputn:
\n");
scanf("%d",&n);
printf("inputnfigers:
\n");
for(i=0;iscanf("%lf",&x);
if(x<0)
a++;
if(x==0)
b++;
if(x>0)
c++;
}
printf("负数个数:
%d\n",a);
printf("零个数:
%d\n",b);
printf("正数个数:
%d\n",c);
}
第十一题:
#include
voidmain()
{
intn=10,i;
doublex,y;
printf("input10figers:
\n");
scanf("%lf",&y);
for(i=0;iscanf("%lf",&x);
y=yy:
x;
}
printf("thelowfigeris:
%f\n",y);
}
第12题:
#include
voidmain()
{
intn=10,i;
doublex,mix,max,sum,aver,t;
printf("请输入10个选手的评分:
\n");
scanf("%lf",&t);
max=t;
mix=t;
sum=t;
for(i=0;iscanf("%lf",&x);
if(x<0||t<0){
printf("error!
");
exit(0);
}
sum+=x;
mix=mixmix:
x;
max=max>x?
max:
x;
}
aver=(sum-max-mix)/8;
printf("aver=%f",aver);
}
第十三题:
#include
voidmain()
{
intx=65,n=90,i;
for(i=x;i<=90;i++)
printf("%cASCII:
%d\t",i,i);
printf("\n");
}
第十四题:
#include
#include
voidmain()
{
inti,x,y,z,t,h;
for(i=100;i<1000;i++){
x=pow(i/100,3);
t=i/10;
y=pow(t%10,3);
z=pow(i%10,3);
h=x+y+z;
if(h==i)
printf("i=%d\t",i);
}
}
第十五题:
#include
#include
voidmain()
{
intn;
doublei,sum=0,t;
printf("inputn:
\n");
scanf("%d",&n);
for(i=1;i<=n;i++){
t=pow((-1),(i+1))/i;
sum+=t;
}
printf("sum=%f",sum);
}
第十六题:
#include
voidmain()
{
inti;
doubleh,c;
for(i=30;i<=40;i++){
h=i;
c=5*(h-32)/9;
printf("h=%f\tc=%f\n",h,c);
}
}
第十七题:
#include
#include
voidmain()
{
intn;
doublei,sum=0,a=81;
printf("inputn:
\n");
scanf("%d",&n);
for(i=0;isum+=a;
a=sqrt(a);
}
printf("sum=%f",sum);
}
第十八题:
#include
voidmain()
{
inti,j,t;
for(i=1;i<10;i++){
for(j=1;j<=i;j++){
t=j*i;
printf("%d*%d=%d\t",j,i,t);
}
printf("\n");
}
}
第十九题:
#include
voidmain()
{
inta=1,i,s=0;
for(i=0;i<10;i++)
s=(s+1)*2;
printf("s=%d\n",s);
}
第20题:
#include
voidmain()
{
inti,j,h,n;
printf("inpurn:
\n");
scanf("%d",&n);
for(i=1;i<=n;i++){
for(j=0;jprintf("\t");
for(h=0;h<2*i-1;h++){
printf("*");
printf("\t");
}
printf("\n");
}
}
(第2小题)
#include
voidmain()
{
inti,j,h,n;
printf("inpurn:
\n");
scanf("%d",&n);
for(i=1;i<=n;i++){
for(j=0;jprintf("\t");
for(h=0;h<2*i-1;h++){
printf("*");
printf("\t");
}
printf("\n");
}
for(i=1;ifor(j=1;j<=i;j++)
printf("\t");
for(h=0;h<(n-i)*2-1;h++){
printf("*");
printf("\t");
}
printf("\n");
}
}
第21题:
#include
#include
voidmain()
{
inta,b,i,j,t,z;
printf("inputab:
\n");
scanf("%d%d",&a,&b);
z=a;
a=a
a:
b;
b=b>z?
b:
z;
for(i=a;i<=b;i++){
for(j=2,t=2;j
if(i%j==0)t=0;//只要有一个被i整除,t值就立刻改变,就说明不是素数。
if(t==2)
printf("%d\t",i);
}
printf("\n");
}
第22题:
#include
#include
voidmain()
{
doublex,mix,max,f;
x=-2;
max=pow(x,2)-3.14*x-6;
mix=pow(x,2)-3.14*x-6;
while(x>=-2&&x<=2){
x=x+0.5;
f=pow(x,2)-3.14*x-6;
max=max>f?
max:
f;
mix=mixmix:
f;
}
printf("max=%f,mix=%f",max,mix);
}
第23题:
#include
#include
voidmain()
{
intn=0,f,i,j,t;
for(i=-39;i<=40;i++){
f=i*i+i+41;
for(j=2,t=1;jif(f%j==0)
t=0;
if(t==1){
printf("(%d,%d)\t",i,f);
n++;
}
}
if(n<80)
printf("notallis\n");
}
(阳历的)日历
#include
#include
voidmain()
{
intm,i,j,n=0,y=2010,wo,w,a;
printf("inputtheformof:
year-month:
\t");
scanf("%d-%d",&y,&m);//输入格式的决定
if(y%4==0&&y%100!
=0||y%400==0)
a=29;
elsea=28;//闰年的判断及2月日数的确定
if(m<1||m>12){
printf("monthisnotexit,pleaseinputlater!
\n");
exit(0);
}
wo=(y+(y-1)/4-(y-1)/100+(y-1)/400)%7;//1月1日的算法wo表示
for(i=0;i<55;i++)
printf("*");//*的输入
printf("\n");
for(j=1;j<=7;j++)
printf("星期%d\t",j);//星期的输入
printf("\n");//表前的建造
switch(m){
case1:
for(i=1;iprintf("\t");
n++;
}
for(j=1;j<=31;j++){
if(n%7==0)
printf("\n");
printf("%d\t",j);
n++;
}
break;//1month
case2:
w=(wo+31)%7;
for(i=1;iprintf("\t");
n++;
}
for(j=1;j<=a;j++){
if(n%7==0)
printf("\n");
printf("%d\t",j);
n++;
}
break;//2month
case3:
w=(wo+31+a)%7;
for(i=1;iprintf("\t");
n++;
}
for(j=1;j<=31;j++){
if(n%7==0)
printf("\n");
printf("%d\t",j);
n++;
}
break;//3month
case4:
w=(wo+31+a+31)%7;
for(i=1;iprintf("\t");
n++;
}
for(j=1;j<=30;j++){
if(n%7==0)
printf("\n");
printf("%d\t",j);
n++;
}
break;//4month
case5:
w=(wo+31+a+31+30)%7;
for(i=1;iprintf("\t");
n++;
}
for(j=1;j<=31;j++){
if(n%7==0)
printf("\n");
printf("%d\t",j);
n++;
}
break;//5month
case6:
w=(wo+31+a+31+30+31)%7;
for(i=1;iprintf("\t");
n++;
}
for(j=1;j<=30;j++){
if(n%7==0)
printf("\n");
printf("%d\t",j);
n++;
}
break;//6month
case7:
w=(wo+31+a+31+30+31+30)%7;
for(i=1;iprintf("\t");
n++;
}
for(j=1;j<=31;j++){
if(n%7==0)
printf("\n");
printf("%d\t",j);
n++;
}
break;//7month
case8:
w=(wo+31+a+31+30+31+30+31)%7;
for(i=1;iprintf("\t");
n++;
}
for(j=1;j<=31;j++){
if(n%7==0)
printf("\n");
printf("%d\t",j);
n++;
}
break;//8month
case9:
w=(wo+31+a+31+30+31+30+31+31)%7;
for(i=1;iprintf("\t");
n++;
}
for(j=1;j<=30;j++){
if(n%7==0)
printf("\n");
printf("%d\t",j);
n++;
}
break;//9month
case10:
w=(wo+31+a+31+30+31+30+31+31+30)%7;
for(i=1;iprintf("\t");
n++;
}
for(j=1;j<=31;j++){
if(n%7==0)
printf("\n");
printf("%d\t",j);
n++;
}
break;//10month
case11:
w=(wo+31+a+31+30+31+30+31+31+30+31)%7;
for(i=1;iprintf("\t");
n++;
}
for(j=1;j<=30;j++){
if(n%7==0)
printf("\n");
printf("%d\t",j);
n++;
}
break;//11month
case12:
w=(wo+31+a+31+30+31+30+31+31+30+31+30)%7;
for(i=1;iprintf("\t");
n++;
}
for(j=1;j<=31;j++){
if(n%7==0)
printf("\n");
printf("%d\t",j);
n++;
}
break;//12month
}
printf("\n");
for(i=0;i<55;i++)
printf("*");
printf("\n");//表尾的处理
}
#include
#include
voidmain()
{
intm,i,j,n=0,y=2010,wo,w,a;
printf("inputtheformof:
year-month:
\t");
scanf("%d-%d",&y,&m);//输入格式的决定
if(y%4==0&&y%100!
=0||y%400==0)
a=29;
elsea=28;//闰年的判断及2月日数的确定
if(m<1||m>12){
printf("monthisnotexit,pleaseinputlater!
\n");
exit(0);
}
wo=(y+(y-1)/4-(y-1)/100+(y-1)/400)%7;//1月1日的算法wo表示
for(i=0;i<55;i++)
pri