1月3号作业

1、

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
	int i,j;
	char x=65;
	for(i=1;i<=4;i++)
	{
	    char x=65;
           for(j=0;j<=i-1;j++)
           {
              printf("%c",x);
              x++;
           }
           printf("\n");
	}
	return 0;
}

2、循环输入10位评委的分数,除去最大值和最小值,计算平均值

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
    int i,j,sum;
    int arr[10];
    int max,min;
    double aver;
    for(i=0;i<10;i++)
    {
       printf("输入第%d个数:",i+1);
       scanf("%d",&arr[i]);
    }
    max=arr[0];min=arr[0];sum=arr[0];
    for(i=0;i<10;i++)
    {
       if(max<=arr[i])
       {
         max=arr[i];
       }
    }
    for(i=0;i<10;i++)
    {
       if(min>=arr[i])
       {
          min=arr[i];
       }
    }
    sum=arr[0]+arr[1]+arr[2]+arr[3]+arr[4]+arr[5]+arr[6]+arr[7]+arr[8]+arr[9];
    aver=(sum-max-min)/8.0;
    printf("max=%d min=%d aver=%f\n",max,min,aver);
    return 0;
}

3、一维数组案例

  计算数组最值

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
    int i,j,sum;
    int arr[10];
    int max,min;
    double aver;
    for(i=0;i<10;i++)
    {
       printf("输入第%d个数:",i+1);
       scanf("%d",&arr[i]);
    }
    max=arr[0];min=arr[0];sum=arr[0];
    for(i=0;i<10;i++)
    {
       if(max<=arr[i])
       {
         max=arr[i];
       }
    }
    for(i=0;i<10;i++)
    {
       if(min>=arr[i])
       {
          min=arr[i];
       }
    }
    return 0;
}

一维数组查找

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
    int key,count=0,i,index;
    int arr[]={43,64,7,29,57,7};
    printf("enter key:");
    scanf("%d",&key);
    for(i=0;i<6;i++)
    {
       if(key==arr[i])
       {
          count++;
          index=i;
       }
    }
    if(count==0)
    {
      printf("不存在\n");   //不存在时输出
    }
    else if(count==1)
    {
      printf("下标为%d\n",index);    //存在一次时输出下标
    }
    else 
      printf("存在%d次\n",count);     //存在多次时输出出现次数
    return 0;
}

一维数组冒泡排序

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
    int arr[]={3,64,25,52,46,56};
	int n=sizeof(arr)/sizeof(arr[0]);
	int t;
	for(int i=1;i<n;i++)
	{
	   for(int j=0;j<n-i;j++)
	   {
	      if(arr[j]>arr[j+1])
	      {
	        t=arr[j];arr[j]=arr[j+1];arr[j+1]=t;
	      }
	   }
	}
	for(int i=0;i<n;i++)
	{
	   printf("%d ",arr[i]);
	}
    return 0;
}

一维数组简单排序

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
   int arr[]={84,37,53,649,29,5425,38};
	int n=sizeof(arr)/sizeof(arr[0]);
	int t;
	for(int i=0;i<n-1;i++)
	{
	   int min=i;
	   for(int j=i+1;j<n;j++)
	   {
	      if(arr[min]>arr[j])
	      {
	        min=j;
	      }
	   }
	   if(min!=i)
	   {
	     t=arr[min];
	     arr[min]=arr[i];
	     arr[i]=t;
	   }
	}
	for(int i=0;i<n;i++)
	{
	   printf("%d ",arr[i]);
	}
    return 0;
}

4、二维数组

二维数组最值

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
   int arr[2][3],i,j;
   int max,min;
   for(i=0;i<2;i++)
   {
      for(j=0;j<3;j++)
      {
         scanf("%d",&arr[i][j]);
      }
   }
   max=arr[0][0];min=arr[0][0];
   for(i=0;i<2;i++)
   {
      for(j=0;j<3;j++)
      {
         if(max<=arr[i][j])
         {
            max=arr[i][j];
         }
      }
   }
    for(i=0;i<2;i++)
   {
      for(j=0;j<3;j++)
      {
         if(min>=arr[i][j])
         {
            min=arr[i][j];
         }
      }
   }
   printf("max=%d min=%d\n",max,min);
    return 0;
}

杨辉三角

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
  int n,i,j;
	printf("enter n:");
	scanf("%d",&n);
	int arr[n][n];
	for(i=0;i<n;i++)
	{
	   for(j=0;j<=i;j++)
	   {
	      if(j==0||j==i)
	      {
	        arr[i][j]=1;
	      }
	      else
	      {
	        arr[i][j]=arr[i-1][j]+arr[i-1][j-1];
	      } 
	      printf("%-2d",arr[i][j]);
	   }
	   printf("\n");
	}
    return 0;
}

转置

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
    int a[2][3]={1,2,3,4,5,6};
    int b[3][2];
    int i,j;
    for(i=0;i<2;i++)
    {
       for(j=0;j<3;j++)
       {
          b[j][i]=a[i][j];
       }
    }
     for(i=0;i<3;i++)
    {
       for(j=0;j<2;j++)
       {
          printf("%d",b[i][j]);
       }
       printf("\n");
    }
    return 0;
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值