题目

解决代码及点评


/************************************************************************/
/*
92. 编程把链表(1)变成链表(2)。
head
(1) data next data next data next 记录1 记录2 记录3 data next data next 记录4 记录5 head
(2) data next data next data next 记录1 记录2 记录3 data next data next 记录4 记录5 */
/************************************************************************/
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h> typedef struct student STU;
struct student
{
int num;
char name[10];
struct student * next;
};
STU * Init92()
{
STU * p=(STU *)malloc(sizeof(STU));
if (p==NULL)
{
return NULL;
}
else
p->next=NULL;
return p;
}
STU * Insert92(STU * head,int num,char * name)
{ STU * last=head;
if (last==NULL)
{
return NULL;
}
while(last->next!=NULL)
last=last->next;
STU *p=(STU *)malloc(sizeof(STU));
if (p==NULL)
{
return NULL;
}
else
{
p->num=num;
strcpy_s(p->name,name);
last->next=p;
p->next=NULL;
return p; }
}
void DeleteNode92(STU* pre,STU *cur)
{
pre->next=cur->next;
free(cur);
}
void printfNodes92(STU *head)
{
STU *p=head->next;
do
{
printf("%5d",p->num);
p=p->next;
} while (p!=head->next); printf("\n");
}
void main()
{
STU * A=Init92();
Insert92(A,1,"abc");
Insert92(A,2,"abc");
Insert92(A,3,"abc");
Insert92(A,4,"abc");
STU*p= Insert92(A,5,"abc");
p->next=A->next;
printfNodes92(A);
STU* a;STU* b;STU*c;
a=A->next;
b=a->next;
c=b->next;
STU * temp=A->next->next;
do
{
b->next=a;
a=b;
b=c;
c=c->next;
} while (b!=temp);
printfNodes92(A); system("pause");
}

代码编译以及运行

由于资源上传太多,资源频道经常被锁定无法上传资源,同学们可以打开VS2013自己创建工程,步骤如下:

1)新建工程

2)选择工程

3)创建完工程如下图:

4)增加文件,右键点击项目

5)在弹出菜单里做以下选择

6)添加文件

7)拷贝代码与运行

程序运行结果

代码下载

http://download.csdn.net/detail/yincheng01/6681845

解压密码:c.itcast.cn






基于visual Studio2013解决C语言竞赛题之1092链表转换的更多相关文章

  1. 基于visual Studio2013解决C语言竞赛题之0809链表排序

     题目

  2. 基于visual Studio2013解决C语言竞赛题之0201温度转换

    题目 解决代码及点评 #include <stdio.h> #include <stdlib.h> void main() { float f; float c; float ...

  3. 基于visual Studio2013解决C语言竞赛题之0306分数转换

      题目 解决代码及点评 根据题目要去,我们可以通过if实现该功能,伪代码如下: if(a > 90) print 'A' else if(a>80) print 'b' else ...

  4. 基于visual Studio2013解决C语言竞赛题之0810链表去重

     题目

  5. 基于visual Studio2013解决C语言竞赛题之1069链表查找删除

        题目 解决代码及点评 /* 功能:建立一个链表,每个结点包括:学号.姓名.性别.年龄.输入一个年龄,如果链表中的结点所包含的年龄等于此年龄, 将此结点删除,输出最后的链表. 时 ...

  6. 基于visual Studio2013解决C语言竞赛题之1071打印工资

        题目 解决代码及点评 /************************************************************************/ /* ...

  7. 基于visual Studio2013解决C语言竞赛题之0401阶乘

      题目 解决代码及点评 这个是一道经典的教科书题目,基本上每本基础的c/c++语言教科书都会有这个题目 用来演示循环语句 #include <stdio.h> #include ...

  8. 基于visual Studio2013解决C语言竞赛题之0205位数求和

     题目

  9. 基于visual Studio2013解决C语言竞赛题之0409 100以内素数

       题目 解决代码及点评 在已经知道素数是怎么判断的基础上,增加循环,可以判断出100以内的素数 /******************************************* ...

随机推荐

  1. MiddleGenIDE工具的使用

    1. MiddleGenIDE工具            1) 先在网上下载MiddleGenIDE工具.能够參考这里 http://blog.csdn.net/wangcunhuazi/articl ...

  2. float 覆盖元素的问题

    <span class="right-span"><a href="/xxx/" class="btn">增加Ser ...

  3. IF的使用

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  4. jquery倒计时自动跳转

    刚开始我用下面这种方法一直报错,不知是什么原因,就是多加了页面加载时调用这个方法,还请高手看到后小小留言解惑

  5. 基于visual Studio2013解决算法导论之051区间树

     题目 区间树 解决代码及点评 #include <stdio.h> #include <string.h> #include <iostream> #def ...

  6. Axis2(7):将Spring的装配JavaBean发布成WebService

    在现今的Web应用中经常使用Spring框架来装载JavaBean.如果要想将某些在Spring中装配的JavaBean发布成WebService,使用Axis2的Spring感知功能是非常容易做到的 ...

  7. 使用gson(一)

    1.数组和json的转换 package com.test.gson; import com.google.gson.Gson; public class ArrayToJson { public s ...

  8. HDOJ 1005

    Input The input consists of multiple test cases. Each test case contains 3 integers A, B and n on a ...

  9. IOS Notification 通知中心

    1.     通知中心概述 通知中心实际上是在程序内部提供了消息广播的一种机制.通知中心不能在进程间进行通信.实际上就是一个二传手,把接收到的消息,根据内部的一个消息转发表,来将消息转发给需要的对象. ...

  10. IntelliJ IDEA 开发swing(一)

    原文:idea开发swing(一) 最近项目组需要开发一个swing小工具,以下是开发过程. 一.创建工程: 输入工程名称,选择java module,点击next 接下来什么都不选点击finish, ...