C语言学习打卡第8天

该文介绍了几个编程基础问题的解决方法,包括初始化并输出3x4矩阵,计算其最大值;求班级10个学生的平均分、最高分和最低分;找出10个数中最大值和最小值的下标;以及实现冒泡排序算法。同时提到了Linux基础学习中的命令操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一,函数第二部分的练习:

1.有3*4的矩阵,初始化他并输出,还求出最大值输出。

#include <stdio.h>

void arrscaninit(int arr[][4])
{
	int j;
	int i;
	for(j=0;j<3;j++)
	{
	    for(i=0;i<4;i++)
	    {
	    printf("请输入第%d行第%d列的数值\n",j+1,i+1);
		scanf("%d",&arr[j][i]);
	
	
	    }
	
	}
	
}

void arrprintfinit(int arr[][4])
{
	int j;
	int i;
	for(int j=0;j<3;j++)
	{
	    for(int i=0;i<4;i++)
	    {
	    printf("%d    ",arr[j][i]);
		
	
	    }
	puts("\n");
	}
	
}

int arrcountinit(int arr[][4])
{
	int j;
	int i;
	int count=0;
	for(int j=0;j<3;j++)
	{
	    for(int i=0;i<4;i++)
	    {
			
	   if(count<arr[j][i])
	   count= arr[j][i];

	    }
		

	}
	
	
	return count;
	
	
}


int main ()

{
	
	int arr[3][4];
	int max;
	arrscaninit(arr);
	arrprintfinit(arr);
	max=arrcountinit(arr);
	printf("最大值为%d ",max);
	return 0;
}

2.班上有10个学生,封装一个函数,求班上的平均分,最高分,最低分。

//.班上有10个学生,封装一个函数,求班上的平均分,最高分,最低分。
#include <stdio.h>
int max1=0;
int min1=0;
int countarr(int  arr[],int len)
{
	int i;
	int sum1=0;
	int aver1;
	min1=arr[0];
	for(i=0;i<len;i++)
	{
		
		sum1=sum1+arr[i];
		//最大值
		if(max1<arr[i])
		max1=arr[i];
		//最小值
		
		if(min1>arr[i])
		   min1=arr[i];
	}
	//均值
	aver1=sum1/len;
	
	return aver1;
	
}



int main()
{
	int arr[10]={66,71,55,39,46,85,91,48,81,77};
	
	int len=sizeof arr/sizeof  arr[0];
	int aver=countarr(arr,len);
	printf("平均值%d最高分%d最低分%d",aver,max1,min1);
return 0;
}

3.输入10个数,找出最大值以及最小值的下标

#include <stdio.h>
int main()
{
	
int arr[]={4,8,12,6,13};
	
	int i;
	int j;
	int leng;
	int replace;
	leng=sizeof (arr)/sizeof (arr[0]);
	for(j=0;j<leng-1;j++)//j可以看作比较次数,j的最大作用在于-j。
	{
	   for(i=0;i<leng-1-j;i++)//-j的作用在于当最大或最小的数值被比较出来之后,放在最右边不再操作,如将4置放在arr[4]后只需再比较arr[]的前3位。
	   {
		if(arr[i]>arr[i+1])
		{
		replace=arr[i];
		arr[i]=arr[i+1];
		arr[i+1]=replace;
		}
	   }
	}
	for(i=0;i<leng;i++)
	{
		printf("%d",arr[i]);
		
	}
	return 0;
}//泡泡排序法

4.用函数封装冒泡排序法

#include <stdio.h>

int count(int arr[],int leng)
{
	int i;
	int j;
	int replace;
	for(j=0;j<leng-1;j++)//j可以看作比较次数,j的最大作用在于-j。
	{
	   for(i=0;i<leng-1-j;i++)//-j的作用在于当最大或最小的数值被比较出来之后,放在最右边不再操作,如将4置放在arr[4]后只需再比较arr[]的前3位。
	   {
		if(arr[i]>arr[i+1])
		{
		replace=arr[i];
		arr[i]=arr[i+1];
		arr[i+1]=replace;
		}
	   }
	}

}

int main()

{
	int i;
	int arr[]={4,8,12,6,13};
	int leng=sizeof (arr)/sizeof (arr[0]);
	count(arr,leng);
	for(i=0;i<leng;i++)
	{
		printf("%d   ",arr[i]);
		
	}
	return 0;
}

二,跳跃到第3小节学习了linux基础。
1.Linux基础指令:

Linux基础指令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值