应届生求职网小程序
查看: 7388|回复: 0
打印 上一主题 下一主题

[笔试] 搜狐面试一题

[复制链接]

主题

好友

1万

积分

世界首富

跳转到指定楼层
发表于 2008-9-22 15:21 |显示全部楼层 |正序浏览

搜狐面试的题目,临时写了这个程序,今天拿出来和大家分享,希望能有助于大家找到好的工作。

1. 编程,将一个链表倒序。#include<stdio.h>
#include<malloc.h>
typedef struct LinkList
{
int d;
struct LinkList *next;
}Lnode;

//链表倒序

void Daoxu(Lnode **Head)
{
Lnode *q,*p,*r,*l;
p=*Head;
q=p->next;
p->next=NULL;
while(q)
{
r=q->next;
q->next=p;
p=q;
q=r;
}
*Head=p;
l=*Head;
while(l)
{
printf("%d\n",l->d);
l=l->next;
}
}

//建立头结点

void Init(Lnode **Head)
{
*Head=(Lnode *)malloc(sizeof(Lnode));
(*Head)->next=NULL;
(*Head)->d=0;//假设头结点中存储的数据是0.
}

//建立链表,输入-1退出链表
void Link(Lnode **Head)
{
Lnode *p,*q;
int i;
do{
p=(Lnode*)malloc(sizeof(Lnode));
scanf("%d",&i);
if(i==-1)
break;
p->d=i;
p->next=NULL;
q=*Head;
while(q->next)
q=q->next;
q->next=p;
}while(1);
}
void main()
{
Lnode *Head,*q;
Init(&Head);
Link(&Head);
q=Head;
while(q)
{
printf("%d\n",q->d);
q=q->next;
}
printf("\n\n");
Daoxu(&Head);
}

   这个程序是在VC6.0下已经编译通过了,本程序是本人手写,思路是:建立头结点,创建链表,链表倒序。可能存在这样那样的问题,但是我觉的应付面试应该没有什么大的问题。

 

+10
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册 QQ登录

本版积分规则

关闭

站长推荐上一条 /1 下一条

应届生微信小程序|应届生求职网YingJieSheng.COM ( 沪ICP备12015550号-13 )

GMT+8, 2024-12-1 20:35

Powered by Discuz!

© 2001-2012 Comsenz Inc.

快速回复 返回顶部 返回列表