1. 在整型有序数组中查找想要的数字;
#include<stdio.h>
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;
while(left<=right)
{
int mid=left+(right-left)/2;
if(arr[mid]==key)
{
printf("找到了,下标为:%d\n",mid);
break;
}
else if(arr[mid] < key)
{
left = mid+1;
}
else
{
right = mid-1;
}
}
if(left>right)
printf("没有找到\n");
return 0;
}
2.模拟三次密码输入场景
#include <stdio.h>
#include<string.h>
int main()
{
int i=0;
char passwd[10]={0};
for (i=0;i<3;i++)
{
printf("请输入密码:");
scanf("%s",passwd);
if (strcmp(passwd,"123456")==0)
{
break;
}
}
if(i==3)
{
printf("登录失败\n");
}
if(i<3)
{
printf("登录成功\n");
}
return 0;
}
3.猜数字游戏
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
void menu()
{
printf("*******************\n");
printf("**1.play**2.exit***\n");
printf("*******************\n");
}
void game()
{
int num=0;
int input=0;
num=rand()%100+1;
while(1)
{
printf("请猜数字:\n");
scanf("%d",&input);
if(input>num)
{
printf("真遗憾,猜大了\n");
}
else if(input<num)
{
printf("真遗憾,猜小了\n");
}
else
{
printf("恭喜你,猜对了\n");
break;
}
}
}
int main()
{
int input=1;
srand((unsigned int)time(NULL));
do
{
menu();
printf("请输入:>");
scanf("%d",&input);
switch(input)
{
case 0:
printf("退出游戏\n");
break;
case 1:
game();
break;
default:
printf("选择错误\n");
break;
}
}
4.编写一个程序,可以一直接受键盘字符,如果是小写字符,就输出对应的大写字符,如果是大写字符,就输出对应的小写字符,如果是数字,则不输出:
#include<stdio.h>
int main()
{
int ch=0;
ch=getchar();
if((ch>='a')&&(ch<='z'))
{
ch=ch-32;
printf("%c\n",ch);
}
else if((ch>='A')&&(ch<='Z'))
{
ch=ch+32;
printf("%c\n",ch);
}
else
{
ch==EOF;
}
return 0;
}