H2330819027


私信TA

用户名:dotcpp0701405

访问量:13708

签 名:

指向函数指针数组的指针int(*(*p[4]))(int int)

等  级
排  名 106
经  验 8316
参赛次数 1
文章发表 79
年  龄 18
在职情况 学生
学  校 Hzu university
专  业 软件工程

  自我简介:

TA的其他文章

解题思路:

1. 导入所需的头文件,其中包括<stdio.h>和<math.h>,用于输入输出和数学计算。

2. 声明变量m、n、i、j,以及两个二维数组a和b,分别表示矩阵的大小和内容。

3. 使用scanf函数从标准输入获取m和n的值,表示矩阵的行数和列数。

4. 使用嵌套循环遍历a矩阵,从标准输入获取每个元素的值保存到a[i][j]。

5. 使用嵌套循环遍历b矩阵,从标准输入获取每个元素的值保存到b[i][j]。

6. 声明一个名为count的整数变量,并初始化为0,用于统计相同元素的数量。

7. 再次使用嵌套循环遍历矩阵a和b,并比较对应位置上的元素是否相同。如果相同,则将count加1。

8. 声明两个浮点数变量tot和ave。tot用于保存矩阵中元素的总数,ave用于保存相同元素百分比。

9. 计算tot的值为m乘以n。

10. 计算ave的值为count乘以100除以tot。

11. 使用printf函数将ave按照保留两位小数的格式输出。

12. 返回0,表示程序运行结束。


注意事项:

参考代码:

#include <stdio.h>
#include <math.h>
int main()
{
 int m,n,i,j;
 int a[100][100];
 int b[100][100];
 scanf("%d%d",&m,&n);
  for(i=0;i<m;i++)
  {
  	for(j=0;j<n;j++)
  	{
  		scanf("%d",&a[i][j]);
	}
  }
  for(i=0;i<m;i++)
  {
  	for(j=0;j<n;j++)
  	{
  		scanf("%d",&b[i][j]);
	}
  }
  int count=0;
  for(i=0;i<m;i++)
  {
  	for(j=0;j<n;j++)
  	{
  		if(a[i][j]==b[i][j])
  		count++;
	}
  }
  float tot=m*n;
  float ave=count*100/tot;
  printf("%.2f",ave);
    return 0;
}


 

0.0分

0 人评分

新上线《蓝桥杯辅导》课程,近五年的蓝桥杯省赛与国赛真题都有,从读题开始理解题意、梳理思路、实现代码再提交评测全过程,可有效提升获奖比例甚至进国赛!课程介绍、试听请猛击这里

  评论区

  • «
  • »