先来两道题练练手
1、编写代码,演示多个字符从两端移动,向中间汇聚。
#include <stdio.h>
#include <string.h>
#include <windows.h>
#include <stdlib.h>
int main(){
char arr1[] = "Welcome to China!!!!!!";
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);
left++;
right--;
Sleep(100);
system("cls");
}
printf("%s\n", arr2);
return 0;
}
2、编写代码实现,模拟用户登录情景,并且只能登录三次。(只允许输入三次密码,如果密码正确则提示登录成功,三次都输入错误,则退出程序)
#include <stdio.h>
#include <string.h>
int main(){
int i = 0;
char prssword[12] = {0};
printf("请输入密码(3次):>");
for (; 3 > i; i++){
scanf("%s", &prssword);
if (strcmp(prssword ,"123456") == 0){
// == 不能比较两个字符串,应该用库函数-sarcmp,对应头文件string.h
printf("登陆成功!\n");
break;
}
else{
printf("密码错误!\n");
printf("请重新输入密码(%d次):>",2-i);
}
}
if (i == 3){
printf("密码错误三次,程序结束\n");
}
}
总结/收获
- windows.h-----Sleep(整数);-----暂停, 单位毫秒
- stdlib.h-----system("cls");-----清屏
- string.h-----strlen;-----计算字符串长度
- string.h-----scrcmp;-----比较字符串