#include <stdio.h>
int i;
int buf[20];
void main(){
int x = 3;
for(i = 6; i < 12; i+2){
buf[i] = 5;
printf("print1 : %d \n", i);
buf[i+1] = 5;
printf("print 2 :%d \n", i);
}
for(i = 6; i < 12; i++){
printf("%d\n", buf[i]);
}
}
Run Code Online (Sandbox Code Playgroud)
此代码进入infine循环并打印仅打印1:6打印2:6.为什么?
因为你不修改i
.
更改for(i = 6; i < 12; i+2)
到:
for(i = 6; i < 12; i+=2)
^^
Run Code Online (Sandbox Code Playgroud)