鱼C论坛

 找回密码
 立即注册
查看: 2463|回复: 9

运行起来总是有问题,大家帮忙看看吧

[复制链接]
发表于 2013-10-18 22:58:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 、__乔夜 于 2013-10-18 23:17 编辑

#include <stdio.h>

struct
{
      int num;
      char name[10];
      char sex;
      char job;
      union
      {
            int clas;
            char position[10];
      }type;   
}person[2];

int main()
{

      int i;
      for(i=0;i<2;i++)
      {

            printf("请输入号码:");
            scanf("%d",&person.num);

            
printf("请输入姓名:");
            scanf("%s",&person.name);

            printf("请输入性别:");
            scanf("%c",&person.sex);

            printf("请输入职业:");
            scanf("%c",&person.job);   //这样为什么会出错?!!

            if(person.job=='s')
            {
                  printf("请输入班级:");
                  scanf("%d",&person.type.clas);
            }else
            {
                  if(person.job=='t')
                  {
                        printf("请输入职位:");
                        scanf("%s",person.type.position);
                  }else
                  {
                        printf("输入错误!");
                  }
            }
      }
      printf("\n");
      printf("No.   name     sex job class/position\n");
      for(i=0;i<2;i++)
      {
            if(person.job=='s')
            {
                  printf("%-6d%-10s%-4c%-4c%-10d\n",person.num,person.name,
                        person.sex,person.job,person.type.clas);
            }else
            {
                  printf("%-6d%-10s%-4c%-4c%-10s\n",person.num,person.name,
                        person.sex,person.job,person.type.position);
            }

      }
      return 0;
}
ET~27S52G1VON$A@)MCIBRU.jpg
为什么每次输入到“请输入姓名”的时候就直接跳到“请输入职业”啊?:cry
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-10-19 00:28:02 | 显示全部楼层

回帖奖励 +1 鱼币

你居然没报错我复制过去编译下近20个错误
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-10-19 08:46:58 | 显示全部楼层

回帖奖励 +1 鱼币

#include <stdio.h>

struct
{
        int num;
        char name[10];
        char sex;
        char job;
       
        union
        {
                int clas;
                char position[10];
        }type;
       
}person;//定义错误,不是person[2].

int main()
{
        int i;
        for(i=0;i<2;i++)
        {
                printf("请输入号码:");
                scanf("%d",&person.num);
               
                printf("请输入姓名:");
                scanf("%s",&person.name);
               
                printf("请输入性别:");
                scanf("%c",&person.sex);
               
                printf("请输入职业:");
                scanf("%c",&person.job);   //这样为什么会出错?!!
               
                if(person.job=='s')
                {
                        printf("请输入班级:");
                        scanf("%d",&person.type.clas);
                }
                else
                {
                        if(person.job=='t')
                        {
                                printf("请输入职位:");
                                scanf("%s",person.type.position);
                        }
                        else
                        {
                                printf("输入错误!");
                        }
                }
        }
        printf("\n");
        printf("No.   name     sex job class/position\n");
       
        for(i=0;i<2;i++)
        {
                if(person.job=='s')
                {
                        printf("%-6d%-10s%-4c%-4c%-10d\n",person.num,person.name,
                                person.sex,person.job,person.type.clas);
                }
                else
                {
                        printf("%-6d%-10s%-4c%-4c%-10s\n",person.num,person.name,
                                person.sex,person.job,person.type.position);
                }
               
        }
        return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-10-26 22:09:53 | 显示全部楼层

回帖奖励 +1 鱼币

太多英文,看不懂
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-12-14 18:13:03 | 显示全部楼层

回帖奖励 +1 鱼币

多去了解一下scanf在用它吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-12-14 21:02:14 | 显示全部楼层

回帖奖励 +1 鱼币

结构体里面有共用体,类似于柔性数组
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-13 16:05:39 | 显示全部楼层

回帖奖励 +1 鱼币

混鱼币的~~~~~~~~~~~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-14 17:32:48 | 显示全部楼层

回帖奖励 +1 鱼币

混鱼币的~~~~~~~~~~~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-6-30 15:20:29 | 显示全部楼层

回帖奖励 +1 鱼币

还没学到这里,来拿奖励!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-6-30 16:21:36 | 显示全部楼层

回帖奖励 +1 鱼币

#include <stdio.h>

typedef struct person {
        int num;
        char name[10];
        char sex;
        char job;
        
        union 
        {
                int clas;
                char position[10];
        }type;
        
}Person,*ptr_person;




int 
main() {
        Person person;
        ptr_person s=&person;
        int i;
        printf("请输入号码:");
        scanf("%d",&person.num);
                
        printf("请输入姓名:");
        scanf("%s",s->name);
                
        printf("请输入性别:");
        scanf("%s",&person.sex);
                
        printf("请输入职业:");
        scanf("%s",&person.job);  
                
        if(person.job=='s')
             {
                     printf("请输入班级:");
                     scanf("%d",&(person.type.clas));
                }
        else
             {
                  if(person.job=='t')
                       {
                                printf("请输入职位:");
                                scanf("%s",person.type.position);
                        }
                   else
                        {
                                printf("输入错误!\n");
                        }
                
        
        printf("\n");
        printf("No.   name     sex job class/position\n");
        
             if(person.job=='s')
                {
                         printf("%-6d%-10s%-4c%-4c%-10d\n",person.num,person.name,
                                person.sex,person.job,person.type.clas);
                }
                else
                {
                        printf("%-6d%-10s%-4c%-4c%-10d\n",person.num,person.name,
                                person.sex,person.job,s->type.clas);
                }
                
        }
        return 0;
}
你输入2次干嘛,都是同一个结构体,不是自取其辱么??
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-28 09:04

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表