int i,n; char r[]="PCQ",mi[10]; system("cls"); printf("\n\t-------------------------------------------------------------\n"); printf("\n\t\t 欢迎使用学生成绩管理系统\n\n"); printf("\n\t\t 电气204班 204630424彭楚秦 版权所有 \n"); printf("\n\t-------------------------------------------------------------\n"); for(i=0;i<3;i++) { printf("请输入账号:"); scanf("%s",mi); printf("请输入密码:"); scanf("%d",&n); if((strcmp(mi,r)==0)&&(n==2210630326u)) return 1; else { printf("账号或密码错误!\n"); system("pause"); } }- printf("禁止进入!"); system("pause"); exit(0); }
时间: 2023-07-13 12:32:31 浏览: 84
这是一段 C 语言代码,实现了一个简单的用户登录系统。程序要求用户输入账号和密码,如果输入正确则返回 1,否则最多可以尝试三次,超过三次则提示“禁止进入”。
程序中定义了两个变量 i 和 n,分别表示循环计数器和密码输入的变量。还定义了两个字符数组 r 和 mi,分别用于存储正确的账号和用户输入的账号。程序通过循环三次的方式,让用户有三次机会输入正确的账号和密码。如果用户输入正确,则返回 1;否则提示“账号或密码错误!”并暂停程序的执行,等待用户继续输入。
最后,如果用户输入错误三次,程序则提示“禁止进入!”并结束程序的执行。
需要注意的是,程序中的密码是以无符号整数的方式存储的,并且在比较时使用了字面量“u”,表示该数值是一个无符号整数。
相关问题
int i,n; char r[]="PCQ",mi[10]; system("cls"); printf("\n\t-------------------------------------------------------------\n"); printf("\n\t\t 欢迎使用学生成绩管理系统\n\n"); printf("\n\t\t 电气204班 204630424彭楚秦 版权所有 \n"); printf("\n\t-------------------------------------------------------------\n"); for(i=0;i<3;i++) { printf("请输入账号:"); scanf("%s",mi); printf("请输入密码:"); scanf("%d",&n); if((strcmp(mi,r)==0)&&(n==2210630326)) return 1; else { printf("账号或密码错误!\n"); system("pause"); } }- printf("禁止进入!"); system("pause"); exit(0); }
这段代码与之前的代码相比,唯一的区别是在比较密码时去掉了字面量“u”,即将密码以有符号整数的方式进行比较。
这样做的结果是,无论用户输入什么样的密码(正数或负数),程序都会将其当作有符号整数进行比较。如果用户输入的是一个负数,而原本密码是一个正数,那么这个比较操作就会失败,导致用户无法登录。
因此,建议在比较密码时仍然使用无符号整数的方式,即将密码写成 2210630326u。这样可以确保程序的正确性,避免因为数据类型不匹配导致的错误。
有可能是相對路徑有誤導致閃退,請你幫我更正src_path = r"Z:\看板v2" dst_path = r"\\pcq-smt-ftp01\smt$\CQ SMT-單板測試課\6.制程組--Junliang\看板源數據\治具NTF" src_folder = r"Y:\iplas\Robot_Log\SMT" dst_folder = r"\\pcq-smt-ftp01\smt$\CQ SMT-單板測試課\6.制程組--Junliang\看板源數據\治具NTF"
根据您提供的路径信息,我可以看出您的源路径和目标路径都是网络共享路径。您需要注意以下几点:
1. 确认网络共享路径是否已经正确映射
2. 检查源路径和目标路径是否均可以被当前用户访问
3. 确认路径中的反斜杠是否正确转义,可以使用原始字符串表示法(在路径字符串前加上'r')来避免反斜杠转义问题
根据您提供的路径信息,可以对应以下代码:
```python
src_path = r"Z:\看板v2"
dst_path = r"\\pcq-smt-ftp01\smt$\CQ SMT-單板測試課\6.制程組--Junliang\看板源數據\治具NTF"
src_folder = r"Y:\iplas\Robot_Log\SMT"
dst_folder = r"\\pcq-smt-ftp01\smt$\CQ SMT-單板測試課\6.制程組--Junliang\看板源數據\治具NTF"
```
请注意,在路径字符串前加上'r'表示使用原始字符串表示法。如果仍然无法正常运行,请检查路径映射、用户权限等问题。
阅读全文