【C刷题】矩阵相等判断与序列中删除指定的数字

目录

BC105-矩阵相等判断

方法1:两矩阵输入完毕后,进行比较

方法2:在接收过程中直接比较

BC98 - 序列中删除指定的数字

方法1:把要删除的元素改为0

方法2:打印不用删除的元素

方法3:定义两个下标 i 和 j(动图演示)


此篇文章是关于牛客网刷题的做题思路和代码分享,感谢来访与指点。

C99标准之前:
数组的大小只能是常量来指定int arr[10]

C99支持常量指定数组大小,也支持变长数组。

C99标准中,引入一个: 变长数组的概念,变长数组允许数组的大小使用变量来指定。

int n = 10;

int arr[n];

需要注意变长数组的点:

需要注意的是,使用变长数组的时候,数组的大小必须在定义时就确定,因此不能在定义后再改变数组的大小。

用我之前做过的题来说明一下:

正确写法:先有n的输入,然后再使用n。

int n=0;
scanf("%d",&n);
int arr[n];

【C刷题】矩阵相等判断与序列中删除指定的数字_第1张图片

错误写法: n已经使用过了,再输入就没用了。

int n=0;
int arr[n];
scanf("%d",&n);//这样写是错误的。

【C刷题】矩阵相等判断与序列中删除指定的数字_第2张图片

BC105-矩阵相等判断

【C刷题】矩阵相等判断与序列中删除指定的数字_第3张图片

题目的意思:

题目的意思说简单点就是,要求第一次输入的时候输入这个矩阵到底有几行几列,接着输入第一个矩阵的元素,接着输入第二个矩阵的元素,若两矩阵元素全部相等,则输出“Yes”,否则有一个不相等的元素则输出“NO”

方法1:两矩阵输入完毕后,进行比较

思路:

1.输入矩阵的行数和列数,

2.接着用一个for循环输入元素,数组记为arr1。

3.另一个用一个for循环输入元素,数组记为arr2。

4.定义一个flag作为判断矩阵是否相等的条件

5.两矩阵进行比较,若两矩阵之间有不相等的元素,就把flag=0,接着用goto语句跳出循环。

6.打印Yes or No。

【C刷题】矩阵相等判断与序列中删除指定的数字_第4张图片

【C刷题】矩阵相等判断与序列中删除指定的数字_第5张图片

#include 
 int main() {
     int n=0;
     int m=0;
     scanf("%d %d",&n,&m);
     int arr1[n][m];
     int arr2[n][m];
     int i=0;
     int j=0;
//接收第1个数组的内容
     for(i=0;i

提交: 

【C刷题】矩阵相等判断与序列中删除指定的数字_第6张图片

方法2:在接收过程中直接比较

【C刷题】矩阵相等判断与序列中删除指定的数字_第7张图片

int main() {
    int n=0;
    int m=0;
    scanf("%d %d",&n,&m);
    int arr1[n][m];
    int i=0;
    int j=0;
 //接收第一个数组的内容
    for(i=0;i

执行:

【C刷题】矩阵相等判断与序列中删除指定的数字_第8张图片

BC98 - 序列中删除指定的数字

方法1:把要删除的元素改为0

思路:

1.先定义数组大小为n,接着通过for循环输入数组的元素。

2.定义变量del作为要删除的元素,输入要删除的元素。遍历数组,若此刻arr[i]遇到del,则把arr[i]改成0

3.把输入的数组里面不为0的元素全打印了。

【C刷题】矩阵相等判断与序列中删除指定的数字_第9张图片

int main() {
   int n=0;
   int m=0;
   scanf("%d",&n);
   int arr[n];
   int i=0;
    for(i=0;i

【C刷题】矩阵相等判断与序列中删除指定的数字_第10张图片 

方法2:打印不用删除的元素

思路:输入要删除的元素del之后,直接打印数组,用一个判断条件跳过要删除的元素,打印其它不用删除的。

int main() {
   int n=0;
   int m=0;
   scanf("%d",&n);
   int arr[n];
   int i=0;
    for(i=0;i

【C刷题】矩阵相等判断与序列中删除指定的数字_第11张图片

方法3:定义两个下标 i 和 j(动图演示)

动图演示的过程:

【C刷题】矩阵相等判断与序列中删除指定的数字_第12张图片

#include
int main()
{
   int n=0;
   //int m=0;
   scanf("%d",&n);
   int arr[n];
    int i=0;
    int j=0;
    for(i=0;i

【C刷题】矩阵相等判断与序列中删除指定的数字_第13张图片

 本篇结束,若有错误,欢迎大家指正,感谢支持!

你可能感兴趣的:(C刷题笔记,c语言,开发语言,笔记)