当前位置: 首页 > news >正文

加强网站和公众号建设郑州网络推广专业公司

加强网站和公众号建设,郑州网络推广专业公司,wordpress 网站显示ip,吉林网站建站系统平台🐶博主主页:ᰔᩚ. 一怀明月ꦿ ❤️‍🔥专栏系列:线性代数,C初学者入门训练 🔥座右铭:“不要等到什么都没有了,才下定决心去做” 🚀🚀🚀大家觉不错…

🐶博主主页:@ᰔᩚ. 一怀明月ꦿ 

❤️‍🔥专栏系列:线性代数,C初学者入门训练

🔥座右铭“不要等到什么都没有了,才下定决心去做”

🚀🚀🚀大家觉不错的话,就恳求大家点点关注,点点小爱心,指点指点🚀🚀🚀 ​​​​​​​

 

题目:BC134 蛇形矩阵

难度:中等

描述:

给你一个整数n,输出n∗n的蛇形矩阵。

输入描述:

输入一行,包含一个整数n

输出描述:

输出n行,每行包含n个正整数,通过空格分隔。

1<=n<=1000

示例1

输入:

4

输出:

1 2 6 7

3 5 8 13

4 9 12 14

10 11 15 16

解题思路:所以,我用pos变量表示方向,其中1代表右上与右,-1代表左下与下.

运动情况分为6种:

碰到上边界(即i等于1且j小于n): 列增加1,行不变--------往右移动一格

碰到左边界(即j等于1 且 i小于n): 行增加1,列不变--------往下移动一格

碰到右边界(即j等于n): 行增加1,列不变--------往下移动一格

碰到下边界(即i等于n): 列增加1,行不变--------往右移动一格

以上四种是在边界上面移动.只有向右 和 向下

除去上面四种的边界情况,就是在边界中间的左下移动

除去上面四种的边界情况,就是在边界中间的右上移动

最后两种是在边界内移动 只有右上和左下

#include<stdio.h>
int main()
{int n=0;printf("请输入矩阵的阶数\n");scanf("%d",&n);int arr[n+2][n+2];//虽然定义了一个,n+2阶的矩阵,但是我们只需要n阶矩阵for(int i=0;i<n+2;i++){for(int j=0;j<n+2;j++){arr[i][j]=0;}}arr[1][1]=1;int k=0;int i=1,j=1,pos=1;for(k=2;k<=n*n;k++){if(i==1&&j<n&&pos==1)//上边界,行不变,列增加一{arr[i][++j]=k;pos=-1;}else if(j==1&&i<n&&pos==-1)//左边界,列不变,行增加一{arr[++i][j]=k;pos=1;}else if(j==n&&pos==1)//右边界,行加一,列不变{arr[++i][j]=k;pos=-1;}else if(i==n&&pos==-1)//下边界,行不变,列加一{arr[i][++j]=k;pos=1;}else if(pos==1)//右上{arr[--i][++j]=k;}else if(pos==-1)//左下{arr[++i][--j]=k;}}for(i=1;i<=n;i++){for(j=1;j<=n;j++){printf("%-4d",arr[i][j]);}printf("\n");}
}

BC136 KiKi判断上三角矩阵

难度:中等

描述:

KiKi想知道一个n阶方矩是否为上三角矩阵,请帮他编程判定。上三角矩阵即主对角线以下的元素都为0的矩阵,主对角线为从矩阵的左上角至右下角的连线。

输入描述:

第一行包含一个整数n,表示一个方阵包含n行n列,用空格分隔。 (2≤n≤10)

从2到n+1行,每行输入n个整数(范围-231~231-1),用空格分隔,共输入n*n个数。

输出描述:

一行,如果输入方阵是上三角矩阵输出"YES"并换行,否则输出"NO"并换行。

示例1

输入:

3

1 2 3

0 4 5

0 0 6

输出:

YES

示例2

输入:

4

1 2 3 4

5 6 7 8

9 0 11 12

13 0 0 16

输出:

NO

解题思路:我们可以判断它主对角线下面的元素是否为0,第一行,判断0个元素,第二行判断两个元素,第三行判断三个元素...第n行判断n-1个元素。

#include<stdio.h>
int main()
{int n=0;printf("亲输入输入方阵边长\n");scanf("%d",&n);int arr[n][n];int i=0,j=0;int count=0;printf("请输入矩阵\n");for( i=0;i<n;i++){for( j=0;j<n;j++){scanf("%d",&arr[i][j]);}}for( i=1;i<n;i++){for( j=0;j<i;j++){if(arr[i][j]!=0){printf("NO\n");count=1;goto agin;}}}agin:if(count==0){printf("YES\n");}return 0;
}

这里用到了,goto语句,如果判断它有一个元素不是0,就直接跳出两重循环,这样减少了,循环次数。

 🌸🌸🌸如果大家还有不懂或者建议都可以发在评论区,我们共同探讨,共同学习,共同进步。谢谢大家! 🌸🌸🌸 

http://www.tj-hxxt.cn/news/91368.html

相关文章:

  • 跨境进口网站怎么做网络营销的四大特点
  • 横岗网站建设多少钱重庆森林百度云
  • 做网站好平台化seo网站推广公司
  • 在那个网站做任务赚站长工具域名解析
  • frontpage做的网站好不好百度快速收录
  • 石家庄做网站如何去推广
  • 兼职做任务的网站2023年适合小学生的新闻有哪些
  • 网站分页需要前端做还是后端8个公开大数据网站
  • 免费php网站源码百度快照排名
  • 做网站一般用什么字体软文广告案例
  • 手游制作百度seo插件
  • 做旅游网站的原因电商运营推广是做什么的
  • 北京网站建设设计广州网页定制多少钱
  • 廊坊网站建设价格电商运营怎么做如何从零开始
  • 一个网站的制作步骤惠州百度推广优化排名
  • cms管理手机网站怎么快速排名
  • 做网站都需要什么无锡百度推广代理商
  • 知名的网站设计公司微信怎么引流营销呢
  • 凡科怎么建设网站抖音关键词挖掘工具
  • 继续教育网站怎么做不了作业万网是什么网站
  • asp网站查看器网页宣传
  • 网页制作与设计是前端吗合肥seo推广公司哪家好
  • 青岛品牌网站建设高端网站建设企业
  • wordpress阿里巴巴图标厦门seo优化公司
  • 云服务器的作用合肥seo网站管理
  • 免费搭建业务网站北京网络营销公司哪家好
  • 网站打开不了怎样做seo人人网
  • 怎样在本地测试多个织梦网站新闻头条最新
  • 宝安做棋牌网站建设哪家技术好学it一年的学费大概是多少
  • 建设企业人力资源网站提高工作效率的方法有哪些