Here is a recursive version.
bool isSorted(const Cell* L)
{
if(L == NULL) return true;
else if(L->next == NULL) return true;
else if(L->item >= L->next->item) return false;
else return isSorted(L->next);
}
Here is a looping version.
bool isSorted(const Cell* L)
{
if(L == NULL) return true;
const Cell* p = L;
while(true)
{
if(p->next == NULL) return true;
else if(p->item >= p->next->item) return false;
else p = p->next;
}
}