基于visual Studio2013解决C语言竞赛题之1093连接链表
题目
解决代码及点评
#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 * Init93()
{
STU * p=(STU *)malloc(sizeof(STU));
if (p==NULL)
{
return NULL;
}
else
p->next=NULL;
return p;
}
void Insert93(STU * head,int num,char * name)
{ STU * last=head;
if (last==NULL)
{
return;
}
while(last->next!=NULL)
last=last->next;
STU *p=(STU *)malloc(sizeof(STU));
if (p==NULL)
{
return;
}
else
{
p->num=num;
strcpy_s(p->name,name);
last->next=p;
p->next=NULL; }
}
void DeleteNode93(STU* pre,STU *cur)
{
pre->next=cur->next;
free(cur);
}
void printfNodes93(STU *head)
{
STU *p=head->next;
while(p!=NULL)
{
printf("%5d",p->num);
p=p->next;
}
printf("\n");
}
void main()
{
STU * A=Init93();
Insert93(A,10,"abc");
Insert93(A,30,"abc");
Insert93(A,90,"abc"); STU * B=Init93();
Insert93(B,45,"abc");
Insert93(B,100,"abc"); printfNodes93(A);
printfNodes93(B);
STU * p1=A->next;
STU * p2=B->next;
STU * tempp=A;
STU * tempB=NULL;
int flag=1;
while(p1!=NULL&&p2!=NULL)
{
while (p1->num<p2->num&&p1!=NULL)
{
if (p1->next==NULL&&p2!=NULL)
{
p1->next=p2;
flag=0;
break;
}
if (p2==NULL)
{
flag=0;
break;
}
p1=p1->next;
tempp=tempp->next;
} if (flag==0)
{
break;
}
tempB=p2->next;
tempp->next=p2;
p2->next=p1;
p2=tempB;
}
printfNodes93(A);
//printfNodes93(B);
system("pause");
}
代码编译以及运行
由于资源上传太多,资源频道经常被锁定无法上传资源,同学们可以打开VS2013自己创建工程,步骤如下:
1)新建工程
2)选择工程
3)创建完工程如下图:
4)增加文件,右键点击项目
5)在弹出菜单里做以下选择
6)添加文件
7)拷贝代码与运行
程序运行结果
代码下载
http://download.csdn.net/detail/yincheng01/6681845
解压密码:c.itcast.cn
基于visual Studio2013解决C语言竞赛题之1093连接链表的更多相关文章
- 基于visual Studio2013解决C语言竞赛题之0808打印链表
题目
- 基于visual Studio2013解决C语言竞赛题之1012连接字符串
题目 解决代码及点评 /* 编写一个函数JOIN,让它实现字符串连接运算功能. */ #include <stdio.h> #include <stdl ...
- 基于visual Studio2013解决C语言竞赛题之0810链表去重
题目
- 基于visual Studio2013解决C语言竞赛题之1092链表转换
题目 解决代码及点评 /************************************************************************/ /* ...
- 基于visual Studio2013解决C语言竞赛题之0401阶乘
题目 解决代码及点评 这个是一道经典的教科书题目,基本上每本基础的c/c++语言教科书都会有这个题目 用来演示循环语句 #include <stdio.h> #include ...
- 基于visual Studio2013解决C语言竞赛题之0205位数求和
题目
- 基于visual Studio2013解决C语言竞赛题之0201温度转换
题目 解决代码及点评 #include <stdio.h> #include <stdlib.h> void main() { float f; float c; float ...
- 基于visual Studio2013解决C语言竞赛题之0409 100以内素数
题目 解决代码及点评 在已经知道素数是怎么判断的基础上,增加循环,可以判断出100以内的素数 /******************************************* ...
- 基于visual Studio2013解决C语言竞赛题之0408素数
题目 解决代码及点评 判断一个数是不是素数的方法,一般是看n是不是能被n以内的某个整数(1除外)整除 为了提高效率,这个整数范围一般缩小到n的平方根 如果在这个范围内的整数都不能整除,那么 ...
随机推荐
- Python 模块(五)
目录 模块介绍 time &datetime模块 random json & picle 一.模块介绍 在我们日常的程序开发过程中,随着代码越写越多,在单个文件里的代码就会越来越长,越 ...
- MVC中Controller里写alert的问题
controller: Viewbag.a=true; 页面中 @if(Viewbag.a!=null) { <script> alert('XXX'); </script> ...
- polling轮询和comet
comet:(原意:彗星) Comet is a web application model in which a long-held(held:保留) HTTP request allows a w ...
- 基于visual Studio2013解决算法导论之042单源最短路径
题目 单源最短路径 解决代码及点评 // 26单源最短路径bellmanford.cpp : 定义控制台应用程序的入口点. // #include <iostream> #incl ...
- 通过sharedpreference两个程序共享数据
一.整体工程图 二.SharePreferenceWriteActivity.java package org.ourunix.android.sharepreferencewrite; i ...
- 同步内核缓冲区 sync、fsync和fdatasync函数
同步内核缓冲区 1.缓冲区简单介绍 人生三大错觉之中的一个:在调用函数write()时,我们觉得该函数一旦返回,数据便已经写到了文件里.可是这样的概念仅仅是宏观上的.实际上.操作系统实现某些文件I/O ...
- 动画api说明
1.Animation的API参考文档:http://blog.csdn.net/harvic880925/article/details/40117115 2.动画插值器的参考: http://bl ...
- EXT.NET高效开发(三)——使用Chrome浏览器的开发人员工具
这篇帖子老少皆宜,不分男女,不分种族,不分职业.俗话说:“磨刀不误砍柴工”.掌握一些开发工具的使用,对自己帮助是很大的(无论是用于分析问题,还是提高生产力).本篇就讲述如何利用Chrome浏览器(这里 ...
- 13 - NSURLConnection
一.互联网 基本概念: HTTP协议 统一标准获取网络资源(其他设备上的东西) 本机 -> 远程服务器(计算机) URL(http有格式的字符串) 本机 <- 远程服务器(计算机) Fil ...
- Jquery学习笔记:通过层次关系获取jquery对象
前面一篇文章,我们介绍了如何通过web标签的id , css样式值来获取jquery对象. 但这只是基本方法,不能满足所有场景的需求. 本文介绍通过dom元素之间的层次关系获取元素.具体是将各种标识符 ...