导航:首页 > 编程语言 > 给定程序中函数fun的功能是将n

给定程序中函数fun的功能是将n

发布时间:2025-07-02 07:42:55

Ⅰ 1. 给定程序中,函数fun的功能是:有N×N矩阵,将矩阵的外围元素顺时针旋转。 操作顺序是:首先将第一行元

操作顺序是:首先将第一行元素的值存入临时数组r,然后使第一列成为第一行,最后一行成为第一列,最后一列成为最后一行,再使临时数组中的元素成为最后一列。
例如,若N=3,有下列矩阵:
1 2 3
4 5 6
7 8 9
操作后应为:
7 4 1
8 5 2
9 6 3
请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。
注意:部分源程序在文件BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
【参考答案】
(1)0 (2)j-- (3)j

Ⅱ 给定程序中,函数FUN的功能是建立一个N*M的矩阵,矩阵元素的规律是:最外层元素的值全部为1,从外向内第二

#include<stdio.h>
#define N 5 //数组的行数
#define M 6 //数组的列数
main()
{
int i,j,a[N][M]={0};//先将数组值均赋值为0
for(j=0;j<N/2+1;j++)//从外围从新给数组赋值
{
for(i=0;i<M;i++)
{ if(a[j][i]==0)//if语句,当赋值为0时改变其值为第几维,不为0时不改变其值(下同)
a[j][i]=j+1;
if(a[N-1-j][i]==0)
a[N-1-j][i]=j+1;}

for(i=0;i<N;i++)
{if(a[i][j]==0)
a[i][j]=j+1;
if(a[i][M-1-j]==0)
a[i][M-1-j]=j+1; }

}
for(i=0;i<N;i++)
{for(j=0;j<M;j++)
printf("%2d",a[i][j]);//输出数组元素
printf("\n");}

}
我想的方法是先将数组所有元素赋值为0;在将第一圈赋值为1;第二圈赋值为2 ............。
通过值不为0就不改变其值,等于0的就把其值赋值为其圈数!
不知道有什么简单的方法没?可以讨论讨论!

谢谢下面的朋友给我的修改,那样效率能更高!但我运行了一下,当N>2M时就不能正确输出了!可能还有你没有想到的地方。根据你的提示将程序修改如下,效率更高!
#include<stdio.h>
#define N 15 //数组的行数
#define M 15 //数组的列数
main()
{
int i,j,a[N][M]={0};//先将数组值均赋值为0
for(j=0;j<N/2+1;j++)//从外围从新给数组赋值
{
for(i=j;i<M-j;i++)
{if(a[j][i]==0)//if语句,当赋值为0时改变其值为第几维,不为0时不改变其值(下同)
a[j][i]=j+1;
if(a[N-1-j][i]==0)
a[N-1-j][i]=j+1;}

for(i=j;i<N-j;i++)
{if(a[i][j]==0)
a[i][j]=j+1;
if(a[i][M-1-j]==0)
a[i][M-1-j]=j+1; }

}
for(i=0;i<N;i++)
{for(j=0;j<M;j++)
printf("%2d",a[i][j]);//输出数组元素
printf("\n");}

}

阅读全文

与给定程序中函数fun的功能是将n相关的资料

热点内容
一个数据库大小限制多少g 浏览:760
无限斯特拉托斯可以用哪些app看 浏览:954
图片与拍摄文件大小名词解释 浏览:229
java的classpath配置文件 浏览:286
在小年鱼app里面如何退款 浏览:143
网络电话哪个软件好用吗 浏览:386
pokemon叫声文件 浏览:689
工程源文件路径 浏览:137
cad高版本能否打开低版本文件 浏览:430
金山1kb病毒专杀工具 浏览:371
面试官大数据处理需要问什么问题 浏览:842
cf武器升级吧科技点 浏览:863
dc升级 浏览:145
能上传文件的表单 浏览:516
cad怎么样复制到另一个文件里 浏览:49
微信朋友圈被屏蔽知乎 浏览:673
现代密码学视频 浏览:388
小米5splus微信运动 浏览:813
热血战斗小说去哪个网站 浏览:281
小孩学哪个编程语言好 浏览:279

友情链接