智慧树c语言程序设计章节答案(智慧树c语言程序设计章节答案山东联盟)
今天给各位分享智慧树c语言程序设计章节答案的知识,其中也会对智慧树c语言程序设计章节答案山东联盟进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
c语言程序设计第四版答案 第八章指针 课后3 。14 。15答案
//课后3
#include stdio.h
int main()
{ void input(int *);
void max_min_value(int *);
void output(int *);
int number[10];
input(number);
max_min_value(number);
output(number);
return 0;
}
void input(int *number)
{int i;
printf("input 10 numbers:");
for (i=0;i10;i++)
scanf("%d",number[i]);
}
void max_min_value(int *number)
{ int *max,*min,*p,temp;
max=min=number;
for (p=number+1;pnumber+10;p++)
if (*p*max) max=p;
else if (*p*min) min=p;
temp=number[0];number[0]=*min;*min=temp;
if(max==number) max=min;
temp=number[9];number[9]=*max;*max=temp;
}
void output(int *number)
{int *p;
printf("Now,they are: ");
for (p=number;pnumber+10;p++)
printf("%d ",*p);
printf("\n");
}
//课后14
#include stdio.h
int main()
{void sort (char *p,int m);
int i,n;
char *p,num[20];
printf("input n:");
scanf("%d",n);
printf("please input these numbers:\n");
for (i=0;in;i++)
scanf("%d",num[i]);
p=num[0];
sort(p,n);
printf("Now,the sequence is:\n");
for (i=0;in;i++)
printf("%d ",num[i]);
printf("\n");
return 0;
}
void sort (char *p,int m) // 将n个数逆序排列函数
{int i;
char temp, *p1,*p2;
for (i=0;im/2;i++)
{p1=p+i;
p2=p+(m-1-i);
temp=*p1;
*p1=*p2;
*p2=temp;
}
}
//课后15
#include stdio.h
int main()
{void avsco(float *,float *);
void avcour1(char (*)[10],float *);
void fali2(char course[5][10],int num[],float *pscore,float aver[4]);
void good(char course[5][10],int num[4],float *pscore,float aver[4]);
int i,j,*pnum,num[4];
float score[4][5],aver[4],*pscore,*paver;
char course[5][10],(*pcourse)[10];
printf("input course:\n");
pcourse=course;
for (i=0;i5;i++)
scanf("%s",course[i]);
printf("input NO. and scores:\n");
printf("NO.");
for (i=0;i5;i++)
printf(",%s",course[i]);
printf("\n");
pscore=score[0][0];
pnum=num[0];
for (i=0;i4;i++)
{scanf("%d",pnum+i);
for (j=0;j5;j++)
scanf("%f",pscore+5*i+j);
}
paver=aver[0];
printf("\n\n");
avsco(pscore,paver); // 求出每个学生的平均成绩
avcour1(pcourse,pscore); // 求出第一门课的平均成绩
printf("\n\n");
fali2(pcourse,pnum,pscore,paver); // 找出2门课不及格的学生
printf("\n\n");
good(pcourse,pnum,pscore,paver); // 找出成绩好的学生
return 0;
}
void avsco(float *pscore,float *paver) // 求每个学生的平均成绩的函数
{int i,j;
float sum,average;
for (i=0;i4;i++)
{sum=0.0;
for (j=0;j5;j++)
sum=sum+(*(pscore+5*i+j)); //累计每个学生的各科成绩
average=sum/5; //计算平均成绩
*(paver+i)=average;
}
}
void avcour1(char (*pcourse)[10],float *pscore) // 求第一课程的平均成绩的函数
{int i;
float sum,average1;
sum=0.0;
for (i=0;i4;i++)
sum=sum+(*(pscore+5*i)); //累计每个学生的得分
average1=sum/4; //计算平均成绩
printf("course 1:%s average score:%7.2f\n",*pcourse,average1);
}
void fali2(char course[5][10],int num[],float *pscore,float aver[4])
// 找两门以上课程不及格的学生的函数
{int i,j,k,labe1;
printf(" ==========Student who is fail in two courses======= \n");
printf("NO. ");
for (i=0;i5;i++)
printf("%11s",course[i]);
printf(" average\n");
for (i=0;i4;i++)
{labe1=0;
for (j=0;j5;j++)
if (*(pscore+5*i+j)60.0) labe1++;
if (labe1=2)
{printf("%d",num[i]);
for (k=0;k5;k++)
printf("%11.2f",*(pscore+5*i+k));
printf("%11.2f\n",aver[i]);
}
}
}
void good(char course[5][10],int num[4],float *pscore,float aver[4])
// 找成绩优秀学生(各门85以上或平均90分以上)的函数
{int i,j,k,n;
printf(" ======Students whose score is good======\n");
printf("NO. ");
for (i=0;i5;i++)
printf("%11s",course[i]);
printf(" average\n");
for (i=0;i4;i++)
{n=0;
for (j=0;j5;j++)
if (*(pscore+5*i+j)85.0) n++;
if ((n==5)||(aver[i]=90))
{printf("%d",num[i]);
for (k=0;k5;k++)
printf("%11.2f",*(pscore+5*i+k));
printf("%11.2f\n",aver[i]);
}
}
}
求29.30.31答案和解释 c语言程序设计
29、数组的下标值必须是整数,且不能越界,数组a的下标值范围是0--9
A
*(a+i)
等价于
a[i]
B
a[p-a+i]
等价于
a[i]
因为
p=a
所以
p-a+i=i
C
p+i
是数组中下标值为i的元素的地址
D
*(a[i])
等价于
a[i]
所以
本题答案是
C
30、strcpy(s1,s2)字符串赋值函数,把串s2放在s1的位置上,所以s1必须有足够的存储空间来存放串s2
A
st1
是一维数组可以存放字符串teacher1
B
st4
是一个指针变量,但是该指针指向一个连续的存储空间
teacher1
C
st3是指针变量,但是该指针没有指向任何存储空间,所以不能把串teacher1放在st3
D
st1
是一维数组可以存放字符串teacher1
所以
本题答案
是
C
31、p
q
是指针变量,存放的是n的地址
A
p=q
p
q
指针类型相同
可以直接赋值
B
*p=*q
也可以
//
p=q=n
则
*p=*q=n
C
n=*p
原理同
B项
D
p是指针,应该存放n的地址,即p=n
所以本题答案是:
D
c语言第四章的答案
//如果是老谭的,你看看下面是否是你要的。
第三章 3.4
main()
{int a,b,c;
long int u,n;
float x,y,z;
char c1,c2;
a=3;b=4;c=5;
x=1.2;y=2.4;z=-3.6;
u=51274;n=128765;
c1='a';c2='b';
printf("\n");
printf("a=%2d b=%2d c=%2d\n",a,b,c);
printf("x=%8.6f,y=%8.6f,z=%9.6f\n",x,y,z);
printf("x+y=%5.2f y+z=%5.2f z+x=%5.2f\n",x+y,y+z,z+x);
printf("u=%6ld n=%9ld\n",u,n);
printf("c1='%c'or %d(ASCII)\n",c1,c1);
printf("c2='%c'or %d(ASCII)\n",c2,c2);
}
3.5
57
5 7
67.856400,-789.123962
67.856400,-789.123962
67.86 -789.12,67.856400,-789.123962,67.856400,-789.123962
6.785640e+001,-7.89e+002
A,65,101,41
1234567,4553207,d687
65535,177777,ffff,-1
COMPUTER, COM
3.6
a=3 b=7/
x=8.5 y=71.82/
c1=A c2=a/
3.7
10 20Aa1.5 -3.75 +1.4,67.8/
(空 3)10(空3)20Aa1.5(空1)-3.75(空1)(随意输入一个数),67.8 回车
3.8
main()
{float pi,h,r,l,s,sq,sv,sz;
pi=3.1415926;
printf("input r,h\n");
scanf("%f,%f",r,h);
l=2*pi*r;
s=r*r*pi; sq=4*pi*r*r;
sv=4.0/3.0*pi*r*r*r;
sz=pi*r*r*h;
printf("l=%6.2f\n",l);
printf("s=%6.2f\n",s);
printf("sq=%6.2f\n",sq);
printf("vq=%6.2f\n",sv);
printf("vz=%6.2f\n",sz);
}
3.9
main()
{float c,f;
scanf("%f",f);
c=(5.0/9.0)*(f-32);
printf("c=%5.2f\n",c);
}
3.10
#include"stdio.h"
main()
{char c1,c2;
scanf("%c,%c",c1,c2);
putchar(c1);
putchar(c2);
printf("\n");
printf("%c%c\n",c1,c2);
}
第四章
4.3
(1)0 (2)1 (3)1 (4)0 (5)1
4.4
main()
{int a,b,c;
scanf("%d,%d,%d",a,b,c);
if(ab)
if(bc)
printf("max=%d\n",c);
else
printf("max=%d\n",b);
else if(ac)
printf("max=%d\n",c);
else
printf("max=%d\n",a);
}
main() {int a,b,c,temp,max;
scanf("%d,%d,%d",a,b,c);
temp=(ab)?a:b;
max=(ctemp)?c:temp;
printf("max=%d",max);
}
4.5
main()
{int x,y;
scanf("%d",x);
if(x1)y=x;
else if(x10)y=2*x-1;
else y=3*x-11;
printf("y=%d",y);
}
4.6
main()
{int score,temp,logic;
char grade;
logic=1;
while(logic)
{scanf("%d",score);
if(score=0score=100)logic=0;
}
if(score==100)
temp=9;
else
temp=(score-score%10)/10;
switch(temp)
{case 9:grade='A';break;
case 8:grade='B';break;
case 7:grade='C';break;
case 6:grade='D';break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:grade='E';
}
printf"score=%d,grade=%c",score,grade);
}
4.7 main()
{long int num;
int indiv,ten,hundred,thousand,ten_thousand,place;
scanf("%ld",num);
if(num9999) place=5;
else if(num999) place=4;
else if(num99) place=3;
else if(num9) place=2;
else place=1;
printf("place=%d\n",place);
ten_thousand=num/10000;
thousand=(num-ten_thousand*10000)/1000;
hundred=(num-ten_thousand*10000-thousand*1000)/100;
ten=(num-ten_thousand*10000-thousand*1000-hundred*100)/10;
indiv=num-ten_thousand*10000-thousand*1000-hundred*100-ten*10;
switch(place)
{case 5:printf("%d,%d,%d,%d,%d\n",ten_thousand,thousand,hundred,ten,indiv);
printf("%d,%d,%d,%d,%d\n",indiv,ten,hundred,thousand,ten_thousand);
break;
case 4:printf("%d,%d,%d,%d\n",thousand,hundred,ten,indiv);
printf("%d,%d,%d,%d\n",indiv,ten,hundred,thousand);
break;
case 3:printf("%d,%d,%d\n",hundred,ten,indiv);
printf("%d,%d,%d\n",indiv,ten,hundred);
break;
case 2:printf("%d,%d\n",ten,indiv);
printf("%d,%d\n",indiv,ten);
break;
case 1:printf("%d\n",indiv);
printf("%d\n",indiv);
}
}
4.8
main()
{long i;
float bonus,bon1,bon2,bon4,bon6,bon10;
bon1=100000*0.1;
bon2=bon1+100000*0.075;
bon4=bon2+200000*0.05;
bon6=bon4+200000*0.03;
bon10=bon6+400000*0.015;
scanf("%ld",i);
if(i=1e5)bonus=i*0.1;
else if(i=2e5)bonus=bon1+(i-100000)*0.075; else if(i=4e5)bonus=bon2+(i-200000)*0.05;
else if(i=6e5)bonus=bon4+(i-400000)*0.03;
else if(i=1e6)bonus=bon6+(i-600000)*0.015;
else bonus=bon10+(i-1000000)*0.01;
printf("bonus=%10.2f",bonus);
}
main()
{long i;
float bonus,bon1,bon2,bon4,bon6,bon10;
int branch;
bon1=100000*0.1;
bon2=bon1+100000*0.075;
bon4=bon2+200000*0.05;
bon6=bon4+200000*0.03;
bon10=bon6+400000*0.015;
scanf("%ld",i);
branch=i/100000;
if(branch10)branch=10;
switch(branch)
{case 0:bonus=i*0.1;break;
case 1:bonus=bon1+(i-100000)*0.075;break;
case 2:
case 3:bonus=bon2+(i-200000)*0.05;break;
case 4:
case 5:bonus=bon4+(i-400000)*0.03;break;
case 6:
case 7
case 8:
case 9:bonus=bon6+(i-600000)*0.015;break;
case 10:bonus=bon10+(i-1000000)*0.01;
}
printf("bonus=%10.2f",bonus);
}
4.9
main()
{int t,a,b,c,d;
scanf("%d,%d,%d,%d",a,b,c,d);
if(ab){t=a;a=b;b=t;}
if(ac){t=a;a=c;c=t;}
if(ad){t=a;a=d;d=t;}
if(bc){t=b;b=c;c=t;}
if(bd){t=b;b=d;d=t;}
if(cd){t=c;c=d;d=t;} printf("%d %d %d %d\n",a,b,c,d);
}
4.10
main()
{int h=10;
float x,y,x0=2,y0=2,d1,d2,d3,d4;
scanf("%f,%f",x,y);
d1=(x-x0)*(x-x0)+(y-y0)*(y-y0);
d2=(x-x0)*(x-x0)+(y+y0)*(y+y0);
d3=(x+x0)*(x+x0)+(y-y0)*(y-y0);
d4=(x+x0)*(x+x0)+(y+y0)*(y+y0);
if(d11d21d31d41)h=0;
printf("h=%d",h);
}
智慧树c语言程序设计章节答案的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于智慧树c语言程序设计章节答案山东联盟、智慧树c语言程序设计章节答案的信息别忘了在本站进行查找喔。