1.简单查找
查找顾名思义就是通过一定的方式来找到自己想要的数据,例如:设置一目标值target = 65;让我们输入数字k来找到目标值;则可通过代码实现该需求。
#include<stdio.h>
int main()
{
int target = 65; //设置目标值为65
int k; //设置猜的数
printf("请开始查找");
scanf("%d", &k);
while (k != target) {
printf("请在1~100查找");
scanf("%d", &k);
}
printf("成功了!");
return 0;
}
我们也可以利用do while语句来实现该查找在这个代码中我们添加一项功能就是判断每一次输入的值相比于目标值是大了还是小了:而while语句和do while语句的不同就是while语句需要先判定条件在执行操作,而do while语句是先执行操作在判断条件。
#include<stdio.h>
int main()
{
int target = 65; //设置目标值为65
int k; //设置猜的数
printf("请在1~100查找");
do {
scanf("%d", &k);
if (k < target) {
printf("猜小了,再试试\n");
}
else if (k > target) {
printf("猜大了,再试试\n");
}
} while (k != target);
printf("成功了!");
return 0;
}
以上两个代码是给定一个固定的目标值target,并且第二个代码可以判断输入的数据是过大还是国小。而如果我们需要给定一个随机的目标值target,那我们应该怎么实现呢?这里就需要引用到库函数"stdlib.h"来实现随机生成数字了,具体代码如下:
#include<stdio.h>
#include<stdlib.h>
int main()
{
srand(time(0));
int target = rand() % 100 + 1; //如果是rand() % 100 则是生成0~99的数,+1则可以实现生成1~100之间的数
for (int i = 1; i < 100; i++) {
if (i == target) {
printf("猜对了!答案是%d", i);
return 0;
}
}
printf("成功了!");
return 0;
}
以上讲的就是算法入门的第一个部分,简单查找的思路以及相关代码。