void print(int *xp, int len) {
while (len--)
cout << *xp++ << " ";
cout << endl;
}
int main(int argc, char** argv) {
int array[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
for(int i=10; i>0 ; i--)
print(array, i);
return 0;
}
它输出
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7
1 2 3 4 5 6
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1
单独修改 print() 以生成以下输出:
1 3 5 7 9
1 3 5 7 9
1 3 5 7
1 3 5 7
1 3 5
1 3 5
1 3
1 3
1
1
我试过了,但它打印出所有的 1
#include <iostream>
using namespace std;
void print(int *xp, int len) {
while (len-- && *xp%2 != 0)
cout << *xp << " ";
cout << endl;
}
int main(int argc, char** argv) {
int array[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
for(int i=10; i>0 ; i--)
print(array, i);
return 0;
}