/*
* Copyright (c) 2014, 烟台大学计算机学院
* All rights reserved.
* 文件名称:test.cpp
* 作 者:刘佳琦
* 完成日期:2014年 11 月 20 日
* 版 本 号:v1.0
*
* 问题描述:删除数组中所有能被3整除的元素
* 输入描述:无
* 程序输出:删除后的全部元素
*/
#include <iostream>
using namespace std;
int main()
{
int n=16;
int i,j;
int a[16]= {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};
for(i=2; i<=15; i++)
{
if(a[i]%3==0)
{
j=i;
while(j<n-1)
{
a[j]=a[j+1];
j++;
}
n--;
}
}
for(i=0; i<n; ++i)
cout<<a[i]<<" ";
return 0;
}
运行结果:
知识点总结:明白a【】的改变是在整个函数中,无论形参实参。
学习心得:刚开始没有让i=j,导致一直失败,因为没有注意到a[i]在不断的改变。下次要注意到数组的值的变化。