c语言关于指针数组的一个小问题
题目是:用0~6分别表示星期日至星期六,当输入其中的任意一个数字时,请输出对应的星期名。参考答案如下:#include<stdio.h>voidmain(){char*w...
题目是:用0~6分别表示星期日至星期六,当输入其中的任意一个数字时,请输出对应的星期名。
参考答案如下:
#include<stdio.h>
void main(){
char *weekname[7]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};
int week;
printf("input week No:");
scanf("%d",&week);
if(week>=0&&week<7)
printf("week No:%d-->%s\n",week,weekname[week]); //weekname[]数组是指针数组,输出时为什么不加星号呢---> printf("week No:%d-->%s\n",week,*weekname[week]);
else
printf("input error!\n");
}
这个程序运行没有问题,但里面注释的那一行代码我有点疑问,如果是 *weekname[week] 运行时就有问题了。望高手为我说明一下啊 展开
参考答案如下:
#include<stdio.h>
void main(){
char *weekname[7]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};
int week;
printf("input week No:");
scanf("%d",&week);
if(week>=0&&week<7)
printf("week No:%d-->%s\n",week,weekname[week]); //weekname[]数组是指针数组,输出时为什么不加星号呢---> printf("week No:%d-->%s\n",week,*weekname[week]);
else
printf("input error!\n");
}
这个程序运行没有问题,但里面注释的那一行代码我有点疑问,如果是 *weekname[week] 运行时就有问题了。望高手为我说明一下啊 展开
3个回答
TableDI
2024-07-18 广告
2024-07-18 广告
当我们谈到Python与Excel的拆分时,通常指的是使用Python的库来读取Excel文件中的数据,然后根据某种逻辑(如按行、按列、按特定值等)将数据拆分成多个部分或输出到新的Excel文件中。上海悉息信息科技有限公司在处理这类任务时,...
点击进入详情页
本回答由TableDI提供
展开全部
char *weekname[7]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};
是定义一个指针数组,该数组每个元素是一个指向字符串常量的指针,输出时是按%s格式输出,只需提供字符串常量的首地址即可,即数组元素的值。
是定义一个指针数组,该数组每个元素是一个指向字符串常量的指针,输出时是按%s格式输出,只需提供字符串常量的首地址即可,即数组元素的值。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
字符数组,输出的时候是不需要*的,如果你加上*的话只会输出数组的第一个元素,不如sunday,这个的话,只会输出s
更多追问追答
追问
加上*没有输出s,而是调试时出现了错误需要中断调试
追答
*weekname这样的话做输出的时候输出的是
weekname[week]这个代表的是一个字符串对吧,*weekname[week]输出的应该是数组第week个字符串的第一个字符,不如说week=0;那么*weekname[week]应该输出s
*weekname这个样子的话就代表的是该数组的第一个元素,weekname就代表数组第一个元素的地址
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询