第二次作业——自评


  不知不觉已近期末,学了三个月C++程序设计的我在理论知识的掌握、设计想法的实践方面尚有许多不足。

  目前较为薄弱的知识点应该是指针的使用和一些较为复杂的嵌套、循环、排序。(在每次拼题网的作业和限时小测中,自己很难快速打出代码得知)

例如:1.嵌套循环中重复使用同一变量名。

for(int i=0;i<10;i++){
    for(int i=0;i<5;i++){
        ……
     }
}

        2.忘记给定义的变量赋初值便进行自增自减运算。

例子:数组元素的循环右移

题目大意:使数组元素循环向右移动一定位数。

解题思路:使用循环对元素位置进行改变。

核心技术:元素下标的改变

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

{

   m=m%n;

  cin>>a[m];

 m++;
}
编程中存在的问题:元素下标如何根据输入的位移数进行改变。
解决方法:在输入时便移好位。                   

#include<iostream>
using namespace std;
int main()
{
    int n,m,a[100];
    cin >> n >>m;
    for(int i=0;i<n;i++)
    {
        m=m%n;
        cin>>a[m];
        m++;
    }
    int all=n;
    for(int i=0;i<all-1;i++)
    {
        cout << a[i] << " " ;
    }
    cout << a[all-1];
}
posted @ 2018-12-09 14:59  陈志冠  阅读(129)  评论(0编辑  收藏  举报