zoukankan      html  css  js  c++  java
  • 第三次作业

    输出月份英文名
    设计思路:
    定义整形变量n,通过switch语句,判断每一条语句,如果是就按数字输出月份,否则执行default,输出NULL,然后按要求返回主函数并输出。
    实验代码:
    ...
    char *getmonth(int n)
    {
    char *a[12]={"January","February","March","April","May","June","July","August","September","October","November","December"};
    int i;
    for(i=0;i<=12;i++)
    {
    if(i==0)

       {
        continue;
       }else if (i==n)
       {
        return a[i-1];
       }
    }
    if(n<=0||n>=13)
    {
        return NULL;
    }
    

    }
    ...
    调试过程:
    本题的调试过程中没有遇到问题。
    查找星期
    设计思路:
    将一个星期每天的英文分别赋值给一维数组指针,定义一个整型变量,赋初值为-1,遍历一维数组,用strmcp函数比较数组中每行元素与输入的字符串是否相同,若相同,则令此时的行数等于一开始定义的整型变量,跳出循环,返回整型变量值。
    实验代码:
    ...
    int getindex( char *s )
    {
    int c=-1,a;
    char *week[7]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};
    for(a=0;a<7;a++)
    {
    if(strcmp(s,week[a])==0)
    {
    c=a;
    break;
    }
    }
    return c;
    }
    ...
    调试过程:
    在调试过程中没有遇到问题。
    计算最长的字符长度
    设计思路:
    遍历数组,运用strlen函计算出每行元素的长度,在for循环中进行比较,定义int型max,赋初值为0,当行元素的长度大于max,则将长度的值赋给max,返回max的值。
    实验代码:
    ...

    include <stdio.h>

    include <string.h>

    include <stdlib.h>

    define MAXN 10

    define MAXS 20

    int max_len( char s[], int n )
    {
    int max=0,j=0,len=0;
    for(j=0;
    (s+j)!='';j++)
    {
    len=strlen((s+j));
    if(max<len)
    {
    max=len;
    }
    }
    return max;
    }
    ...
    调试过程:
    本题的调试过程没有问题。
    奇数值结点链表:
    设计思路:
    本题的解题过程是完全依靠大佬的帮助。
    实验代码:
    ...
    struct ListNode readlist() {
    int number;
    struct ListNode p = NULL,head = NULL,
    tail = NULL;
    scanf("%d",&number);
    while(number!=-1 && number>0 )
    {
    p = (struct ListNode
    )malloc(sizeof(struct ListNode));
    p->data = number;
    if(head == NULL)
    {
    head = p;
    } else
    {
    tail->next = p;
    }
    tail = p;
    scanf("%d",&number);
    }
    if(head == NULL)
    {
    return NULL;
    }
    tail->next = NULL;
    return head;
    }
    struct ListNode getodd( struct ListNode **L )
    {
    struct ListNode p = L,head1 = NULL,r = NULL,
    L1 = NULL,*r1 = NULL;
    while(p!=NULL && p->data>0)
    {
    if(p->data%2!=0)
    {
    if(head1 == NULL)
    {
    head1 = p;
    } else
    {
    r->next = p;
    }
    r = p;
    } else
    {
    if(L1 NULL)
    {
    L1 = p;
    } else
    {
    r1->next = p;
    }
    r1 = p;
    }
    p = p->next;
    }
    if(head1
    NULL)
    {
    return NULL;
    } else
    {
    r->next = NULL;
    }
    if(L1==NULL)
    {
    *L = NULL;
    } else {
    r1->next = NULL;
    *L = L1;
    }
    return head1;
    }
    ...
    调试过程:
    本题的调试过程中是依靠某大佬的帮助。
    本周学习内容总结:
    本周院里的活动属实太多,没有给学习分配足够多的时间,所以并没有做的很好,在活动陆续结束后,进行状态的整改。
    折线图:

  • 相关阅读:
    【设计模式】 五大原则
    RFC
    Linux虚拟服务器--LVS
    Git fast forward提交
    Fighting regressions with git bisect---within git bisect algorithm
    Git bare repo with multiple branches
    英特尔和Red Hat合作实现Gnome桌面的Wayland支持
    如何成为一个Linux内核开发者
    Terminal emulator
    bootstrap基础学习【网格系统】(三)
  • 原文地址:https://www.cnblogs.com/jz19990201/p/8909827.html
Copyright © 2011-2022 走看看