用C语言编写一个程序,将一维数组中的元素向右循环N次,用指针法和下标法

如题所述

#include<stdio.h>
int main(void)
{int a[10],i,j,n,t;
printf("Input N:");
scanf("%d",&n);
/*Input array a*/
for(i=0;i<10;i++)a[i]=i+1;
/*Move array a*/
for(i=1;i<=n;i++)
{t=a[9];
for(j=8;j>=0;j--)
{a[j+1]=a[j];
}
a[0]=t;
}
/*Output array a*/
printf("Right Moveing %d :\n",n);
for(i=0;i<10;i++)
printf("%d,",a[i]);
return 0;
}

你拿这个程序试一试看看吧! 我也没调试过;直接就写给你了,
要是有什么程序写的不足的话,,,,最起码编写思想你得提取一下咯~!
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-03-29
#include<stdio.h>
#define X 10;x为数组长度要改直接改后面的数字
void main()
{
int array[X+1]; //长度为x+1,最后一个元素为array[x]
int n,i,j;
scanf("%d",&n);//读取循环次数
for(i=0;i<X;i++)
scanf("%d",&array[i]); //读入数组
for(i=1;i<=n;i++) // 循环n次
{ array[X]=array[X-1];
for(j=X-1;j>=0;j--)
array[j]=array[j-1];
array[0]=array[X];
}
} //估计差不多了,我编译器坏了 没调试。你试试吧

C语言,编写程序,使用指针求出一维整型数组,数组自定,求出最大值及其下 ...
include<stdio.h>#define ARRAY_LEN 100int main(void) {int arr[ARRAY_LEN],len,i,*p=arr,*max=arr;printf("请输入初始数组元素个数:");scanf("%d",&len); printf ("\\n"); printf ("===\\n\\n"); printf("请输入数组内容,共%d个元素: ",len);for(i=0; i<len; p...

c语言数组下标实现循环
当起始位置k为0时,这是最简单的情况。给定数组A,起始位置k为0,周期长度T。数组包含A[0]-A[T-1]共T个元素。若d为1,即每次向右移动,公式为:[公式]若d为-1,c+d可能变为负数。为解决此问题,公式中增加T,形式为:[公式]对于起始位置不为0的情况,将所有元素左移k个位置,起始位置变...

编写程序。输出一维数组中的元素最小值及其下标。(假设数组a的长度为...
{ int a[10]={9,8,7,4,5,6,0,1,2,3};printf("%d %d\\n",a[func(a,10)],func(a,10));return 0;}

用C语言编一个程序,把一个一维数组中最大的数和第一个数调换,最小的...
\/\/循环一遍后,arr[k]即为最大值得那个数,k为其下标 tmp = arr[0];arr[0] = arr[k];arr[k] = tmp;\/\/最大值和第一个数交换了 for ( i = 0; i < N; i ++ )if ( arr[i] < min ){ min = arr[i];k = i;} \/\/循环一遍后,arr[k]即为最小值得那个数,k为其下标 ...

呵呵,请用c语言帮我编程序
请使用C语言编写一段程序,实现将数组中的元素进行排序。程序代码如下:首先定义一个整型数组a,包含10个元素,数组元素初始化为0,然后定义一个整型变量m,n,i和b。使用scanf函数输入10个整数并存储到数组a中。接下来使用for循环遍历数组a,从下标0开始到下标9结束。定义一个整型变量x用于存储用户输入...

用C语言如何将一个一维数组中的元素随机排序
include include include intmain(){ inti,j,n,k,t,a[100];srand((unsigned)time(NULL));

C语言 | 指针引用数组
在C语言中,数组元素的指针指的是数组元素的地址。通过指针,可以实现对数组元素的引用。引用数组元素的方法有两种:下标法和指针法。下标法是通过数组名加上下标索引来访问元素。而指针法则是通过指向数组元素的指针来访问元素。数组名在C语言中代表数组首元素的地址,使用指针法在程序的效率和内存使用上...

设计C语言程序,用一维数组输入N个整数,将这n个整数按从大到小排列_百度...
一、冒泡法(起泡法)算法要求:用起泡法对10个整数按升序排序。算法分析:如果有n个数,则要进行n-1趟比较。在第1趟比较中要进行n-1次相邻元素的两两比较,在第j趟比较中要进行n-j次两两比较。比较的顺序从前往后,经过一趟比较后,将最值沉底(换到最后一个元素位置),最大值沉底为升序,最...

用C语言编程.写出一函数,求出有N个元素的整数数组的最大值及其...
楼主,我的程序如下。函数max读入一个n元素的数组a,返回其中最大元素的地址。这样,在调用max的函数中(这里是main),可以通过两种运算分别得到最大元素的值和它的下标(见main中注释)include int max(int a,int n){ int i;int p = a;for (i = 0;i < n;i++ )if (a[i]> p )p ...

C语言指针,下标,
2.指向数组元素的指针 若有如下定义:int a[10], *pa;pa=a;则p=&a[0]是将数组第1个元素的地址赋给了指针变量p。实际上,C语言中数组名就是数组的首地址,所以第一个元素的地址可以用两种方法获得:p=&a[0]或p=a。这两种方法在形式上相像,其区别在于:pa是指针变量,a是数组名。值得...

相似回答