| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1289 人关注过本帖
标题:结构体问题
只看楼主 加入收藏
fengyinxqy
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2020-5-2
结帖率:92.31%
收藏
已结贴  问题点数:10 回复次数:1 
结构体问题
编写程序,定义教师信息的结构体类型,成员包括工资卡号、姓名、性别、出生年月(年/月)、婚姻状态(未婚/已婚/离异,采用共用体类型表示)以及工作部门等。输入教师信息并输出。
程序代码:
#include <stdio.h>
#include <math.h>
struct teacher
{
    int gznum;                    /* 工资卡号 */
    char name[20];               /* 姓名 */
    int sex;                     /* sex=1(男),0(女) */
    int year,month;             /* 出生年月 */
    union marriage
    {
        char marriage[20];
    }u1,u2;
}teachers;
int main() 
{
    printf("Enter gznum:\n");
    scanf("%d",&teachers.gznum);
    printf("Enter name:\n");
    scanf("%s",&teachers.name[20]);
    printf("Enter sex(1/0):\n");
    scanf("%d",&teachers.sex);
    printf("Enter born of year-month:\n");
    scanf("%d-%d",&teachers.year,&teachers.month);

    printf("%d\t%s\t%d\t%d-%d\t%d\n",teachers.gznum,teachers.name[20],teachers.sex,teachers.year,teachers.month,teachers.u1.marriage[20]);
    return 0;
} 


上面是我的代码,不知道哪里错了,输出不了,才开始学结构体,还不是太会。
搜索更多相关主题的帖子: scanf name Enter 结构体 printf 
2020-05-23 12:59
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9031
专家分:54061
注 册:2011-1-18
收藏
得分:10 
scanf("%s",&teachers.name[20]);
改为
scanf("%s",teachers.name);

printf("%d\t%s\t%d\t%d-%d\t%d\n",teachers.gznum,teachers.name[20],teachers.sex,teachers.year,teachers.month,teachers.u1.marriage[20]);
改为
printf("%d\t%s\t%d\t%d-%d\t%s\n",teachers.gznum,teachers.name,teachers.sex,teachers.year,teachers.month,teachers.u1.marriage);

其它没仔细看
2020-05-23 13:32
快速回复:结构体问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.040811 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved