qq_41933131 2021-09-06 20:15 采纳率: 85.7%
浏览 55
已结题

c语言中的指针数组、结构体、二维数组使用错误

img


#include<stdio.h>
struct month{
    char name[20];
    char shor[20];
    int day;
    int num;
};
int main(){
    struct month year[13];
    char dd[20][20]={"January","February","March","April","June","July","August","September","October","November","December"};
    char *cc[20]={"Jan","Feb","Mar","Apr","Jun","Jul","Aug","Sep","Oct","Nov","Dec"};
    int i, j;
    for(i=1;i<=12;i++){
        year[i].day=30;
        year[i].num=i;
        year[i].shor=*cc[i-1];
        year[i].name=dd[i-1][20];
    }
    for(j=1;j<=12;j++){
        printf("%s,%s,%d,%d\n",year[j].name,year[j].shor,year[j].num,year[j].day);
    }
    return 0;
}

报错信息(Dev-c++5.11)
In function 'main':
16 15 [Error] assignment to expression with array type
17 15 [Error] assignment to expression with array type

  • 写回答

2条回答 默认 最新

  • Pliosauroidea 2021-09-06 20:23
    关注

    用strcpy
    (什么小天才,怎么十二个月的简称你就写了十一个,,五月怎么被吃了)
    有帮助望采纳

    
    #include <stdio.h>
    #include <string.h>
    struct month
    {
        char name[20];
        char shor[20];
        int day;
        int num;
    };
    int main()
    {
        struct month year[13];
        char dd[20][20] = {"January", "February", "March", "April", "June", "July", "August", "September", "October", "November", "December"};
        char *cc[20] = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
        int i, j;
        for (i = 1; i <= 12; i++)
        {
            year[i].day = 30;
            year[i].num = i;
            // year[i].shor = *(cc[i - 1]);
            strcpy(year[i].shor, cc[i - 1]);
            // year[i].name = dd[i - 1][20];
            strcpy(year[i].name, dd[i - 1]);
        }
        for (j = 1; j <= 12; j++)
        {
            printf("%s,%s,%d,%d\n", year[j].name, year[j].shor, year[j].num, year[j].day);
        }
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月26日
  • 已采纳回答 9月18日
  • 创建了问题 9月6日

悬赏问题

  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)
  • ¥20 matlab yalmip kkt 双层优化问题
  • ¥15 如何在3D高斯飞溅的渲染的场景中获得一个可控的旋转物体
  • ¥88 实在没有想法,需要个思路
  • ¥15 MATLAB报错输入参数太多
  • ¥15 python中合并修改日期相同的CSV文件并按照修改日期的名字命名文件
  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图