C++求救,一道编程题不知道怎么做

求救!!!请问大佬们这道题用C++怎么写。。。(这学期C++课和其他专业课冲突,一节都没去过,这是其中的一个划范围的题)

4.(检测密码)一些网站对于密码的设定具有一些规则。编写一个函数,检测字符串是否是一个有效密码。假设密码规则如下:
密码必须至少8位字符
密码仅能包含大小写字母和数字
密码必须至少包含一个数字
密码必须至少包含一个大写字母
密码不能全由小写字母组成
编写一个程序,提示用户输入一个密码。如果符合规则,那么显示valid password;否则,显示invalid password。

如果问题解决,请点下我回答左上角的采纳

#include <stdio.h>
#include <string.h>

int checkpwd(char * pwd)
{
int n = strlen(pwd);
if (n < 8) return 0;
int ul = 0;
int ll = 0;
int nu = 0;
for (int i = 0; i < n; i++)
{
if (pwd[i] >= '0' && pwd[i] <= '9') nu++;
else if (pwd[i] >= 'A' && pwd[i] <= 'Z') ul++;
else if (pwd[i] >= 'a' && pwd[i] <= 'z') ll++;
else return 0;
}
return nu && ul && ll;
}
int main()
{
char pwd[100];
scanf("%s", &pwd[0]);
if (checkpwd(pwd))
printf("valid password");
else
printf("invalid password");
return 0;
}