标签:循环 输出 比较 info 字符串长度 ril 维数 mon efault
第一步:通读题目,根据输入的数字输出相应的月份的英文单词
第二步:应用switch语句进行输出
char *getmonth( int n )
{
switch (n){
case 1:return "January";break;
case 2:return "February";break;
case 3:return "March";break;
case 4:return "April";break;
case 5:return "May";break;
case 6:return "June";break;
case 7:return "July";break;
case 8:return "August";break;
case 9:return "September";break;
case 10:return "October";break;
case 11:return "November";break;
case 12:return "December";break;
default:return NULL;
}
}
错误信息1:switch后面忘记加n
改正方法:复习switch语句
第一步:通读题目,找到解体方法
第二步:定义一个二维数组存放星期的英文单词字符串,利用for循环来遍历数组,利用strcmp来进行比较,有一个问题,如果一直没有发现与之相同的字符串,则i会哦一直加到7然后跳出循环,所以当i=7时是一定要跳出循环的
int getindex(char *s)
{
int i;
char day[7][10] = { "Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday" };
for (i = 0; i <= 6; i++)
{
if (strcmp(s, day[i]) == 0) break;
}
if (i == 7) i = -1;
return i;
}
错误信息:试图使用第一题的算法,使用switch语句。
改正方法:switch语句不能应用于字符串里面,使用字符数组
第一步:通读题目,找到解题思路
第二步:找到最长字符串长度,先令最大值为第一项的长度然后通过for循环进行遍历数组,将最大值与数组中的第二项至最后一项进行比较如果有出现比最大值大的就直接将值赋给最大值并返回
int max_len( char *s[], int n )
{
int i,a;
int max=strlen(s[0]);
for(i=1;i<n;i++){
a=strlen(*(s+i));
if(a>max)
max=a;
}
return max;
}
错误信息:
标签:循环 输出 比较 info 字符串长度 ril 维数 mon efault
原文地址:https://www.cnblogs.com/Lixinhua18/p/8810369.html