数组进阶
- 随机生成10个1-100的奇数
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(){
int nums[10];
int i = 0, num = 0;
srand(time(NULL));
for(;i<=9;){
num = rand() % 100 + 1;
if(num % 2 != 0){
nums[i++] = num;
}
}
for(i=0;i<10;i++){
printf("%d",nums[i]);
}
printf("\n");
}
continue、break
- 不同点
1.continue继续下一轮循环
2.break终止循环- 相同点
1.只对离它们最近的循环有效
break
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(){
int nums[10];
int i = 0, num = 0;
srand(time(NULL));
for(;;){
num = rand() % 100 + 1;
if(num % 2 != 0){
nums[i++] = num;
if(i > 9) break;
}
}
for(i=0;i<10;i++){
printf("%d",nums[i]);
}
printf("\n");
}
continue
#include <stdio.h>
void main(){
int isSkip = 0;
for(int i=0;i<10;i++){
if(isSkip){
isSkip = 0;
continue;
}
printf("%d",i);
for(int j=1;j<=5;j++){
if((i*j)%7==0){
isSkip = 1;
break;
}
printf("*");
}
printf("\n");
}
}
内层循环结束或继续外层循环
#include <stdio.h>
void main(){
int isSkip = 0;
for(int i=0;i<10;i++){
if(isSkip){
isSkip = 0;
continue;
}
printf("%d",i);
for(int j=1;j<=5;j++){
if((i*j)%7 == 0){
isSkip = 1;
break;
}
printf("*");
}
printf("\n");
}
}