PTA
1. 输出月份英文名
1.实验代码
char *getmonth( int n ){
switch(n)
{
case 1:return "January";
case 2:return "February";
case 3:return "March";
case 4:return "April";
case 5:return "May";
case 6:return "June";
case 7:return "July";
case 8:return "August";
case 9:return "September";
case 10:return "October";
case 11:return "November";
case 12:return "December";
default:return NULL;
}
}
2.设计思路
设置switch语句,输入数字,则输出对应的月份英文名称。
3.提交列表
4.本题调试过程碰到问题及解决办法
无
2.查找星期
int getindex( char *s ) {
char day[7][MAXS]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};
int i;
for(i=0;i<7;i++) {
if(strcmp(*(day+i),s)==0)
return (i);
}
if(i==7)
return (-1);
}
3.计算最长的字符串长度
int max_len( char *s[], int n )
{
int i,l=0;
for(i=0;i<n;i++)
{
if(l<strlen(*(s+i)))
{
l=strlen(*(s+i));
}
}
return l;
}
4.指定位置输出字符串
char *match( char *s, char ch1, char ch2 )
{
int i=0,j=0;
char *p=NULL;
for(i=0;*(s+i)!=' ';i++)
{
if(s[i]==ch1)
{
p=&s[i];
for(j=i;*(s+j)!=' ';j++)
{
if(s[j]!=ch2)
{
printf("%c", s[j]);
}
if(s[j]==ch2)
{
printf("%c
", s[j]);
return p;
}
}
printf("
");
return p;
}
}
if(s[i] == ' ')
p = &s[i];
printf("
");
return p;
}
学习总结和进度
1、总结两周里所学的知识点,回答下列问题?(用自己的话表达出你的理解,网上复制粘贴没有分数)(5分)
(1)如何理解指针数组,它与指针、数组有何关系?为何可以用二级指针对指针数组进行操作?
(2)将C高级第三次PTA作业(1)任何一个题目改为使用二级指针对指针数组进行操作。
(3)用指针数组处理多个字符串有何优势?可以直接输入多个字符串给未初始化的指针数组吗?为什么?
有点懵,不太会,在同学的帮助下做了作业。