c语言精选试题----数组

笔者以c语言为入门语言,今天敲c++时觉得跟c有许多相似之处,所以笔者打算开一个小的c语言例题整理,整理一些比较好的题目,供大家学习,代码不是抄袭而来,是笔者自己所敲或者请教的朋友进行优化,希望c语言的入门者们闲暇之余,可以浏览思考,有什么问题欢迎留言或者私信。

数组

eg.定义1个二维数组:int arr[5][6],然后从键盘输入5行6列共30个整数,编程求出所有元素中的最大值、最小值及其下标,同时求出每行元素的平均值,并在屏幕上打印输出。
提示:在一个二重循环体内用scanf函数输入30个数,然后再用一个二重循环处理数据处理。

在这里插入图片描述

#include<stdio.h>
int main()
{
	int arr[5][6];
	double sum=0.0;
	double Ave[5];
	printf("输入5*6的矩阵:\n");
	int i,j;
	int a = 0,b = 0;//赋值 
	for(i=0;i<5;i++)
	{
		for(j=0;j<6;j++)
		{
			scanf("%d",&arr[i][j]);
		}
	 } 
	 int max;
	 max=arr[0][0];
	 for(i=0;i<5;i++)//循环4次就可以 
	 {
	 	for(j=0;j<6;j++)
	 	{
	 		if(arr[i][j]>max)
	 		{
	 			max=arr[i][j];
	 			a = i; //坐标赋值 
				b = j;  
			 }
		 }
		
	 } 
	 printf("arr[%d][%d]是最大值%d\n",a,b,max);
	 a = 0; //归零 
	 b = 0;  
	 int min;
	 min=arr[0][0];
	 for(i=0;i<5;i++)//同上 , 两个循环其实可以放在一起 
	 {
	 	for(j=0;j<6;j++)
	 	{
	 		if(arr[i][j]<min)
	 		{
	 			min=arr[i][j];
	 			a = i; //同上 
	 			b = j; 
			 }
		 }
	 } 
    printf("arr[%d][%d]是最小值%d\n",a,b,min);
	 for(i=0;i<5;i++)
	 {
	 	 if(i==0)
	 	{
		 	for(j=0;j<6;j++)
		 	{
		 		sum=sum+arr[0][j];
		  	} 
		 	Ave[0]=sum/6.0;
		  	printf("Ave[0]=%.2f\n",Ave[0]);
		}
        else if(i==1) 
       {
       	sum=0;
	   for(j=0;j<6;j++)
		 {
		 	sum=sum+arr[1][j];
		  } 
		  Ave[1]=sum/6.0;
		  	printf("Ave[1]=%.2f\n",Ave[1]);
}
       else if(i==2)
       {
       	sum=0;
	   for(j=0;j<6;j++)
		 {
		 	sum=sum+arr[2][j];
		  } 
		  Ave[2]=sum/6.0;
		  printf("Ave[2]=%.2f\n",Ave[2]);
}
        else if(i==3)
        {
        sum=0;
	    for(j=0;j<6;j++)
		 {
		 	sum=sum+arr[3][j];
		  } 
		  Ave[3]=sum/6.0;
		  printf("Ave[3]=%.2f\n",Ave[3]);
}
        else
        {
        	sum=0;
	    for(j=0;j<6;j++)
		 {
		 	sum=sum+arr[4][j];
		  } 
		  Ave[4]=sum/6.0;
	printf("Ave[4]=%.2f\n",Ave[4]);
}
}
	 	for(i=0;i<5;i++)
	{
		for(j=0;j<6;j++)
		{
			printf(" %6d ",arr[i][j]);
		}
		printf("\n");
	 } 
	return 0;
}


运行结果
在这里插入图片描述
有问题私聊博主或者在下面留言,如果有更好的解法也请留言,欢迎大家讨论,共同进步,一起学习。

c语言是最美的语言,c语言让我遇见了这个世界的美好。

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

敲代码的xiaolang

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值