×

c语言课后答案

c语言课后答案(c语言课后答案第五版第四章答案)

admin admin 发表于2023-04-12 13:32:07 浏览60 评论0

抢沙发发表评论

本文目录一览:

c语言第三版课后习题答案

1.5请参照本章例题,编写一个C程序,输出以下信息:

**************************

Very Good!

**************************

解:

mian()

{printf(“**************************”);

printf(“\n”);

printf(“Very Good!\n”);

printf(“\n”);

printf(“**************************”);

}

1.6 编写一个程序,输入a、b、c三个值,输出其中最大值。

解:

mian()

{int a,b,c,max;

printf(“请输入三个数a,b,c:\n”);

scanf(“%d,%d,%d”,a,b,c);

max=a;

if(maxb)

max=b;

if(maxc)

max=c;

printf(“最大数为:“%d”,max);

}

第三章

3.6写出以下程序运行的结果。

main()

{char c1=’a’,c2=’b’,c3=’c’,c4=’\101’,c5=’\116’;

printf(“a%cb%c\tc%c\tabc\n”,c1,c2,c3);

printf(“\t\b%c %c”,c4,c5);

}

解:

aaㄩbbㄩㄩㄩccㄩㄩㄩㄩㄩㄩabc

AㄩN

3.7 要将"China"译成密码,译码规律是:用原来字母后面的第4个字母代替原来的字母.例如,字母"A"后面第4个字母是"E"."E"代替"A"。因此,"China"应译为"Glmre"。请编一程序,用赋初值的方法使cl、c2、c3、c4、c5五个变量的值分别为,’C’、’h’、’i’、’n’、’a’,经过运算,使c1、c2、c3、c4、c5分别变为’G’、’l’、’m’、’r’、’e’,并输出。 -c语言课后答案

解:

#include stdio.h

main()

{ char c1=’C’,c2=’h’,c3=’i’,c4=’n’,c5=’a’;

c1+=4;

c2+=4;

c3+=4;

c4+=4;

c5+=4;

printf("密码是%c%c%c%c%c\n",c1,c2,c3,c4,c5);

}

运行结果:

密码是Glmre

3.9求下面算术表达式的值。

(1)x+a%3*(int)(x+y)%2/4

设x=2.5,a=7,y=4.7

(2)(float)(a+b)/2+(int)x%(int)y

设a=2,b=3,x=3.5,y=2.5

(1)2.5

(2)3.5

3.10写出程序运行的结果。

main()

{int i,j,m,n;

i=8;

j=10;

m=++i;

n=j++;

printf(“%d,%d,%d,%d”,i,j,m,n);

}

解:

9,11,9,10

3.12 写出下面表达式运算后a的值,设原来a=12。设a和n都已定义为整型变量。

(1)a+=a (2) a-=2 (3) a*=2+3 (4)a/=a+a

(5) a%=(n%=2),n的值等于5

(6)a+=a-=a*=a

解:

(1) 24 (2) 10 (3) 60 (4) 0 (5) 0 (6) 0

急求!!C语言课后习题答案!2

以前上课的时候不想做,现在很想补下,很后悔没好好学习呢~希望楼主好好努力

第4道1):

#includestdio.h

void main(void)

{

int i,j,a[80],max,max_i;

printf("please input 10 num!\n");

for(i=0;i10;i++)

scanf("%d",a[i]);

printf("the 10 num is:\n");

for(i=0;i10;i++)

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

for(max=a[0],i=0;i10;i++)

{

if(maxa[i])

{

max=a[i];

max_i=i;

}

}

printf("the max num is:a[%d]=%d\n",max_i+1,max);

getch();

}

2)道:

#includestdio.h

void main(void)

{

int a[3][2],i,j,sum[3];

for(i=0;i3;i++)

{

printf("please input the score of the student %d\n",i+1);

scanf("%d%d",a[i][0],a[i][1]);

sum[i]=a[i][0]+a[i][1];

}

for(i=0;i3;i++)

{

printf("the score of the student %d is:%d\t%d\n",i+1,a[i][0],a[i][1]);

printf("the sum score of the student %d is:%d\n",i+1,sum[i]);

}

getch();

}

3)道:

#includestdio.h

#includestring.h

main()

{

int i;

char string1[80],string2[80];

printf("please input the string 1\n");

scanf("%s",string1);

printf("please input the string 2\n");

scanf("%s",string2);

if(strcmp(string1,string2)==0)

printf("the 2 string is the same\n");

else

printf("the 2 string is different\n");

getch();

}

第5道:

#includestdio.h

main()

{

float c,f;

printf("please input the F\n");

scanf("%f",f);

c=(f-32)*5/9;

printf("the convert result is:%.2f\n",c);

getch();

}

小问:

float convert(float a)

{

float b;

b=(a-32)*5/9;

return b;

}

main()

{

float c,f;

printf("please input the F\n");

scanf("%f",f);

c=convert(f);

printf("the convert result is %.2f\n",c);

getch();

}

第6道:

#includestdio.h

main()

{

int x,y,*p1,*p2;

printf("please input the 2 nums;\n");

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

swap1(x,y);

printf("the swap1 result is:%d\t%d\n",x,y);

p1=x;

p2=y;

swap2(p1,p2);

printf("the swap2 result is:%d\t%d\n",*p1,*p2);

getch();

}

swap1(int x,int y)

{

int temp;

temp=x;

x=y;

y=temp;

}

swap2(int *p1,int *p2)

{

int temp;

temp=*p1;

*p1=*p2;

*p2=temp;

}

6.2)

#include stdio.h

void main()

{

char s[80];/*定义一个数组*/

char c;

printf("which style you want to:\n");/*是\不是|*/

printf("capital ( c ) or uncapital(a):");

c=getchar();

if(c=='c')/*是==不是=*/

strcpy(s,"COMPUTER");

else

strcpy(s,"computer");

puts(s);

getch();

}

第七道

struct student

{

char num[8];

char name[80];

float score;

}stu[4];

main()

{

int i,max,max_i;

for(i=0;i4;i++)

{

printf("input the num of student %d\n",i+1);

scanf("%s",stu[i].num);

printf("input the name of student %d\n",i+1);

scanf("%s",stu[i].name);

printf("input the score of student %d\n",i+1);

scanf("%f",stu[i].score);

}

for(max=stu[0].score,i=0;i4;i++)

{

if(maxstu[i].score)

{

max=stu[i].score;

max_i=i;

}

}

printf("the highest score student is student%d\n",max_i+1);

printf("%s\t%s\t%.2f\n",stu[max_i].num,stu[max_i].name,stu[max_i].score);

getch();

}

第八道:

Java的行不,C++的不记得了。

public class Circle

{

private static double PI=3.14

private double radius;

public Circle(double radius)

{

this.radius=radius;

}

public double Area()

{

return PI*radius*radius;

}

public double Perimeter()

{

return 2*PI*radius;

}

}

c语言课后题答案

第一题

#includestdio.h

void main()

{ int i;

int count=1;

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

scanf("%d",i);

printf("逆序输出结果为:");

while(i/10)

{printf("%d ",i%10);

count++;

i=i/10; }

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

printf("它是%d位数\n",count);

}

第二题

#includestdio.h

int fact(int n)

{

int i;

int f=1;

for(i=1;i=n;i++)

f*=i;

return f;

}

float sum(int n)

{

float sum1=0;

int i;

for(i=1;i=n;i++)

sum1+=1.0/fact(i);

return sum1;

}

void main()

{ int i;

float total;

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

scanf("%d",i);

total=sum(i);

printf("结果为:");

printf("%.5f ",total);

}

上面两个程序已经上机通过了。。。