题目

解决代码及点评


/************************************************************************/
/*
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. sizeof,终极无惑(上)

    0. 前向声明 sizeof,一个其貌不扬的家伙,引无数菜鸟竟折腰,小虾我当初也没少犯迷糊,秉着“辛苦我一个,幸福千万人”的伟大思想,我决定将其尽可能具体的总结一下. 但当我总结的时候才发现,这个问题 ...

  2. Service初步了解

    1.Service什么 Service它是一个应用程序组件,Android其中的四个核心组件之间 Service没有图形界面 通过经常使用来处理一些比较长耗时的操作 可以使用Service更新Cont ...

  3. ThinkPHP - 关联模型 - 一对多

    使用之前,先引入文件夹,否则相应的功能不能实现. 如果对thinkPHP不精通,使用或开发的时候,最好直接使用完成版本的ThinkPHP. 关系模型定义: <?php /** * 继承自 Rel ...

  4. 配置greenplum参数

    在进行一个greenplum安装之前需要进行配置一下相关的系统参数,否则很容易出现意想不到的错误. 1.修改系统参数 编辑 /etc/sysctl.conf ,以下是最小配置 kernel.shmma ...

  5. Codeforces 489A SwapSort

    这题第一次看的时候以为是区间替换,后来发现看错了,只是单纯的元素替换. 解题思路: 先对输入的序列加个数组排个序 遍历下来,如果和排序后的结果当前元素不同,设当前位置为 i, 则往下面找,设查找位置为 ...

  6. glog另启动线程写文本日志

    glog本身是很高效的,google的大牛肯定知道大规模的写日志用glog的话肯定会影响业务线程的处理,带负荷的磁盘IO谁都桑不起.比方levelDB就是默认异步写,更不用说google的三驾马车都是 ...

  7. hdu 2276 Kiki & Little Kiki 2

    点击打开hdu 2276 思路: 矩阵快速幂 分析: 1 题目给定一个01字符串然后进行m次的变换,变换的规则是:如果当前位置i的左边是1(题目说了是个圆,下标为0的左边是n-1),那么i就要改变状态 ...

  8. App状态管理-AppDelegate

    前面提到AppDelegate的实例在UIApplicationMain函数中被创建并调用. AppDelegate的主要作用,可以从其继承类可以看出 class AppDelegate:UIResp ...

  9. CSS - 解决使用浮动,父窗体不能撑高问题

    浮动的父级元素一定要用 clear 清除浮动,否则高度会无法撑开.

  10. android一个页面上多个listview

    android一个页面上多个listview,在滚动的时候,需要两个listview能够一起滚动,看起来是一个view. 这个功能的具体实现,参考: http://blog.csdn.net/xia2 ...