c++数组简单基础题一道

求本题的做法,不是代写是真心不会了,感谢了
感觉写的差不多但输出的就是不对,实在不知道怎么写了,求指点

img

img

写一个move函数就好,定义一个变量等于最后一个数,然后所有数右移,最后将记录的数写入第一个数

#include <iostream>
using namespace std;
#include <iomanip>

void moveright(int *a,int n)
{
    int m = a[n-1];
    for(int i=n-1;i>0;i--)
        a[i] = a[i-1];
    a[0] = m;
    for(int i=0;i<n;i++)
        cout<<setw(3)<<a[i];
    cout<<endl;
}
int main(void)
{
    int a[6];
    cout<<"请输入6个整数:"<<endl;
    for(int i=0;i<6;i++)
        cin>>a[i];
    for(int i=0;i<6;i++)
        moveright(a,6);
    return 0;
 
}

题目也不放完整了,不让定义变量,那题目给出的变量到底是个什么变量,是数组还是int呢


#include <iomanip>

//数组
int main()
{
    int i,j,k;
    int a[6];
    for(i=0;i<6;i++)
        scanf("%d",&a[i]);        

    for(i=0;i<6;i++)
    {
        k=a[5];
        for(j=5;j>0;j--)
            a[j]=a[j-1];
            
        a[j]=k;

        for(j=0;j<6;j++)
            cout<<setw(3)<<a[j];
    }
}

//int
int main()
{
    int i,j,k;
    int a=0;
    for(i=0;i<6;i++)
    {
        scanf("%d",&k);  
        a=a*10+k;     
    }


    for(i=0;i<6;i++)
    {
        k=a%10;
        a/=10;
        a+=k*1000000;            
        
        for(j=5;j>=0;j--)
            cout<<setw(3)<<a/pow(10,j)%10;
    }
}