c语言课后题答案.docx

上传人:b****2 文档编号:917922 上传时间:2023-04-30 格式:DOCX 页数:58 大小:34.66KB
下载 相关 举报
c语言课后题答案.docx_第1页
第1页 / 共58页
c语言课后题答案.docx_第2页
第2页 / 共58页
c语言课后题答案.docx_第3页
第3页 / 共58页
c语言课后题答案.docx_第4页
第4页 / 共58页
c语言课后题答案.docx_第5页
第5页 / 共58页
c语言课后题答案.docx_第6页
第6页 / 共58页
c语言课后题答案.docx_第7页
第7页 / 共58页
c语言课后题答案.docx_第8页
第8页 / 共58页
c语言课后题答案.docx_第9页
第9页 / 共58页
c语言课后题答案.docx_第10页
第10页 / 共58页
c语言课后题答案.docx_第11页
第11页 / 共58页
c语言课后题答案.docx_第12页
第12页 / 共58页
c语言课后题答案.docx_第13页
第13页 / 共58页
c语言课后题答案.docx_第14页
第14页 / 共58页
c语言课后题答案.docx_第15页
第15页 / 共58页
c语言课后题答案.docx_第16页
第16页 / 共58页
c语言课后题答案.docx_第17页
第17页 / 共58页
c语言课后题答案.docx_第18页
第18页 / 共58页
c语言课后题答案.docx_第19页
第19页 / 共58页
c语言课后题答案.docx_第20页
第20页 / 共58页
亲,该文档总共58页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

c语言课后题答案.docx

《c语言课后题答案.docx》由会员分享,可在线阅读,更多相关《c语言课后题答案.docx(58页珍藏版)》请在冰点文库上搜索。

c语言课后题答案.docx

c语言课后题答案

1.编写程序,实现从键盘输入学生的3门课成绩,计算并输出其总成绩sum,平均成绩ave和总成绩除3的余数rem。

程序如下:

#include"stdio.h"

main()

