基于visual Studio2013解决C语言竞赛题之1049抓牌排序






题目


解决代码及点评

/*
功能:插入排序。许多玩牌的人是以这样的方式来对他们手中的牌进行排序的:设手中原有3张牌已排好序,抓1张新牌,若这张新牌的次序在原来的第2张牌之后,第3张牌之前,那么就把这张新牌放在第3张牌的位置上,原来的第3张改为第4张,然后再抓新牌。按着这个算法,编写一个排序程序。注:开始一张牌也没有,从第一张牌开始抓起。时间:23:34 2013/10/24
*/#include<stdio.h>
#include<stdlib.h>struct card
{int num;struct card *pNext;
};typedef struct card CARD;CARD *initList(int);						//链表初始化声明,第一张牌
void insertList(CARD *p,int n);				//在第i个元素后插入
void showAll(CARD *p);void main()
{CARD *pHead=initList(2);			//头结点创建,next=NullinsertList(pHead,4);insertList(pHead,3);insertList(pHead,1);showAll(pHead);system("pause");
}void showAll(CARD *p)
{do {printf("%d \n",p->num);} while((p->pNext!=NULL) && (p=p->pNext));
}void insertList(CARD *p,int n)
{CARD *pNew=(CARD *)malloc(sizeof(CARD));	//分配新结点if(pNew==NULL)return;if(n<p->num)				//判断n是否小于头结点 如果小于,将头结点的值与n交换{int temp=p->num;p->num=n;n=temp;}CARD *Prior=p;				//用来保存前结点while(n>p->num && p->pNext!=NULL)			//当n大于当前结点时,指针向后移,知道小于当前结点或next为NULL时终止{Prior=p;				//循环结束后,为当前结点的前结点p=p->pNext;}if(n<p->num)				//当n<小于当前结点,则在当前结点前插入n{Prior->pNext=pNew;pNew->pNext=p;pNew->num=n;}if(p->pNext==NULL && n>p->num)				//假设牌码最大,则在链表尾部插入{p->pNext=pNew;pNew->pNext=NULL;pNew->num=n;}}
CARD *initList(int n)
{CARD *p=(CARD *)malloc(sizeof(CARD));if(p==NULL)return NULL;			//分配失败返回空p->num=n;p->pNext=NULL;return p;
}


代码编译以及运行

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

1)新建工程

2)选择工程

3)创建完工程如下图:

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

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

6)添加文件

7)拷贝代码与运行


程序运行结果


代码下载

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

解压密码:c.itcast.cn







转载于:https://www.cnblogs.com/new0801/p/6177435.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/377458.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

学习Lucene笔记一:创建索引

