循环和分支问题?
题目:编写程序从一个大数组中查找另一个小数组,把查找到的所有起点打印在屏幕上(要求使用指针完成):?
答案:
#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5, 6, 7, 3, 4, 6,7, 3, 4, 5};
int arr1[] = {3, 4, 5};
int *p_cur = NULL, *p_arr1 = NULL;
for (p_cur = arr;p_cur <= arr + 11;p_cur++) {
for (p_arr1 = arr1;p_arr1 <= arr1 + 2;p_arr1++) {
if (*(p_arr1 - arr1 + p_cur) != *p_arr1) {
break;
}
}
if (!(p_arr1 <= arr1 + 2)) {
printf("位置%d是一个查找结果\n", p_cur - arr);
}
}
return 0;
}
问题是if(!(p_arr1<=arr1+2))这一步不懂,希望有人可以帮助我