求大神,哪里錯了?
#include<stdio.h>
int main()
{
const char *week[7]={"Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"};
int n;
printf ("請輸入一個數字l:\n");
scanf ("%d", &n);
if (n>=1 && n<=7) printf ("星期%d的英文名是%s", n,*week[n-1]);
else printf ("數字無效\n");
return 0;
?}?
用[]運算符做地址偏移,用*運算符取內容,程序出錯,哪里錯了?
2018-11-24
#include?<stdio.h> int?main() {???? ????const?char?*week[7]={"Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"};???? ????int?n;???? ????printf?("請輸入一個數字:\n");???? ????scanf?("%d",?&n);???? ????if?(n>=1?&&?n<=7)?printf("星期%d的英文名是%s\n",?n,?week[n-1]);???? ????else?printf?("數字無效\n");???? ????return?0; }2017-01-15
輸出結果的時候不能用*week[n-1],而應該用week[n-1]。因為你需要輸出的是一個字符串,而不是一個指針。