c语言 大雨 班上多个同学准备,全体班级成员成果——铁道版C语言主要课后习题答案(一)...

铁道版C语言主要课后习题答案(一)

第二单元

15,试用条件运算编写程序,要求输入两个字符,输出其中较小的字符,输出其中较小字符的ASCII码值.

#include

void main()

{char a,b,min;

printf("请输入两个字符:");

scanf("%c%c",&a, &b);

min=a

printf("%d",min);}

第四单元:

6,从键盘输入五个数字,编程求五个数中的偶数之和。

#include

void main()

{int i,j,a[10][10];

for(i=0;i<10;i++)

{a[i][0]=1;

a[i][i]=1;}

for(i=2;i<10;i++)

for(j=1;j

a[i][j]=a[i-1][j-1]+a[i-1][j];

for(i=0;i<10;i++)

{ for(j=0;j<=i;j++)

printf("%d ",a[i][j]);

printf("\n");}

}

7, 编程判断某数N是否能被K整除。

#include

void main()

{float n,k;

printf("请输入被除数N和除数K:");

scanf("%f%f",&n,&k);

if(n%k==0) printf("\n%f能被%f整除!",n,k);

else printf("\n%f不能被%f整除!",n,k);}

8,输入三个数a,b,c,要求按从从小到大的顺序输出。

#include

void main()

{float a,b,c,t;

scanf("%f%f%f",&a,&b,&c);

if(a>b) {t=a;a=b;b=t;}

if(a>c) {t=a;a=c;c=t;}

if(b>c) {t=b;b=c;c=t;}

printf("%4f%4f%4f",a,b,c);}

9,编制一个计算y=f(x)的程序,其中

y=-x+2.5 (0<=x<2)

=2-1.5(x-3)(x-3) (2<=x<4)

=x/2-1.5 (4<=x<6)

#include

void main()

{float x,y;

printf("请输入数字:");

scanf("%f",&x);

if(x<0||x>=6) printf("数字超过计算范围!");

else {if(x>=0&&x<2) y=-x+2.5;

else if(x>=2&&x<4) y=2-1.5*(x-3)*(x-3);

else (x>=4&&x<6) y=x/2-1.5;}

printf("%f",y);

}

10,编程.输入成绩,输出成绩和级别

A级90-100

B级80-89

C级60-79

D级0-59

#include

void main()

{int y;

float x;

printf("输入成绩: ");

scanf("%f",&x);

if(x<0||x>100.0) printf("错误成绩——超出范围!");

else{y=x/10;

switch(y)

{case 10:

case 9: printf("%f A",x);break;

case 8: printf("%f B",x);break;

case 7:

case 6: printf("%f C",x);break;

default: printf("%f D",x);

}} }

11,编程,输入三个整数,判断他们是否能够构成三角形,若能构成三角形,则输入三角形的类型.

#include

void main()

{int a,b,c;

printf("请输入三角形的三边:");

scanf("%d%d%d",&a,&b,&c);

if((a+b<=c)||(a+c<=b)||(b+c<=a))

printf("不能!");

else{if (a==b&&b==c)

printf("等边!");

else if(a==b||a==c||b==c)

printf("等腰!");

}

else printf("一般!");

}

12,

#include

void main()

{float a,b,c;

printf("请输入本金和期限:");

scanf("%f%f",&a,&b);

if (b=1) c=a*(1+0.0063);

if (b=2) c=a*(1+0.0066);

if (b=3) c=a*(1+0.0069);

if (b=5) c=a*(1+0.0075);

if (b=8) c=a*(1+0.0084);

printf("本息和为:%f",c);

}

13,输入两个整数,若他们的平方和大雨100,则输入该平方和的百位数以上的各位数字,否则输入两个整数的和.

#include

void main()

{int a,b,m;

printf("请输入两个整数:");

scanf("%d%d",&a,&b);

if(a*a>100) m=(a*a+b*b)/100;

else m=a+b;

printf("%d",m);

}

14,编程,输入一个不超过5位数的正整数,输出他的个位数,并指出它是几位数.

#include

void main()

{int a,b,c;

printf("输入一个不超过五位的正整数:");

scanf("%d",&a);

if(a>0&&a<10) b=a,c=1;

if(a>9&&a<100) b=a%10,c=2;

if(a>99&&a<1000) b=a%10,c=3;

if(a>999&&a<10000)

b=a%10,c=4;

printf("它的个位数是%d,它是%d位数。",b,c);

}

15,编程,加密数据。方法:对给定的4位整数值.每一个数字均加2.且在[0,9]

范围内.若加密后那位数字大于9,则取其被10除的余数.如6789加密后为8901

#include

void main()

{int x,a,b,c,d;

printf("请输入一个四位正整数:");

scanf("%d",&x);

a=x/1000;

b=x/100%10;

c=x/10%10;

d=x%10;

a=a+2;b=b+2;c=c+2;d=d+2;

a=a%10;b=b%10;c=c%10;d=d%10;

printf("加密后的数字为%d",a*1000+b*100+c*10+d);}

16,输入年份和月份,求该月有多少天.

#include

void main()

{int a,b,c;

printf("请输入年份和月份:");

scanf("%d%d",&a,&b);

switch(b)

{case 1:

case 3:

case 5:

case 7:

case 8:

case 10:

case 12:printf("该月有31天!");break;

case 4:

case 6:

case 9:

case 11:printf("该月有30天!");break;

case

2:if((a%4==0&&a%100!=0)||(a%400==0))

printf("该月有29天!");

else printf("该月有28天!");

}

}

17,编程,输入一个学生的生日,并输入当前的日期,输出该生的实际年龄.

#include

void main()

{int y0,m0,d0,y1,m1,d1;

printf("请输入生日和当前日期:");

scanf("%d%d%d",&y0,&m0,&d0);

scanf("%d%d%d",&y1,&m1,&d1);

if(m1>=m0)

printf("%d岁零%d个月",y1-y0,m1-m0);

else

printf("%d岁零%d个月",y1-y0-1,m1-m0+12);}

18,编写一个简单的计算器程序,输入格式为:data1 op

data2.其中data1和data2是参加运算的两个数字,op为运算符.

#include

void main()

{float d1,d2;

char op;

printf("请输入:");

scanf("%f%c%f",&d1,&op,&d2);

switch(op)

{case '*':printf("%f",d1*d2);break;

case '/':printf("%f",d1/d2);break;

case '+':printf("%f",d1+d2);break;

case '-':printf("%f",d1-d2);break;

}

}

第五单元:

5:

#include

void main()

{int a,i,s=1;

printf("请输入一个整数:");

scanf("%d",&a);

for(i=1;i<=a;i++)

s=s*i;

printf("%d",s);

}

6:

#include

void main()

{int i;

for(i=10;i<100;i++)

{if(i%15==0)

printf("%d ",i);}

}

7:

#include

void main()

{int i,a,b,c,d;

for(i=1010;i<=9999;i++)

{a=i/1000;b=i/100%10;c=i/10%10;d=i%10;

if((i%2==0)&&(a!=b)&&(a!=c)&&(a!=d)&&(b!=c)&&(b!=d)&&(c!=d))

printf("%d\n",i);

}

}

8:

#include

void main()

{float a=1.0,i=1.0,x;

scanf("%f",&x);

while(1/a>0.000001)

{a=a*x;i=i+1/a;}

printf("%f",i);}

9:

#include

void main()

{int i=100,a,b,c;

for(;i<999;i++)

{a=i/100;

b=i/10%10;

c=i%10;

if(i==a*a*a+b*b*b+c*c*c)

printf("%d ",i);}

}

10:

#include

void main()

{int i,n;

scanf("%d",&n);

for(i=2;i

if(n%i==0)

printf("不是");

else printf("是");

}

11:

#include

void main()

{int x,y,a,m,n;

scanf("%d%d",&x,&y);

m=x;n=y;

while(x%y!=0)

{a=x%y;x=y;y=a;}

printf("最大公约数为%d最小公倍数为%d",y,m*n/y);

}

12:

#include

#include

void main()

{float a,b,t;

int c=1000;

scanf("%f",&a);

do{b=0.5*(c+a/c);t=c-b;c=b;}

while(abs(t)>0.000001);

printf("%f",b);

}

15:

#include

void main()

{int a;

for(a=7;a<=1000;a++)

if(a%2==1&&a%3==2&&a%5==4&&a%6==5&&a%7==0)

printf("\n%d",a);}

17:

#include

void main()

{int a=5,d=1;

for(d=1;d<=2;d++)

if((a-2*d)*(a-d)*a*(a+d)*(a+2*d)==945)

printf("%d %d %d %d %d",a-2*d,a-d,a,a+d,a+2*d);}

18:

#include

void main()

{int i,a,b,c,d,e;

for(i=1;i<100;i++)

{e=5*i+1;

d=5*e/4+1;if(e%4!=0)continue;

c=5*d/4+1;if(d%4!=0)continue;

b=5*c/4+1;if(c%4!=0)continue;

a=5*b/4+1;if(b%4==0)break;}

printf("%d",a);}

19:

#include

void main()

{int a,b,i,c;

for(a=0;a<=9;a++)

for(b=0;b<=9;b++)

{for(i=0;i<100;i++)

if(a*1100+b*11==i*i)

c=a*1100+b*11;}

printf("%d",c);}

20:

#include

void main()

{int a,b,c,d;

for(a=1;a<5;a++)

{for(b=1;b<5;b++)

{if(a!=b)for(c=1;c<5;c++)

{d=10-a-b-c;

if((a==1)+(b==4)+(c==3)==1)

if((b==1)+(a==4)+(c==2)+(d==3)==1)

if((b==4)+(a==3)==1)

if((c==1)+(d==4)+(b==2)+(a==3)==1)

if(a*b*c*d==24)

printf("洞庭湖第%d,洪泽湖第%d,鄱阳湖第%d,太湖第%d",a,b,c,d);

}}

}}

21:

#include

void main()

{int i,j,k;

for(i=1;i<=5;i++)

{{for(j=1;j<=6-i;j++)

printf("%d",j+i-1);

if(i==1&&j==5)printf("\n");}

{for(k=1;k<=i-1;k++)

printf("%d",k);

printf("\n");}}}

22:

#include

void main()

{int n,m,i;

for(n=1;n<=6;n++)

{for(i=1;i<=6-n;i++)

printf(" ");

for(m=1;m<=6;m++)

printf("*");

printf("\n");}}

23:

#include

void main()

{int i,j;

for(i=0;i<9;i++)

{for(j=0;j<9;j++)

{if(i-j==0||i+j==8)

printf("*");

else printf(" ");}

printf("\n");}}

24:

#include

void main()

{int i,j;

for(i=1;i<=5;i++)

{for(j=1;j<=5;j++)

if(i>=2&&i<=4)

{if(i+j==6)

printf("*");

else printf(" ");}

else printf("*");

printf("\n");}}

杨辉三角:

#include

void main()

{int i,j,a[10][10];

for(i=0;i<10;i++)

{a[i][0]=1;

a[i][i]=1;}

for(i=2;i<10;i++)

for(j=1;j

a[i][j]=a[i-1][j-1]+a[i-1][j];

for(i=0;i<10;i++)

{ for(j=0;j<=i;j++)

printf("%d ",a[i][j]);

printf("\n");}

}

绝对内参,禁止外泄!!!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值