• 20200926--图像旋转(奥赛一本通P96 9 多维数组)


    输入一个n行m列的黑白图像,将它顺时针旋转90度后输出。

    输入:第1行包含两个整数n和m(1<=n<=100,1<=m<=100),表示图像包含像素点的行数和列数。

    接下来n行,每行m个整数,表示图像的每个像素点灰度。相邻两个整数之间用单个空格隔开,每个元素均在1-255之间。

    输出:m行,每行n个整数,为顺时针旋转90度后的图像。相邻两个整数之间用单个空格隔开。

    样例输入:

    3 3

    1 2 3

    4 5 6

    7 8 9

    样例输出:

    7 4 1

    8 5 2

    9 6 3

    #include <bits/stdc++.h>

    using namespace std;

    int a[101][101];

    int n,m;//分别代表像素点的行数和列数

    int main()

    {

     //数据输入

      scanf("%d %d",&n,&m);//注意%d之间有空格,没有也行,因为没那么严格,但原题有要求的话,一定要留有空格

      for(int i=1;i<=n;i++)

       {  for(int j=1;j<=m;j++)

            {scanf("%d",&a[i][j]);}

       }

       //从第一列到最后一列,从最后一行到第一行的规律输出

        for(int i=1;i<=m;i++)

         {     for(int j=n;j>0;j--)

                 {printf("%d ",a[j][i]);}

                 printf(" ");

        }

      return 0;

    }

  • 相关阅读:
    进军装饰器2/3
    进军装饰器1/3
    购物车
    多级菜单(高效版)
    工资管理系统
    多级菜单(低效版)
    用户登录程序
    Accessibility辅助功能--一念天堂,一念地狱
    使用FragmentTabHost+TabLayout+ViewPager实现双层嵌套Tab
    android性能优化练习:过度绘制
  • 原文地址:https://www.cnblogs.com/whcsrj/p/13737069.html
Copyright © 2020-2023  润新知