1. 完成猜数字游戏。
2.写代码可以在整型有序数组中查找想要的数字,找到了返回下标,找不到返回-1.(折半查找)
3.编写代码模拟三次密码输入的场景。
最多能输入三次密码,密码正确,提示“登录成功”,密码错误,可以重新输入,最多输入三次。三次均错,则提示退出程序。
4.编写一个程序,可以一直接收键盘字符,如果是小写字符就输出对应的大写字符,如果接收的是大写字符,就输出对应的小写字符,如果是数字不输出。
1. 完成猜数字游戏。
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void menu()
{
printf("******************************\n");
printf("1.play game 2.exit \n");
printf("******************************\n");
}
void game()
{
int num = 0;
int n = 0;
srand((unsigned int)time(NULL));
num = rand() % 100 + 1;
printf("请猜一个1-100之间的数字\n");
scanf("%d", &n);
while (n != num)
{
if (n > num)
{
printf("猜大了,请重新输入\n");
}
if (n < num)
{
printf("猜小了,请重新输入\n");
}
scanf("%d", &n);
}
printf("猜测正确\n");
}
int main()
{
int o;
menu();
scanf("%d", &o);
switch (o)
{
case 1: game(); break;
case 2: return 0;
}
}
2. 写代码可以在整型有序数组中查找想要的数字,找到了返回下标,找不到返回-1.(折半查找)
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int a[10] = { 2,3,4,5,6,7,8,9,10};
int i = 0;
int left = 1;
int right = sizeof(a) / sizeof(a[0])-1;
int mid = 0;
printf("请输入你要查找的数字\n");
scanf("%d", &i);
while (left <=right)
{
mid = left + (right - left) / 2;
if (a[mid] > i)
{
mid = mid - 1;
right = mid;
}
if (a[mid] < i)
{
mid = mid + 1;
left = mid;
}
if (a[mid] == i)
{
printf("你查找的是第%d个数\n", mid+1);
break;
}
}
if (left >= right)
{
printf("没有你要查找的数字\n");
}
return 0;
}
3. 编写代码模拟三次密码输入的场景。
最多能输入三次密码,密码正确,提示“登录成功”,密码错误,可以重新输入,最多输入三次。三次均错,则提示退出程序。
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
//char a[6] = { 9, 6, 1, 2, 0, 6 };
char b[10] = { 0 };
int n = 0;
while (n<3)
{
printf("please enter password\n");
scanf("%s", b);
if (strcmp(b, "961206") == 0)
{
printf("password correct\n");
return 0;
}
else
{
n++;
printf("password error\n");
}
}
printf("Enter password more than three times\n");
}
4. 编写一个程序,可以一直接收键盘字符,如果是小写字符就输出对应的大写字符,如果接收的是大写字符,就输出对应的小写字符,如果是数字不输出。
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
int main()
{
int m = 0;
printf("please enter a letter\n");
m = getchar();
getchar();
while (m != EOF)
{
if (m >= 'A' && m <= 'Z')
{
m = m + 32;
printf("%c\n", m);
}
else if (m >= 'a' && m <= 'z')
{
m = m - 32;
printf("%c\n", m);
}
else
{
printf("data error\n");
}
printf("please enter a letter\n");
m=getchar();
getchar();
}
return 0;
}