程序运行是怎样的

提问:程序运行是怎样的

网友回答:

程序的运行结果为:

解析

主函数中数组 a[4]={1,2,3,4};a[0]~a[3],存放了1~4,a[4]未存放元素。

fun(int *a)函数的功能是对主函数中的a数组元素进行右循环移位,共四轮(i=4~1)。

i=4,第1轮循环移位的执行过程:for(j=M-1;j>=0;j--)
                                  *(a+j+1)=*(a+j);

① j=M-1=3, *(a+j+1)=*(a+j);即 *(a+4)=*(a+3);也即a[4]=a[3];

②同理,有j=2时,a[3]=a[2];

③同理,有j=1时,a[2]=a[1];

④同理,有j=0时,a[1]=a[0];

最后,*a=k;实现了a[0]=a[3];即实现了循环移位。

输出的就是上面运行结果图中的第一行。

同理,

i=3,第2轮循环移位后,输出的就是上面运行结果图中的第二行。

i=2,第3轮循环移位后,输出的就是上面运行结果图中的第三行。

i=1,第4轮循环移位后,输出的就是上面运行结果图中的第四行(恢复为原数组元素)。

相关推荐

Java的while嵌套一个switch要注意什么吗?为啥我的程序运行是错的?求教

Java的while嵌套一个switch要注意什么吗?为啥我的程序运行是错的?求教

如果输入23,程序运行结果是

如果输入2 3,程序运行结果是

电脑是什么东西啊

0.0计算机(computer)俗称电脑,是一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。是能够按照程序运行,自动、高速处理海量数据的现代化

以下程序运行后的输出结果是???。

以下程序运行后的输出结果是???。

下列程序运行后的输出结果第一行是——,第二行是——

下列程序运行后的输出结果第一行是——,第二行是——

Forge2011进入解算程序运行到下面最后一步就停止不动了是怎么回事

Forge2011进入解算程序运行到下面最后一步就停止不动了是怎么回事

程序运行后,若要通过键盘给整型变量a和b分别赋值,应如何输入:

程序运行后,若要通过键盘给整型变量a和b分别赋值,应如何输入:

解释程序运行结构

解释程序运行结构

VB程序运行时调整DataGrid表格控件的列宽方法

VB程序运行时调整DataGrid表格控件的列宽方法

易语言程序运行失败

易语言程序运行失败

允许程序运行还是下载不了怎么办

允许程序运行还是下载不了怎么办

c++请创建一个数组类Array,要求按下面主函数及程序运行结果来完成Array

c++请创建一个数组类Array,要求按下面主函数及程序运行结果来完成Array

vb设计一个程序,运行后要求不断输入数据直到输入非数值为止,统计这些数中共有多少个

vb设计一个程序,运行后要求不断输入数据直到输入非数值为止,统计这些数中共有多少个

盒子游戏,游戏玩家专属个性阅读社区


©CopyRight 2010- 2020 BOXUU.COM Inc All Rights Reserved

鄂公网安备 35020302000061号- 鄂ICP备2020015574号-1