c语言作业2024.1.3


1.打印图形

A

AB

ABC

ABCD

#include <stdio.h>
int main(int argc,const char *argv[])
{
	int n = 4;
	for (int i = 1; i <= n; i++) 
	{
        for (int j = 'A'; j < 'A' + i; j++) 
		{
            printf("%c", j);
        }
        printf("\n");
    }    
	return 0;
}

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

#include <stdio.h>
int main(int argc,const char *argv[])
{
	int scores[10];
	printf("请输入10位评委的分数\n");
	for(int i = 0; i < 10; i++)
	{
	    printf("评委 %d 的分数:", i + 1);
        scanf("%d", &scores[i]);
    }
    int max=0, min=0;
    for (int i = 1; i < 10; i++)
	{
        if (scores[i] > scores[max]) 
		{
            max=i;
        
		}
        if (scores[i] < scores[min])
		{
            min=i;
        }
   }
    scores[max] = 0;
    scores[min] = 0;
    int sum = 0, count = 0;
    for (int i = 0; i < 10; i++) 
	{
        sum += scores[i];
        if (scores[i] != 0)
		{
            count++;
        }
    }
    float average = (float)sum / count;
    printf("去掉最高分和最低分的平均分是:%.2f\n", average);

	return 0;
}

3.一维数组所有案例题

计算一维数组的最值\一维数组查找\一维数组冒泡\一维数组简单选择

#include <stdio.h>
int main(int argc, const char *argv[])
{
    int n;
    printf("please enter n:");
    scanf("%d",&n);
    int arr[n];
       for(int i=0;i<n;i++)
    {
        printf("please enter %d data:",i+1);
        scanf("%d",&arr[i]);
    }
       int max=arr[0],min=arr[0];
    for(int i=0;i<n;i++)
    {
        if(max<=arr[i])
            max=arr[i];
        if(min>=arr[i])
            min=arr[i];
    }
    printf("max=%d min=%d\n",max,min);
return 0;
}

#include <stdio.h>
int main(int argc, const char *argv[])
{
    int n;
    printf("please enter n:");
    scanf("%d",&n);
    int arr[n];
    for(int i=0;i<n;i++)
    {
        printf("please enter %d data:",i+1);
        scanf("%d",&arr[i]);
    }
   
    int key;
    int count=0;
    int index;
    printf("please enter key:");
    scanf("%d",&key);
    for(int i=0;i<n;i++)
    {
        if(key == arr[i])
        {
            count++;
            index=i;
        }
    }
    if(count==0)
        printf("unexists\n");
    else if(count==1)
        printf("exits index=%d\n",index);
    else
        printf("count:%d\n",count);
    return 0;
}

#include <stdio.h>
int main(int argc,const char *argv[])
{
	int arr[]={12,23,45,24,1};
    int n=sizeof(arr)/sizeof(arr[0]);
    for(int i=1;i<n;i++)
    {
        for(int j=0;j<n-i;j++)
        {
            if(arr[j]> arr[j+1])
            {
                int t=arr[j];
                arr[j]=arr[j+1];
                arr[j+1]=t;
            }
        }
    }
    for(int i=0;i<n;i++)
    {
        printf("%d \n",arr[i]);
    }
	return 0;
}

#include <stdio.h>
int main(int argc,const char *argv[])
{
	 int arr[]={12,23,45,24,1};
    int n=sizeof(arr)/sizeof(arr[0]);
    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)
        {
            int 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>
int main(int argc,const char *argv[])
{
	int arr[2][3],i,j;
        for( i=0;i<2;i++)
    {
        for( j=0;j<3;j++)
        {
            scanf("%d",&arr[i][j]);
        }
    }
    int max=arr[0][0];
    int maxi=0,maxj=0;
    for(i=0;i<2;i++)
    {
        for(j=0;j<3;j++)
        {
            if(max<=arr[i][j])
            {
                max=arr[i][j];
                maxi=i;
                maxj=j;
            }
        }
    }
    printf("max=%d  maxi=%d  maxj=%d\n",max,maxi+1,maxj+1);

	return 0;
}

 

#include <stdio.h>
int main(int argc,const char *argv[])
{
	int n;
    printf("please enter n:");
    scanf("%d",&n);
    int arr[n][n];
    for(int i=0;i<n;i++)
    {
        for(int 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("%-4d",arr[i][j]);
        }
        printf("\n");
    }
	return 0;
}

#include <stdio.h>
int main(int argc,const char *argv[])
{
	  int a[2][3]={1,2,3,4,5,6};
    int b[3][2];
    for(int i=0;i<2;i++)
    {
        for(int j=0;j<3;j++)
        {
            b[j][i]=a[i][j];
        }
    }
    for(int i=0;i<3;i++)
    {
        for(int 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、付费专栏及课程。

余额充值