qq2672909406 2020-03-02 20:16 采纳率: 100%
浏览 504
已采纳

C语言关于if语句不被读取的编程问题

struct record
{
char code[LEN+1];
char name[LEN+1];
int age;
char sex[3];
char time[LEN+1];
char add[30];
char tel[LEN+1];
char mail[30];
char group[1];
} stu[N];
while( 1 )
{
c=getch();
if(c>='1'&&c<='4')
break;
}
if(c=='1')
{ printf("%s",stu[0].group);
for(i=0; i<n; i++)
{
if(stu[i].group=='1')
printf("233");
printf("%s %s %d %s %s %s %s\n",stu[i].code,stu[i].name,stu[i].age,
stu[i].sex,stu[i].time,stu[i].add,stu[i].tel);
}
}
if(c=='2')
{
for(i=0; i<n; i++)
{
if(stu[i].group=='2')
printf("%s %s %d %s %s %s %s\n",stu[i].code,stu[i].name,stu[i].age,
stu[i].sex,stu[i].time,stu[i].add,stu[i].tel);
}

    求教char c和stu[i].group相同,for可以被读取但是if语句无法被读取,
    可以问一下大神这个是什么情况嘛?

    我的结构体中group的定义为 char group[1];
    我如果删除[1],这段代码就无法运行,无法被读取与我的定义有关系嘛?
  • 写回答

2条回答 默认 最新

  • shifenglv 2020-03-02 21:44
    关注

    你这个读取是什么意思呢?是if(stu[i].group=='2')这句判断有问题吗。group你定义为char group,是没有问题的,你要是定义为char group[1],那你后面的引用stu[i].group[0]=='1'。你把全部代码放出来看看

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同