{

intscore1,score2,score3,sum,ave,rem;

printf("Pleaseinput3scores:

");

scanf("%d%d%d",&score1,&score2,&score3);

sum=score1+score2+score3;

ave=sum/3;

rem=sum%3;

printf("sum=%d,ave=%d,rem=%d",sum,ave,rem);

}

2.输入三角形的三边长,求三角形的面积。

已知三角形的三边长求三角形的面识公式为:

area=

,其中a、b、c为三角形三边,s=(a+b+c)/2。

程序如下:

#include"stdio.h"

#include"math.h"

main()

{

floats,a,b,c,area;

printf("Pleaseinputa,b,c:

");

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

s=(a+b+c)/2;

area=sqrt(s*(s-a)*(s-b)*(s-c));

printf("area=%f",area);

}

3.用格式控制符打印以下图形。

*

***

*****

*******

程序如下:

#include"stdio.h"

main()

{

printf("*\n");

printf("***\n");

printf("*****\n");

printf("*******");

}

4.编程从键盘上输入一行字符,依次读入字符并同时显示在屏幕上。

#include"stdio.h"

main()

{

charch;

printf("pleaseinputstring:

");

do

{

scanf("%c",&ch);

printf("%c",ch);

}while(ch!

=10);

}

5.打印出如下图案:

*

***

******

********

******

***

*

程序如下:

#include"stdio.h"

main()

{

inti,j;

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

{

for(j=1;j<=2*i-1;j++)

printf("*");

printf("\n");

}

for(i=3;i>=1;i--)

{

for(j=2*i-1;j>=1;j--)

printf("*");

printf("\n");

}

}

6.一个数如果恰好等于它的因子之和,这个数就称为“完数”。

例如6=1+2+3。

编程找出1000以内的所有完数。

程序如下:

#include"stdio.h"

main()

{

inti,j,sum;

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

{

for(j=1,sum=0;j<=i/2;j++)

if(i%j==0)

sum+=j;

if(sum==i)

printf("%-6d",i);

}

}

7.古典问题:

有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?

程序如下:

#include

voidmain()

{

longf1,f2;

inti,n,m;

f1=f2=1;

printf("输入月数:

\n");

scanf("%d",&n);

for(i=3;i<=n;i++)

{

m=f2;

f2+=f1;

f1=m;

}

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

}

8.打印楼梯,同时在楼梯上方打印两个笑脸

程序如下:

#include"stdio.h"

main()

{

inti,j;

printf("\1\1\n");

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

{

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

printf("%c%c",219,219);

printf("\n");

}

}

9.编程输出国际象棋棋盘。

程序如下:

#include"stdio.h"

main()

{

inti,j;

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

{

for(j=1;j<8;j++)

if((i+j)%2==0)

printf("%c%c",219,219);

else

printf("");

printf("\n");

}

}

10.一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

(如果一个数的平方根的平方等于该数,这说明此数是完全平方数)

程序如下:

#include"math.h"

main()

{

longinti,x,y;

x=sqrt(i+100);  /*x为加上100后开方后的结果*/

y=sqrt(i+268);  /*y为再加上168后开方后的结果*/

if(x*x==i+100&&y*y==i+268)/*如果一个数的平方根的平方等于该数,这说明此数是完全平方数*/

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

}

11.打印出杨辉三角形(要求打印出10行图如下) 

1

11

121

1331

14641

15101051

程序如下:

main()

{

intl,r,c;

longintv;

printf("Inputtherankofthetriangle:

\n");/*输入行数*/

scanf("%d",&r);

while(r<1||r>15)/*范围1~15,自己用可以省去*/

{printf("\nError!

Inputagain:

\n");

scanf("%d",&r);

}

for(l=1;l<=r;l++)

{for(v=0;v<17-l;v++)

printf("");

v=1;

printf("1");

for(c=2;c<=l;c++)

{v=v*((l-1)-(c-1)+1)/(c-1);/*!

核心公式!

*/

if(v<100)/*底下是控制打印后留的空格,

让整个三角形更美观*/

if(v<10)

printf("%ld",v);

else

printf("%ld",v);

elseprintf("%ld",v);

}

printf("\n");

}

}

12.百元买百鸡问题。

假定小鸡每只5角,公鸡每只2元,母鸡每只3元。

现在有100元钱要求买100只鸡,编程列出所有可能的购鸡方案。

程序如下:

main()

{

inti,j,k;

intm=100/5,n=100/3;

for(i=1;i

{

for(j=1;j

{

k=100-i-j;

if(i*5+j*3+k/3==100&&i+j+k==100&&k%3==0)

printf("i=%d,j=%d,k=%d\n",i,j,k);

}

}

}

13.输入两个自然数,求解最大公约数。

程序如下:

#include

intmain()

{

inta,b,num1,num2,temp;

printf("Inputa&b:

");

scanf("%d%d",&num1,&num2);

if(num1>num2)/*找出两个数中的较大值*/

{

temp=num1;num1=num2;num2=temp;/*交换两个整数*/

}

a=num1;b=num2;

while(b!

=0)/*采用辗转相除法求最大公约数*/

{

temp=a%b;

a=b;

b=temp;

}

printf("TheGCDof%dand%dis:

%d\n",num1,num2,a);/*输出最大公约数*/

}

14.将可打印的ASCII码制成表格输出,使每个字符与它的编码值对应起来,每行打印7个字符。

程序如下:

#include"stdio.h"

main()

{

inti,j=0;

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

{

printf("%c%d",i,i);

j++;

if(j%7==0)

printf("\n");

}

}

1.编写程序,实现从键盘输入学生的3门课成绩,计算并输出其总成绩sum,平均成绩ave和总成绩除3的余数rem。

程序如下:

#include"stdio.h"

main()

{

intscore1,score2,score3,sum,ave,rem;

printf("Pleaseinput3scores:

");

scanf("%d%d%d",&score1,&score2,&score3);

sum=score1+score2+score3;

ave=sum/3;

rem=sum%3;

printf("sum=%d,ave=%d,rem=%d",sum,ave,rem);

}

2.输入三角形的三边长,求三角形的面积。

已知三角形的三边长求三角形的面识公式为:

area=

,其中a、b、c为三角形三边,s=(a+b+c)/2。

程序如下:

#include"stdio.h"

#include"math.h"

main()

{

floats,a,b,c,area;

printf("Pleaseinputa,b,c:

");

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

s=(a+b+c)/2;

area=sqrt(s*(s-a)*(s-b)*(s-c));

printf("area=%f",area);

}

3.用格式控制符打印以下图形。

*

***

*****

*******

程序如下:

#include"stdio.h"

main()

{

printf("*\n");

printf("***\n");

printf("*****\n");

printf("*******");

}

4.编程从键盘上输入一行字符,依次读入字符并同时显示在屏幕上。

#include"stdio.h"

main()

{

charch;

printf("pleaseinputstring:

");

do

{

scanf("%c",&ch);

printf("%c",ch);

}while(ch!

=10);

}

7.打印出如下图案:

*

***

******

********

******

***

*

程序如下:

#include"stdio.h"

main()

{

inti,j;

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

{

for(j=1;j<=2*i-1;j++)

printf("*");

printf("\n");

}

for(i=3;i>=1;i--)

{

for(j=2*i-1;j>=1;j--)

printf("*");

printf("\n");

}

}

8.一个数如果恰好等于它的因子之和,这个数就称为“完数”。

例如6=1+2+3。

编程找出1000以内的所有完数。

程序如下:

#include"stdio.h"

main()

{

inti,j,sum;

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

{

for(j=1,sum=0;j<=i/2;j++)

if(i%j==0)

sum+=j;

if(sum==i)

printf("%-6d",i);

}

}

7.古典问题:

有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?

程序如下:

#include

voidmain()

{

longf1,f2;

inti,n,m;

f1=f2=1;

printf("输入月数:

\n");

scanf("%d",&n);

for(i=3;i<=n;i++)

{

m=f2;

f2+=f1;

f1=m;

}

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

}

8.打印楼梯,同时在楼梯上方打印两个笑脸

程序如下:

#include"stdio.h"

main()

{

inti,j;

printf("\1\1\n");

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

{

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

printf("%c%c",219,219);

printf("\n");

}

}

9.编程输出国际象棋棋盘。

程序如下:

#include"stdio.h"

main()

{

inti,j;

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

{

for(j=1;j<8;j++)

if((i+j)%2==0)

printf("%c%c",219,219);

else

printf("");

printf("\n");

}

}

10.一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

(如果一个数的平方根的平方等于该数,这说明此数是完全平方数)

程序如下:

#include"math.h"

main()

{

longinti,x,y;

x=sqrt(i+100);  /*x为加上100后开方后的结果*/

y=sqrt(i+268);  /*y为再加上168后开方后的结果*/

if(x*x==i+100&&y*y==i+268)/*如果一个数的平方根的平方等于该数,这说明此数是完全平方数*/

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

}

11.打印出杨辉三角形(要求打印出10行图如下) 

1

11

121

1331

14641

15101051

程序如下:

main()

{

intl,r,c;

longintv;

printf("Inputtherankofthetriangle:

\n");/*输入行数*/

scanf("%d",&r);

while(r<1||r>15)/*范围1~15,自己用可以省去*/

{printf("\nError!

Inputagain:

\n");

scanf("%d",&r);

}

for(l=1;l<=r;l++)

{for(v=0;v<17-l;v++)

printf("");

v=1;

printf("1");

for(c=2;c<=l;c++)

{v=v*((l-1)-(c-1)+1)/(c-1);/*!

核心公式!

*/

if(v<100)/*底下是控制打印后留的空格,

让整个三角形更美观*/

if(v<10)

printf("%ld",v);

else

printf("%ld",v);

elseprintf("%ld",v);

}

printf("\n");

}

}

12.百元买百鸡问题。

假定小鸡每只5角,公鸡每只2元,母鸡每只3元。

现在有100元钱要求买100只鸡,编程列出所有可能的购鸡方案。

程序如下:

main()

{

inti,j,k;

intm=100/5,n=100/3;

for(i=1;i

{

for(j=1;j

{

k=100-i-j;

if(i*5+j*3+k/3==100&&i+j+k==100&&k%3==0)

printf("i=%d,j=%d,k=%d\n",i,j,k);

}

}

}

13.输入两个自然数,求解最大公约数。

程序如下:

#include

intmain()

{

inta,b,num1,num2,temp;

printf("Inputa&b:

");

scanf("%d%d",&num1,&num2);

if(num1>num2)/*找出两个数中的较大值*/

{

temp=num1;num1=num2;num2=temp;/*交换两个整数*/

}

a=num1;b=num2;

while(b!

=0)/*采用辗转相除法求最大公约数*/

{

temp=a%b;

a=b;

b=temp;

}

printf("TheGCDof%dand%dis:

%d\n",num1,num2,a);/*输出最大公约数*/

}

14.将可打印的ASCII码制成表格输出,使每个字符与它的编码值对应起来,每行打印7个字符。

程序如下:

#include"stdio.h"

main()

{

inti,j=0;

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

{

printf("%c%d",i,i);

j++;

if(j%7==0)

printf("\n");

}

}

1.编写程序,实现从键盘输入学生的3门课成绩,计算并输出其总成绩sum,平均成绩ave和总成绩除3的余数rem。

程序如下:

#include"stdio.h"

main()

{

intscore1,score2,score3,sum,ave,rem;

printf("Pleaseinput3scores:

");

scanf("%d%d%d",&score1,&score2,&score3);

sum=score1+score2+score3;

ave=sum/3;

rem=sum%3;

printf("sum=%d,ave=%d,rem=%d",sum,ave,rem);

}

2.输入三角形的三边长,求三角形的面积。

已知三角形的三边长求三角形的面识公式为:

area=

,其中a、b、c为三角形三边,s=(a+b+c)/2。

程序如下:

#include"stdio.h"

#include"math.h"

main()

{

floats,a,b,c,area;

printf("Pleaseinputa,b,c:

");

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

s=(a+b+c)/2;

area=sqrt(s*(s-a)*(s-b)*(s-c));

printf("area=%f",area);

}

3.用格式控制符打印以下图形。

*

***

*****

*******

程序如下:

#include"stdio.h"

main()

{

printf("*\n");

printf("***\n");

printf("*****\n");

printf("*******");

}

4.编程从键盘上输入一行字符,依次读入字符并同时显示在屏幕上。

#include"stdio.h"

main()

{

charch;

printf("pleaseinputstring:

");

do

{

scanf("%c",&ch);

printf("%c",ch);

}while(ch!

=10);

}

9.打印出如下图案:

*

***

******

********

******

***

*

程序如下:

#include"stdio.h"

main()

{

inti,j;

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

{

for(j=1;j<=2*i-1;j++)

printf("*");

printf("\n");

}

for(i=3;i>=1;i--)

{

for(j=2*i-1;j>=1;j--)

printf("*");

printf("\n");

}

}

10.一个数如果恰好等于它的因子之和,这个数就称为“完数”。

例如6=1+2+3。

编程找出1000以内的所有完数。

程序如下:

#include"stdio.h"

main()

{

inti,j,sum;

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

{

for(j=1,sum=0;j<=i/2;j++)

if(i%j==0)

sum+=j;

if(sum==i)

printf("%-6d",i);

}

}

7.古典问题:

有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?

程序如下:

#include

voidmain()

{

longf1,f2;

inti,n,m;

f1=f2=1;

printf("输入月数:

\n");

scanf("%d",&n);

for(i=3;i<=n;i++)

{

m=f2;

f2+=f1;

f1=m;

}

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

}

8.打印楼梯,同时在楼梯上方打印两个笑脸

程序如下:

#include"stdio.h"

main()

{

inti,j;

printf("\1\1\n");

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

{

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

printf("%c%c",219,219);

printf("\n");

}

}

9.编程输出国际象棋棋盘。

程序如下:

#include"stdio.h"

main()

{

inti,j;

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

{

for(j=1;j<8;j++)

if((i+j)%2==0)

printf("%c%c",219,219);

else

printf("");

printf("\n");

}

}

10.一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

(如果一个数的平方根的平方等于该数,这说明此数是完全平方数)

程序如下:

#include"math.h"

main()

{

longinti,x,y;

x=sqrt(i+100);  /*x为加上100后开方后的结果

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 动物植物

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2