| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 905 人关注过本帖
标题:数组中的一个棘手问题
只看楼主 加入收藏
panrui0512
Rank: 1
等 级:新手上路
帖 子:20
专家分:3
注 册:2014-1-11
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:10 
数组中的一个棘手问题
#include<stdio.h>
#define week_day 7
#define name_len 10
char weekday[week_day][name_len]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};
int main()
{
    char course_name[20];
    int days;
    char time[6];
    int i;
    scanf("%s",course_name);
    scanf("%s",&days);
    scanf("%s",time);
    for(i=0;i<week_day;i++)
        printf("%10s",weekday[i]);
    printf("\n%s",time);
    for(i=0;i<10*days;i++)
        printf(" ");
    printf("%s\n",course_name);
    return 0;}
能不能逐句分析一下,有点不理解
搜索更多相关主题的帖子: include 
2014-02-26 17:50
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
哪里不理解

动辄就逐句分析  谁有那么多时间啊

DO IT YOURSELF !
2014-02-26 17:57
wu2782641803
Rank: 2
等 级:论坛游民
帖 子:65
专家分:46
注 册:2013-10-28
收藏
得分:0 
char weekday[week_day][name_len]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};
  请教这句什么意思??是定义周一到周日的字符串吗?
2014-02-26 19:53
ljx小子
Rank: 8Rank: 8
来 自:星星
等 级:蝙蝠侠
威 望:2
帖 子:222
专家分:916
注 册:2013-10-7
收藏
得分:0 
这是常值列举,就是输入的变量从这里搜索。。。

。。。。。。。。。。。
2014-02-26 21:51
panrui0512
Rank: 1
等 级:新手上路
帖 子:20
专家分:3
注 册:2014-1-11
收藏
得分:0 
非常抱歉,时间匆忙忘记说了,主要是char weekday[week_day][name_len]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};和 for(i=0;i<10*days;i++)这两句,后一句为什么10*days
2014-02-26 22:14
神机军师
Rank: 7Rank: 7Rank: 7
来 自:游鱼潜水
等 级:黑侠
威 望:2
帖 子:202
专家分:542
注 册:2013-12-21
收藏
得分:8 
回复 5楼 panrui0512
说下第一个了,第二个因为水平不够,一下没看出来这个程序是干嘛用的

在下面这个语句里面:

char weekday[week_day][name_len]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};

因为有前面的宏定义:
#define week_day 7
#define name_len 10
所以你应该理解为:
char weekday[7][10]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};

很明显了,这是定义了一个七行十列的字符数组(是个二维数组),等号后面的花括号是对weekday这个char型二维数组的初始化:很明显七行里面,每一行是存的一个字符串,该字符串最大长度不超过10(加上字符串结束标志'\0')。
"Sunday" 你可以理解为{'S','u','n','d','a','y','\0'}每个元素都是个字符,包括最后的'\0'。
也就是在weekday里面weekday[0][0]='S'  weekday[0][1]='u' ...... weekday[0][6]='\0'
然后就轮到"Monday"了,它是以 weekday[1][0]='M'开头的。
这时候 weekday[0][7]到weekday[0][9]没有说初始化为什么,一般是默认为0的。
即:
char weekday[7][10]={  {'S','u','n','d','a','y','\0'              },
                       {'M','o','n','d','a','y','\0'              },
                       {'T','u','e','s','d','a','y','\0'          },
                       {'W','e','d','n','e','s','d','a','y','\0'  },
                       {'T','h','u','r','s','d','a','y','\0'      },
                       {'F','r','i','d','a','y','\0'              },
                       {'S','a','t','u','d','r','a','y','\0'      }           };

未知令人期待!
2014-02-26 23:37
蓝桥
Rank: 2
等 级:论坛游民
帖 子:18
专家分:22
注 册:2014-2-26
收藏
得分:2 
第二个scanf语句中的格式控制符应是%d吧,days是整型变量
2014-02-27 00:00
zhu_zhi
Rank: 2
来 自:广西百色
等 级:论坛游民
帖 子:129
专家分:92
注 册:2013-4-25
收藏
得分:0 
不知所云!
2014-02-27 11:33
panrui0512
Rank: 1
等 级:新手上路
帖 子:20
专家分:3
注 册:2014-1-11
收藏
得分:0 
这是这个程序的要求:要求用户输入一个代表课程名称的字符串,表示星期几的整数以及表示该课程上课节次串,输出该节次对应的课程表
2014-02-27 13:08
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
楼主的代码没看懂

自己试着写了一个

不知道是否是类似的

没放代码  只把效果图放过来了
程序代码:
E:\ctest\t5\Debug>t5
语文 1 2 3 4 5
数学 5 1 2 3 4
外语 4 5 1 2 3
物理 3 4 5 1 2
化学 2 3 4 5 1
自习 6 6 6 6 6
自习 7 7 7 7 7

//以上是输入部分
//以下是输出部分

      周一    周二    周三    周四    周五

 1    语文    数学    外语    物理    化学

 2    化学    语文    数学    外语    物理

 3    物理    化学    语文    数学    外语

 4    外语    物理    化学    语文    数学

 5    数学    外语    物理    化学    语文

 6    自习    自习    自习    自习    自习

 7    自习    自习    自习    自习    自习



DO IT YOURSELF !
2014-02-27 16:48
快速回复:数组中的一个棘手问题
数据加载中...
 
   



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

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