结构里能不能判断

来源:百度知道 编辑:UC知道 时间:2024/07/03 01:05:05
#include <stdio.h>
struct wow
{
char zh[80];
int ji;
char mi[65];
};
void main()
{
struct wow hao;
printf("输入帐号: ");
fflush(stdin);
gets(hao.zh);
printf("输入密码: ");
fflush(stdin);
scanf("%s",&hao.mi);
printf("输入级别: ");
scanf("%d",&hao.ji);
if(hao.zh=='aaa'&&hao.mi=='123')
printf("登陆成功");
else
printf("帐号或密码错误");
}
结构里能不能这么写啊,运行不了啊??还是我写错了?
结构里没有循环,那也不能有判断吗??

scanf("%s",&hao.mi);
这里多了一个取地址,去掉&;也可以用gets(hao.mi);

if(hao.zh=='aaa'&&hao.mi=='123')
C语言不知道是否支持这样的字符串比较,就算是可以,字符串也要双引号

建议#include <string.h>
if(!(strcmp(hao.zh,"aaa")&&strcmp(hao.mi,"123")))

差不多就着2个地方有问题

scanf("%s",&hao.mi);不用加&
if(hao.zh=='aaa'&&hao.mi=='123')
应该是if (strcmp(hao.zh, "aaa")==0 && strcmp(hao.mi, "123")==0)

什么意思啊?
我只回答:结构体里是能够有函数的.默认权限为public
sorry.