编写算法将表中所有值为奇数的元素加100。

已知线性表{a0,a1,……,an-1}元素按链式存储,且每个元素都是不相等的整数。编写算法将表中所有值为奇数的元素加100。
例如L=(1,2,3,4,5,6,7,8)
操作后变为L=(101, 2,103, 4,105, 6,107, 8)

遍历链表所有节点,判断元素是奇数则加100就行了

#include <stdio.h>
typedef struct _linknode
{  
    int data;
    _linknode *next;
}linknode,*linklist;

void create(llinklist s)
{
    linklist p = s;
    for(int i=1;i<=8;i++)
    {
        linklist q = (linklist)malloc(sizeof(linknode));
        q->next = NULL;
        q->data = i;
        p->next = q;
        p = q;
    }
}

void add(linklist s)
{
    linklist p = s->next;
    while(p != NULL)
    {
        if(p->data % 2 == 1)
            p->data += 100;
        p = p->next;
    }
}
void print(linklist s)
{
    linklist p = s->next;
    while(p != NULL)
    {
        printf("%d ",p->data);
        p = p->next;
    } 
}

int main()
{
    linknode node;
    create(&node);
    add(&node);
    print(&node);
    return 0;
}