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); }