C语言程序设计(苏小红著)课后习题第八章答案

时间:2017-09-22 17:43:50 C语言答案 我要投稿

C语言程序设计(苏小红著)课后习题第八章答案

  C语言是一种计算机程序设计语言。以下是由阳光网小编整理关于C语言程序设计(苏小红著)的课后习题答案,希望大家喜欢!

  点击进入:C语言程序设计(苏小红著)课后习题答案

  C语言程序设计(苏小红著)第八章答案

  8.1(1) #include<stdio.h>

  void Func(int x)

  {

  x=2;

  }

  int main()

  {

  int x=10;

  Func(x);

  printf("%d",x);

  return 0;

  }

  8.1(2) #include<stdio.h>

  void Func(int b[])

  {

  int j;

  for(j=0;j<4;j++)

  {

  b[j]=j;

  }

  }

  int main()

  {

  static int a[]={5,6,7,8},i;

  Func(a);

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

  {

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

  }

  return 0;

  }

  8.2(1) int PositiveNum(int a[],int n)

  {

  int i,count=0;

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

  {

  if(a[i]>0)

  count++;

  }

  return 0;

  }

  8.2(2) void Fib(long f[],long n)

  {

  int i;f[0]=0;

  f[1]=1;

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

  {

  f[i]=f[i-1]+f[i-2];

  }

  }

  8.2(3) #include<stdio.h>

  int main()

  {

  int a[10],n,max,min,maxPos,minPos;

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

  {

  scanf("%d",&a[n]);

  }

  max=min=a[0];

  maxPos=minPos=0;

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

  {

  if(a[n]>max)

  {

  max=a[n];

  maxPos=n;

  }

  else if(a[n]<min)

  {

  min=a[n];

  minPos=n;

  }

  }

  printf("max=%d,pos=%d\n",max,maxPos);

  printf("min=%d,pos=%d\n",min,minPos);

  return 0;

  }

  8.3 void DivArray(int *pArray,int n)

  {

  int i;

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

  {

  pArray[i]/=pAttay[0];

  }

  }

  8.4 #include<stdio.h>

  #define N 40

  int FailNum(int score[],int n);

  void ReadScore(int score[],int n);

  int main()

  {

  int score[N],n;

  printf("Input n:");

  scanf("%d",&n);

  ReadScore(score,n);

  FailNum(score,n);

  printf("FailNum students are %d\n",FailNum(score,n));

  return 0;

  }

  int FailNum(int score[],int n)

  {

  int i,count=0;

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

  {

  if(score[i]<60)

  count++;

  }

  return count;

  }

  void ReadScore(int score[],int n)

  {

  int i;

  printf("Input score:");

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

  {

  scanf("%d",&score[i]);

  }

  }

  8.5 #include<stdio.h>

  #define N 40

  int HighAver(int score[],int n);

  int ReadScore(int score[]);

  int main()

  {

  int score[N],n;

  n=ReadScore(score);

  printf("HighAver students are %d\n",HighAver(score,n));

  return 0;

  }

  int HighAver(int score[],int n)

  {

  int i,count=0,sum=0,aver;

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

  {

  sum=sum+score[i];

  aver=sum/n;

  }

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

  {

  if(score[i]>aver)

  count++;

  }

  return count;

  }

  int ReadScore(int score[])

  {

  int i=-1;

  do{

  i++;

  printf("Input score:");

  scanf("%d",&score[i]);

  }while(score[i]>=0);

  return i;

  }

  8.6 #include<stdio.h>

  #define N 40

  int ReadScore(int score[],long num[]);

  int FindMax(int score[],long num[],int n);

  int main()

  {

  int score[N],n,max,num,t;

  long num[N];

  t=FindMax(score,n);

  max=score[t];

  num=num[t];

  printf("max=%d,num=%d\n",max,num);

  return 0;

  }

  int ReadScore(int score[],long num[])

  {

  int i=-1;

  do{

  i++;

  printf("Input student's ID and score:");

  scanf("%ld%d",&num[i],&score[i]);

  }while(num[i]>0&&score[i]>=0);

  return i;

  }

  int FindMax(int score[],long num[],int n)

  {

  int max,i;

  max=score[0];

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

  {

  if(score[i]>max)

  max=score[i];

  }

  return i;

  }

  8.7 #include<stdio.h>

  #define N 40

  int Read(int a[]);

  int ChangeArry(int a[],int n);

  int main()

  {

  int a[N],n;

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

  return 0;

  }

  int Read(int a[])

  {

  int i;

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

  {

  printf("Input a:");

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

  return i;

  }

  int ChangeArry(int a[],int n)

  {

  int max,min,i,maxpos,minpos,term;

  max=min=score[0];

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

  {

  if(a[i]>max)

  max=score[i];

  maxpos=n;

  else(a[i]<min)

  min=a[i];

  minpos=n;

  temp=maxpos;

  maxpos=minpos;

  minpos=temp;

  }

  return a[i];

  }

  8.10 #include<stdio.h>

  #define N 5

  void main()

  {

  int a[N][N];

  int sum = 0;

  int i, j;

  printf("请输入一个%d*%d 的矩阵\n",N,N);

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

  {

  for(j = 0; j < N; j++)

  {

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

  }

  }

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

  {

  for(j = 0; j < N; j++)

  {

  if(i == j || i + j == N - 1)

  sum=sum+a[i][j];

  }

  }

  printf("对角线元素之和为:%d\n",sum);

  }

  8.11 #include<stdio.h>

  #define N 2

  #define M 3

  void main()

  {

  int a[N][M],b[N][M];

  int i,j,sum1=0,sum2=0,sum=0;

  printf("请输入一个%d*%d 的矩阵\n",N,M);

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

  {

  for(j = 0; j< M; j++)

  {

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

  sum1=sum1+a[i][j];

  }

  }

  printf("请输入一个%d*%d 的矩阵\n",N,M);

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

  {

  for(j = 0; j <M; j++)

  {

  scanf("%d",&b[i][j]);

  sum2=sum2+a[i][j];

  }

  }

  sum=sum1+sum2;

  printf("sum=%d\n",sum);

  }

  8.12 #include<stdio.h>

  #define N 7

  void YangHui(int a[N][N],int n);

  void main()

  {

  int i,j,n,b[N][N];

  printf("Input n:");

  scanf("%d",&n);

  YangHui(b,n);

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

  {

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

  {

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

  }

  printf("\n");

  }

  }

  void YangHui(int a[N][N],int n)

  {

  int i,j;

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

  {

  a[i][0]=1;

  a[i][i]=1;

  }

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

  {

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

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

  }

  }

  8.13 #include<stdio.h>

  #define N 12

  void main()

  {

  int i;

  int f[N]={1,1};

  printf("%d:%d\n",0,f[0]);

  printf("%d:%d\n",1,f[1]);

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

  {

  f[i]=f[i-1]+f[i-2];

  printf("%d:%d\n",i+1,f[i]);

  }

  }

  8.14 #include<stdio.h>

  #include<stdlib.h>

  #include<time.h>

  #define N 6000

  void main()

  {

  int a[N],i;

  int b1=0,b2=0,b3=0,b4=0,b5=0,b6=0;

  float p1,p2,p3,p4,p5,p6;

  srand(time(NULL));

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

  {

  a[i]=rand()%6+1;

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

  if(a[i]==1)

  b1++;

  if(a[i]==2)

  b2++;

  if(a[i]==3)

  b3++;

  if(a[i]==4)

  b4++;

  if(a[i]==5)

  b5++;

  if(a[i]==6)

  b6++;

  p1=(float)(b1/6000.0);

  p2=(float)(b2/6000.0);

  p3=(float)(b3/6000.0);

  p4=(float)(b4/6000.0);

  p5=(float)(b5/6000.0);

  p6=(float)(b6/6000.0);

  }

  printf("骰子出现1 的概率:%.2f\n",p1);

  printf("骰子出现2 的'概率:%.2f\n",p2);

  printf("骰子出现3 的概率:%.2f\n",p3);

  printf("骰子出现4 的概率:%.2f\n",p4);

  printf("骰子出现5 的概率:%.2f\n",p5);

  printf("骰子出现6 的概率:%.2f\n",p6);

  }


【C语言程序设计(苏小红著)课后习题第八章答案】相关文章:

1.C语言程序设计(苏小红著)课后习题答案下载

2.C语言程序设计(苏小红著)课后习题答案下载

3.《C语言程序设计》苏小红著课后答案

4.C语言程序设计(苏小红著)课后答案下载

5.C语言程序设计(方风波著)课后习题答案下载

6.C语言程序设计(杨勇著)课后答案下载

7.C语言程序设计(何钦铭著)课后习题答案下载

8.C语言程序设计(陈明晰著)课后答案下载