自学C语言的第五天

今天把分支的最后几道例题解决了,还有函数的初步。

今天收获比较大的还是又复习了一遍二分查找,还有学了猜数字的游戏。学习难度比之前有所上升。

照例贴一下代码(感觉今天还写了挺多的)

int main()
{
	char arr1[] = "welcome to bit!!!!!!";
	char arr2[] = "####################";
	int left = 0;
	int right = strlen(arr1) - 1;
	while (left<=right)
	{
		arr2[left] = arr1[left];
		arr2[right] = arr1[right];
		printf("%s\n", arr2);
		Sleep(1000);
		system("cls");
		left++;
		right--;
	}
	return 0;
}

int main()
{
	char arr2[20] = { 0 };
	int n = 0;
	for (n = 0; n < 3; n++)
	{
		printf("请输入密码:");
		scanf("%s", arr2);
		if (strcmp(arr2,"123456")==0)
		{
			printf("输入正确");
			break;
		}
		else
		{
			printf("输入错误,请重新输入");	
		}
	}
	if (n == 3)
	{
		printf("输入失败");
	}

	return 0;
}

void menu()
{
	printf("******************************\n");
	printf("***********1.play*************\n");
	printf("***********0.exit*************\n");
	printf("******************************\n");
}
void game()
{
	int num1 = rand() % 100 + 1;
	printf("猜数字:");
	while (1)
	{
		int a = 0;
		scanf("%d", &a);
		if (a == num1)
		{
			printf("猜对了\n");
			break;
		}
		else if (a < num1)
		{
			printf("猜小了\n");
		}
		else
		{
			printf("猜大了\n");
		}
	}
}
int main()
{
	int a = 0;
	srand((unsigned)time(NULL));
	do
	{
		menu();
		printf("请输入:");
		scanf("%d", &a);
		switch (a)
		{
		case 1:

			game();
			break;

		case 0:

			break;
		default:
			printf("输入错误");
			break;

		}
	} while (a);
	return 0;
}

int main()
{
	char arr1[20] = { 0 };
	char arr2[] = "hello bite";
	strcpy(arr1, arr2);
	printf("%s", arr1);
	return 0;
}

int main()
{
	char arr1[] = "hello bit";
	int arr2[] = { 0 };
	memset(arr1, 'x', 5);
	printf("%s", arr1);
	return 0;

}

int MAX(int a, int b)
{
	int z = 0;
	if (a > b)
		z=a;
	else 
		z=b;
	return z;
}
int main()
{
	int x = 0;
	int y = 0;
	scanf("%d%d", &x, &y);
    int c= MAX(x, y);
	printf("%d", c);
	return 0;
}

void swap(int* pa, int* pb)
{
	int z = 0;
	z = *pa;
	*pa = *pb;
	*pb = z;
}
int main()
{
	int a = 0;
	int b = 0;
	printf("请输入a与b:");
	scanf("%d%d", &a, &b);
	swap(&a, &b);
	printf("交换后a=%d,b=%d", a, b);
	return 0;
}

int is_prime(int a)
{
	int b = 0;
	for (b = 2; b < a; b++)
	{
		if (a % b == 0)
			return 0;
	}
	return 1;
}
int main()
{
	int c = 0;
	for (c = 100; c <= 200; c++)
	{
		;
		if (is_prime(c) == 1)
		{
			printf("%d ", c);
		}

	}
	return 0;
}


int main()
{
	int a = 10;
	int b = sqrt(a);
	printf("%d", b);
	return 0;
}

int year(int a)
{
	if ((a%4==0&&a%10!=0)||(a%400==0))
		return 1;
	return 0;
}
int main()
{
	int c = 0;
	int d = 0;
	scanf("%d", &c);
	d = year(c);
	if (d == 1)
		printf("%d是闰年\n", c);
	else
		printf("%d不是闰年\n", c);
	return 0;
}

int main()
{
	int c = 0;
	for (c = 1000; c <= 2000; c++)
	{
		int d = year(c);
		if (d == 1)
			printf("%d ", c);
	}
	return 0;
}

 int year(int a)
{
	 return((a % 4 == 0 && a % 10 != 0) || (a % 400 == 0));
}
int main()
{
	int c = 0;
	for (c = 1000; c <= 2000; c++)
	{
		int d = year(c);
		if (d == 1)
			printf("%d ", c);
	}
	return 0;
}

int erfen(int k[],int a,int s)
{
	int left = 0;
	int right = s-1;
	while(left<=right)
	{
		int mid = (left + right) / 2;
		if (a < k[mid])
		{
			 right = mid - 1;
		}
		else if (a > k[mid])
		{
			 left = mid + 1;
		}
		else
		{
			return mid;
        }
		
	}
	return -1;
}
int main()
{
	int arr[] = { 1,2,3,4,5,6,7,8,9,10 };
	int sz = sizeof(arr) / sizeof(arr[0]);
	int z = 7;
	int x = erfen(arr,z,sz);
	if (-1==x)
	{
		printf("找不到");
	}
	else
		printf("找到了,下标是%d\n", x);
		
	return 0;

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值