4: 找出指定范围中符合特定条件的数(先遍历出这个范围之中所有的数,然后再加特定条件,将符合条件的数生成循环)
:要找到 n - m 这个范围之内符合条件的数 1): 先遍历 n - m 之间的每一个数 2):在判断遍历出来的数是不是符合条件,如果符合就拿出来用,不符合直接pass int i = n; while( i <= m) { if(一些特定的条件) { 如果达成,就把i 拿出来 }
i++; } PS:一个数字求各位数字的值:X=一个千位数: X/1000 = 千位 X%1000/100=百位 X%1000%100/10=十位 X % 10 = 个位 5: 利用循环求累加和与平均值(n - m 每一个数的累加和)
1)先声明一个变量用来代表累加和(sum) 2)再遍历n - m 之间每一个数 3)将遍历中的每一个数累加到累加和(sum)中去 4)遍历完成以后,sum 就是n - m之间每一个数的累加和 (平均值就为: sum/m ,累加和除以这些数 ) int sum = 0; int i = n; while(i <= m) {
sum += i
i++; }
6:求一堆数中的最大值和最小值(直接将语法带入)
int max = 0;(先要声明一个变量,就是这些数中最大的值) int i = n(然后遍历n - m这些数中所有的数,将这些遍历出来的数与max最大的数进行比较比之前大的就留下来,小的就pass掉,当遍历结束的时候留在max中的,就是这些数中最大的数;最小值与之相反) while(i <= m) { printf("请用户随机输入几个数\n"); int num = 0; scanf("%d",&num);(num是用户输入的数,输入后与n - m之间的数进行比较) if(num > max) {num == max;} i++; printf("max = %d\n",max); } (在进行比较的同时可能出现一些状况,只要记得:1.要保证这个max是用户输入的第一个数,可用if(i == n){max = num;}) 2.在xcode中int类型最大和最小是有提示的,INT_32MAX 或者 INT_32MIN,比最大的时候输入最小的INT_32MAX比最小的输入最大的INT_32MAX;
7:循环应用7 - 计数 1)记录循环了多少次
2)记录某个条件满足了多少次 案例:1-100间是3的倍数有多少 int count = 0;(声明一个记录次数的变量) int i =1;(循环的次数) while(i <= 100) (循环的条件) { if( i % 3 ==0 ) (如果在这之间是3的倍数) { count++; (就让它在这个循环体中+1) } i++; printf("在1-100之间是3的倍数有%d个",count); }
8:应用循环8-穷举(好比1个1个挨个试) int num = arc4random_uniform(n)+1 (系统随机产生随机数,前提是在系统下要引入头文件,在#include<stdio.h>下写入#include<stdlib.h>)
int i =0; while(1) { if(num == i)
{
printf("%d",i); break;
} i++; }
|