日常C语言练习-1.3

1.完成猜数字游戏。
#include <stdio.h>
#include <Windows.h>

#include <time.h>

//1.完成猜数字游戏。 

int main() {

	int input = 0;
	srand((unsigned)time(NULL));

	do {
		menu();
		printf("请选择!\n");
		scanf_s("%d", &input);

		switch (input) {
		case 1:
			game();
			break;
		case 0:
			break;
		default:
			printf("选择错误,请重新选择:\n");
			break;
		}
	} while (input);
	

	return 0;
	system("pause");
}

int menu() {
	printf("**********************************\n");
	printf("***********  1.play     **********\n");
	printf("***********  0.exit     **********\n");
	printf("**********************************\n");
	return 1;
}

int game() {

	int random_num = rand() % 100 + 1;   //生成随机数
	int input = 0;
	
	while (1) {

		printf("请输入要猜的整数!\n");
		scanf_s("%d\n", &input);

		if (input > random_num) {
			printf("猜大了!\n");
			printf("请重新输入:\n");
		}
		else if (input < random_num) {
			printf("猜小了!\n");
			printf("请重新输入:\n");
		}
		else {
			printf("恭喜您猜对了!\n");
			break;
		}

	}
	return 1;
}
2. 写代码可以在整型有序数组中查找想要的数字,找到了返回下标,找不到返回-1.(折半查找)
#include <stdio.h>
#include <Windows.h>
 
int search(int arr[], int key, int left, int right)//查找函数
{
	while (left <= right)
	{
		int mid = (right - left) / 2;

		if (arr[mid] > key)
			right = mid--;
		else if (arr[mid] < key)
			left = mid++;
		else
		{
			return mid;
		}
	}
	return -1;
}

int main() {
	
	int arr[] = { 1,2,3,4,5,6,7,8,9,10 };
	int key = 7;
	int left = 0;
	int right = sizeof(arr) / sizeof(arr[0]) - 1;

	int myReturn = search(arr, key, left, right);

	if (myReturn == -1)
	{
		printf("没有此项\n");
	}
	else
	{
		printf("目标在下标为:%d\n", myReturn);
	}

	system("pause");
	return 0;


}

1.设置密码,登录三次失败后,不能登录

char ps[32];
	int i = 0;

	for (; i < 3; i++) {
		printf("Enter Pssword <%d times>", 3 - i);
		scanf_s("%s", ps);

		if (strcmp(ps, "ILOVEYOU") == 0) {

			printf("Login Success!\n");
			break;
		}

	}
	if (i >= 3) {
		printf("Login Fialed! Try 30 sceond!\n");
	}

4. .编写一个程序,可以一直接收键盘字符,如果是小写字符就输出对应的大写字符,如果接收的是大写字符,就输出对应的小写字符,如果是数字不输出。 
int ch = 0;
		printf("请输入一个字符:\n");
		while ((ch = getchar()) != EOF)
		{
			if (ch >= '0' && ch <= '9')
				;
			else if (ch >= 'A' && ch <= 'Z')
				putchar(ch + 32);
			else if (ch >= 'a' && ch <= 'z')
				putchar(ch - 32);
		}

猜你喜欢

转载自blog.csdn.net/qq_39026129/article/details/80186044