第八次作業


一、實驗內容

1、實驗要求:輸入若干名學生的成績(輸入人數或用負數結束均可),求其平均分,最高分和最低分,並指出最高分和最低分的學生(給出下標即可),輸入一個成績,說明是第幾個學生的成績。

代碼:

#include <stdio.h>
#define N 1000
int main()
{
  int a,i=0,sum=0,max,min,m=0,n=0,e=0;
  double average;
  int score[N];
  printf("人數\n");
  scanf("%d",&a);
  for(i=0;i<a;i++)
  {
    printf("學生成績\n");
	scanf("%d",&score[i]);
	sum=sum+score[i];
  }
  average=(double)sum/a;
  printf("%.2lf\n",average);
  max=score[0];
  min=score[0];
  for(i=0;i<a;i++)
  {
    if(score[i]>max)
	{
	  max=score[i];
	  m=i;
    if(score[i]<min)
	{
	  min=score[i];
	  e=i;
  }
  printf("max=%d,min=%d,m=%d",max,min,m);
  printf("input the score you want to find\n",m);
  scanf("%d",&n);
  for(i=0;i<a;i++)
  {
    if(n==score[i])
 
   {
            printf("%d\n",i);
            m=m+1;
        }
    }
    printf("符合要求的一共有%d個\n",m);
    return 0;
  }

  運行結果:

 

2.

實驗要求:現有一個有序正整數數組(從小到大排序),輸入一個數,插入到數組中,要求插入后的數組仍然有序。對插入到最前、最后、中間位置三種情況進行驗證。

代碼:

#include <stdio.h>
#define N 10
int main()
{
	int num[N]={3,6,9,12,16,19,23,26,29},i,j,n,a,b;
	
	printf("請輸入一個數字:\n");
	scanf("%d",&a);
	for(i=0;i>=0;i++)
	{
	  if(a<num[i+1])
	  {
	    for(j=8;j>i;j--)
        
		{
		  num[j+1]=num[j];
		}
		  num[i+1]=a;
		  break;
		}
	  }
	for(i=0;i<N;i++)
	printf("%4d",num[i]);
	return 0;
}

  運行結果:

3.實驗要求:運用數組寫火柴棍

代碼:

#include <stdio.h>
int main()
{
  int a,b,c,x,y,z;
  int match[10]={6,2,5,5,4,5,6,3,7,6};
  for(a=10;a<10;a=a-1)
  {
    x=match[a];
	for(b=10;b<10;b=b-1)
	{
	  y=match[b];
	  for(c=10;c<10;c=c-1)
	  {
	    z=match[c];
		if(a+b==c&&x+y+z==12)
		{
			printf("%d+%d=%d\n",a,b,c);
		}
	  }
	}
  }
  return 0;
}

  運行結果:

 

知識點總結:1.數組的基本格式 :數組類型    數組名稱  數組長度,數組的下標從零開始。

               2.數組必須先定義后使用。

               3.數組能處理大量數據,優化程序。

               4.數組一旦創建,不能改變大小。

               5.多方面考慮題目結果,使代碼完整。

               6.變量對應的關系要搞清楚。

實驗總結:  1.數組與循環結構緊密相連,循環變量的值隨數組元素的下標變化。

                 2.注意數組越界問題。

                 3.注意數組中插入數字時,其后面的數字位置都加1.

                 4.數組不能被賦值。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM