第三次作业

6.1 输出月份英文名

1.设计思路:

定义字符串数组将12个月的英文加进去,判断输入是不是大于等于1小于等于12,若是 则返还s[n-1],如果不是返还NULL;

2.源代码:

char *getmonth( int n ) { char *s[12]={"January","February","March","April","May","June","July","August","September","October","November","December"};

if(n>=1&&n<=12)

return s[n-1];

else

return NULL;

}

3.流程图

6.2 查找星期

1.设计思路:

定义整数i,字符串长为7将星期几加入,使用for循环令i=0,i<7,i++,判断若s与a[i]比后为0,返回1,返回-1;

源代码:

int getindex( char *s ) { int i; char *a[7]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};

for(i=0;i<7;i++)

{

if(strcmp(s,a[i])==0)

return i;

}
    return -1;

}

错误:将返回值-1,放入for循环里。

改正:将-1拿出for循环。

流程图:

6.3 计算最长的字符串长度

1.设计思路:定义三个整数max,i,a使max=0,用for循环令i=0,i<n,i++,令a的字符等于s[i],判断若max<a,则将a赋给max,返还max;

源代码:int max_len( char *s[], int n )

{

int i;

int a,max=0;

for(i=0;i<n;i++)

{

a=strlen(s[i]);

if(max<a)

max=a;

}

return max;

}

错误:不会strlen。

流程图

posted @ 2018-04-22 23:56  刘传海  阅读(130)  评论(0编辑  收藏  举报