public class HelloLucene {/*** 建立索引* param args*/public void index(){IndexWriter writer null; try {//1.创建Directory,// Directory directory new RAMDirectory();//索引是建立在内存中的Directory directory FSDirectory.open(new File("D:/Lucene/ind…

【C++进阶】C++创建文件/屏幕输出流类(将信息同时输出到文件和屏幕)

在软件的调试技术中&#xff0c;很重要的一个技术是将软件运行过程中的一些信息写入到“日志文件”中。但是同时还要将信息显示到屏幕上&#xff0c;以方便程序员实时查看这些信息。 最简单的一种办法是这样的&#xff1a; std::ofstream output("debug.log", ios::…

五、加载数据集

之前写过加载数据集的一些小笔记&#xff0c;这里详细内容就不再叙述了 详细学习可以参考该博文二、PyTorch加载数据 一、分析 因为U-net网络架构是输入1通道&#xff0c;大小为(572,572)的灰度图&#xff0c;图片大小无所谓&#xff0c;我的思路是将三通道的图像使用OpenCV进…

CDMA的完整形式是什么?

CDMA&#xff1a;码分多址 (CDMA: Code Division Multiple Access) CDMA is an abbreviation of Code Division Multiple Access. Code Division Multiple Access is a digital cellular technology and displays a network of multiple accesses. The various radio communica…

BCD码与十进制的相互转换

BCD码是用每四位代替一位十进制数&#xff08;0 到 9 的某一位数&#xff09; 例如&#xff1a;0x25 就代表25 十六进制的每位转换成二进制代表四个位。 下面是bcd转char short int long c语言程序 //************************************************************…

DSP关于存储器读写、IO读写时序图的注意点

这里的存储器图不涉及插入等待周期。 IO设备的图可以自行减去插入等待周期&#xff0c;然后观察。 存储器读读写 存储器写写读 I/O设备读写操作

折腾430 launchpad

launchpad到手也已经很长时间了&#xff0c;团购了一个g2的&#xff0c;一个铁电的&#xff0c;现在马上又要来一个g2的&#xff0c;感觉手上的东西太多了&#xff0c;急需消化一下&#xff0c;首先呢还是先把430搞定吧。 ---------------------------------------------------…

oem模式是什么_OEM的完整形式是什么?

oem模式是什么OEM&#xff1a;原始设备制造商 (OEM: Original Equipment Manufacturer) OEM is an abbreviation of "Original Equipment Manufacturer". Its meaning has changed over time. In former times, it alluded to a corporation that manufactures produ…

妈了个巴卡

配置文件修改&#xff1a; 一、打开PC端微信&#xff0c;打开咩了个咩小程序&#xff0c;点进入第一关&#xff0c;之后再关掉小程序 二、PC端微信设置里面&#xff0c;找到管理文件&#xff0c;打开文件夹 三、Applet下按修改日期找到a9结尾的文件 四、接着进入\usr\gamecac…

java中Iterator的小程序

import java.util.Collection; import java.util.HashSet; import java.util.Iterator;public class TestIterator {public static void main(String[] args){Collection booksnew HashSet();books.add("java讲义");books.add("java的Ajax宝典");books.add…

【C++进阶】利用重载二元运算符改进平面向量类Vec2D

先前回顾 在【C进阶】 遵循TDD原则&#xff0c;实现平面向量类(Vec2D)中我们初步实现了Vec2D内容&#xff0c;现在做出一定的改进&#xff1a; 实现Vec2D的一半二元算数运算符重载 1、 - (两个Vec2D对象运算以及1个Vec2D对象与一个double数运算) 2、*(点乘和数乘) 同时将之前…

在SQL中使用DEFAULT约束

DEFAULT constraint is used to insert default value into a column on a table and if no any value is stored in any place of a column then default value will be added into it. DEFAULT约束用于将默认值插入到表的列中&#xff0c;如果列的任何位置均未存储任何值&…

(ios7) 解决代码布局View, ios7 中 subView 高度增加StatusBar20dp的问题,保证Ios6,ios7代码一致...

在ios7 布局中&#xff0c;Status Bar 和 ToolBar &#xff0c;NavigateBar 等都包含在ViewControl的主View中。 这样原来ios6 的View布局 整体向上移动了20dp&#xff0c;下面是保证ios6,ios7代码一致的解决方案 1 第一步 在项目的Info.plist 文件中 添加一行属性配置 View co…

简单的群体测试方案C++代码(Group testing against Covid-19)

原理参考链接 https://www.econstor.eu/handle/10419/221811 http://www.magigen.com/h-nd-348.html 文章原理回顾 文章比较了两种估计人群中病毒流行率的方法&#xff1a; 1、个体测试&#xff0c;即对12000人的样本进行病毒测试&#xff0c;并采用标准二项测试得出95%的置…

使用WinDbg和VMware调试NDIS中间层驱动程序 (转)

使用WinDbg和VMware调试NDIS中间层驱动程序 我这里将一步一步的介绍&#xff0c;是从新手的角度来讲的&#xff0c;所以对高手来说&#xff0c;可能有些啰嗦。如果你看完这篇文章还不知道如何设置&#xff0c;那么原因可能有两个&#xff1a;1. 我没讲好&#xff1b;2. 你需要稍…

c语言字符常量和字符串常量_C语言中的字符常量

c语言字符常量和字符串常量Any character (a single character) that is enclosed within the single quotes (like, A) is called character constants in C programming language. 用单引号引起来的任何字符(单个字符)(例如A ) 在C编程语言中称为字符常量 。 Character cons…

DDOS小测试

一、F12打开开发者工具&#xff0c;刷新待攻击的网站&#xff0c;重新获得一次请求 二、user-agent为浏览器的合法标识符 user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36 是键值对的形式&…

Scrum轻松之旅_人员

Product owner产品负责人 职责&#xff1a;确定产品功能 确定产品发布日期 为产品收益率负责 根据商业价值确定功能优先级 接受或拒绝Team的开发成果 Scrum master教练 Team团队转载于:https://www.cnblogs.com/charles-x/archive/2012/06/14/2549943.html

群体测试中的假阴性影响

群体测试中的假阴性比个体测试中的假阴性风险要大得多。如果一组样本被感染&#xff0c;该组中的每个样本都可能被感染。因此&#xff0c;如果该受感染池的检测结果为假阴性&#xff0c;则该结果表明池中的每个人都没有感染。此外&#xff0c;在群体试验中混合样本会使受感染的…

融合注意力机制的YOLOv5火焰识别+Arduino UNO R3实现5s内连续识别到火焰,警报灯红灯亮起

效果&#xff1a;摄像头捕获室内图像&#xff0c;将视频实时通过串口通讯传递给改进之后的YOLOv5神经网络进行火焰识别&#xff0c;若5s内连续检测到有火焰&#xff0c;警报灯变红&#xff0c;进入危险状态。5s之内未连续出现火焰&#xff0c;警报灯变绿&#xff0c;进入安全状…