文档库 最新最全的文档下载
当前位置:文档库 › 2011年吉林省C++语言版入门

2011年吉林省C++语言版入门

1、给定n个村庄之间的交通图,若村庄i和j之间有道路,则将顶点i和j用边连接,边上的Wij表示这条道路的长度,现在要从这n个村庄中选择一个村庄建一所医院,问这所医院应建在哪个村庄,才能使离医院最远的村庄到医院的路程最短?试设计一个解答上述问题的算法,并应用该算法解答如图所示的实例。(20分)

2、约瑟夫环问题(Josephus问题)是指编号为1、2、…,n的n(n>0)个人按顺时针方向围坐成一圈,现从第s个人开始按顺时针方向报数,数到第m个人出列,然后从出列的下一个人重新开始报数,数到第m的人又出列,…,如此重复直到所有的人全部出列为止。现要求采用循环链表结构设计一个算法,模拟此过程。

#include

typedef int datatype;

typedef struct node

{datatype data;

struct node *next;

}listnode;

typedef listnode *linklist;

void jose(linklist head,int s,int m)

{linklist k1,pre,p;

int count=1;

pre=NULL;

k1=head; /*k1为报数的起点*/

while (count!=s) /*找初始报数起点*/

{pre=k1;

k1=k1->next;

count++;

}

while(k1->next!=k1) /*当循环链表中的结点个数大于1时*/

{ p=k1; /*从k1开始报数*/

count=1;

while (count!=m) /*连续数m个结点*/

{ pre=p;

p=p->next;

count++;

}

pre->next=p->next; /*输出该结点,并删除该结点*/

printf("%4d",p->data);

free(p);

k1=pre->next; /*新的报数起点*/

}

printf("%4d",k1->data); /*输出最后一个结点*/

free(k1);

}

main()

{linklist head,p,r;

int n,s,m,i;

printf("n=");

scanf("%d",&n);

printf("s=");

scanf("%d",&s);

printf("m=",&m);

scanf("%d",&m);

if (n<1) printf("n<0");

else

{/*建表*/

head=(linklist)malloc(sizeof(listnode)); /*建第一个结点*/

head->data=n;

r=head;

for (i=n-1;i>0;i--) /*建立剩余n-1个结点*/

{ p=(linklist)malloc(sizeof(listnode));

p->data=i;

p->next=head;

head=p;

}

r->next=head; /*生成循环链表*/

jose(head,s,m); /*调用函数*/

}

}

3、4、void LinkList_reverse(Linklist &L)

//链表的就地逆置;为简化算法,假设表长大于2

{

p=L->next;q=p->next;s=q->next;p->next=NULL;

while(s->next)

{

q->next=p;p=q;

q=s;s=s->next; //把L的元素逐个插入新表表头

}

q->next=p;s->next=q;L->next=s;

}//LinkList_reverse

4、题目中要求矩阵两行元素的平均值按递增顺序排序,由于每行元素个数相等,按平均值排列与按每行元素之和排列是一个意思。所以应先求出各行元素之和,放入一维数组中,然后选择一种排序方法,对该数组进行排序,注意在排序时若有元素移动,则与之相应的行中各元素也必须做相应变动。

void Translation(float *matrix,int n)

//本算法对n×n的矩阵matrix,通过行变换,使其各行元素的平均值按递增排列。

{int i,j,k,l;

float sum,min; //sum暂存各行元素之和

float *p, *pi, *pk;

for(i=0; i

{sum=0.0; pk=matrix+i*n; //pk指向矩阵各行第1个元素.

for (j=0; j

*(p+i)=sum; //将一行元素之和存入一维数组.

}//for i

for(i=0; i

{min=*(p+i); k=i; //初始设第i行元素之和最小.

for(j=i+1;j

if(i!=k) //若最小行不是当前行,要进行交换(行元素及行元素之和)

{pk=matrix+n*k; //pk指向第k行第1个元素.

pi=matrix+n*i; //pi指向第i行第1个元素.

for(j=0;j

{sum=*(pk+j); *(pk+j)=*(pi+j); *(pi+j)=sum;}

sum=p[i]; p[i]=p[k]; p[k]=sum; //交换一维数组中元素之和.

}//if

}//for i

free(p); //释放p数组.

}// Translation

[算法分析] 算法中使用选择法排序,比较次数较多,但数据交换(移动)较少.若用其它排序方法,虽可减少比较次数,但数据移动会增多.算法时间复杂度为O(n2).

C语言-基础教程-C语言整型数据

C语言-基础教程-C语言整型数据 考试大计算机等级站整理: 2.3.1 整型常量 整型常量及整常数。它可以是十进制、八进制、十六进制数字表示的整数值。十进制常数的形式是: d i g i t s s 这里d i g i t s可以是从0到9的一个或多个十进制数位,第一位不能是0。八进制常数的形式是: 0 d i g i t s s 在此,d i g i t s可以是一个或多个八进制数(0~7之间),起始0是必须的引导符。 十六进制常数是下述形式: 0 x h d i g i t s0 X h d i g i t s 这里h d i g i t s可以是一个或多个十六进制数(从0~9的数字,并从"a"~" "f"的字母)。 引导符0是必须有的,X即字母可用大写或小写。注意,空白字符不可出现在整数数字之间。表2 - 3列出了整常数的形式。 整常数在不加特别说明时总是正值。如果需要的是负值,则负号"-"必须放置于常数表达式的前面。 每个常数依其值要给出一种类型。当整常数应用于一表达式时,或出现有负号时,常数类型自动执行相应的转换,十进制常数可等价于带符号的整型或长整型,这取决于所需的常数的尺寸。 八进制和十六进制常数可对应整型、无符号整型、长整型或无符号长整型,具体类型也取决于常数的大小。如果常数可用整型表示,则使用整型。如果常数值大于一个整型所

能表示的值,但又小于整型位数所能表示的数,则使用无符号整型。同理,如果一个常数比无符号整型所表示的值还大,则它为长整型。如果需要,当然也可用无符号长整型。 在一个常数后面加一个字母l或L,则认为是长整型。如1 0 L、7 9 L、0 1 2 L、0 11 5 L、0 X A L、0 x 4 f L等。 2.3.2 整型变量 前面已提到,C规定在程序中所有用到的变量都必须在程序中指定其类型,即"定义"。这是和B A S I C、F O RT R A N不同的,而与P a s c a l相似。 运行结果为: R U N a u=22, b u=-1 4 可以看到不同类型的整型数据可以进行算术运算。在本例中是i n t型数据与unsingned int型数据进行相加减运算。

Object-C 经典入门教程

Object-C 入门教程 分类:Sip&asterisk2009-05-04 16:34 16409人阅读评论(2) 收藏举报大纲 o开始吧下载这篇教学 o设定环境 o前言 o编译 hello world o创建 Classes@interface o@implementation o把它们凑在一起 o详细说明...多重参数 o建构子(Constructors) o访问权限 o Class level access o异常情况(Exceptions)处理 o继承、多型(Inheritance, Polymorphism)以及其他面向对象功 能id 型别 o继承(Inheritance) o动态识别(Dynamic types) o Categories o Posing o Protocols o内存管理Retain and Release(保留与释放) o Dealloc o Autorelease Pool o Foundation Framework ClassesNSArray o NSDictionary ?优点与缺点 ?更多信息 开始吧 下载这篇教学 ?所有这篇初学者指南的原始码都可以由objc.tar.gz下 载。这篇教学中的许多范例都是由 Steve Kochan 在 Programming in Objective-C. 一书中撰写。如果你想得到更 多详细信息及范例,请直接参考该书。这个网站上登载的所有 范例皆经过他的允许,所以请勿复制转载。 设定环境 ?Linux/FreeBSD: 安装GNUStep为了编译 GNUstep

应用程序,必须先执行位于 /usr/GNUstep/System/Makefiles/GNUstep.sh 的 GNUstep.sh 这个档案。这个路径取决于你的系统环境, 有些是在 /usr, some /usr/lib,有些是/usr/local。 如果你的 shell 是以 csh/tcsh 为基础的 shell,则应 该改用 GNUStep.csh。建议把这个指令放在 .bashrc 或 .cshrc 中。 ?Mac OS X: 安装XCode ?Windows NT 5.X: 安装cygwin或mingw,然后安装 GNUStep 前言 ?这篇教学假设你已经有一些基本的 C 语言知识,包括 C 数 据型别、什么是函式、什么是回传值、关于指针的知识以及基 本的 C 语言内存管理。如果您没有这些背景知识,我非常建议 你读一读 K&R 的书:The C Programming Language(译注:台 湾出版书名为 C 程序语言第二版)这是 C 语言的设计者所写 的书。 ?Objective-C,是 C 的衍生语言,继承了所有 C 语言的特 性。是有一些例外,但是它们不是继承于 C 的语言特性本身。 ?nil:在 C/C++ 你或许曾使用过 NULL,而在 Objective-C 中则是 nil。不同之处是你可以传递讯息给 nil(例如 [nil message];),这是完全合法的,然而你却不能对 NULL 如法炮 制。 ?BOOL:C 没有正式的布尔型别,而在 Objective-C 中也不 是「真的」有。它是包含在 Foundation classes(基本类别库) 中(即 import NSObject.h;nil 也是包括在这个头文件内)。 BOOL 在 Objective-C 中有两种型态:YES 或 NO,而不是 TRUE 或 FALSE。 ?#import vs #include:就如同你在 hello world 范例中看 到的,我们使用了#import。#import 由 gcc 编译程序支援。 我并不建议使用 #include,#import基本上跟 .h 档头尾的 #ifndef #define #endif 相同。许多程序员们都同意,使用这 些东西这是十分愚蠢的。无论如何,使用 #import 就对了。这 样不但可以避免麻烦,而且万一有一天 gcc 把它拿掉了,将会 有足够的 Objective-C 程序员可以坚持保留它或是将它放回 来。偷偷告诉你,Apple 在它们官方的程序代码中也使用了 #import。所以万一有一天这种事真的发生,不难预料 Apple 将 会提供一个支持 #import 的 gcc 分支版本。 ?在 Objective-C 中, method 及 message 这两个字是可以 互换的。不过messages 拥有特别的特性,一个 message 可以 动态的转送给另一个对象。在Objective-C 中,呼叫对象上的 一个讯息并不一定表示对象真的会实作这个讯息,而是对象知 道如何以某种方式去实作它,或是转送给知道如何实作的对象。

51单片机C语言入门教程详细解说

单片机c语言入门 相信很多爱好电子的朋友,对单片机这个词应该都不会陌生了吧。不过有些朋友可能只听说他叫单片机,他的全称是什么也许并不太清楚, 更不用说他的英文全称和简称了。单片机是一块在集成电路芯片上集成了一台有一定规模的微型计算机。简称为:单片微型计算机或单片机 (Single Chip Computer)。单片机的应用到处可见,应用领域广泛,主要应用在智能仪表、实时控制、通信、家电等方面。不过这一切都没 什么关系,因为我(当然也包括任何人)都是从不知道转变成知道的,再转变成精通的。现在我只想把我学习单片机的经历,详细地讲叙给大 家听听,可能有些大虾会笑话我,想:那么简单的东西还在这里卖弄。但是你错了,我只是把我个人学习的经历讲述一遍而已,仅仅对那些想 学习单片机,但又找不到好方法或者途径的朋友,提供一个帮助,使他们在学习过程中,尽量少走些弯路而已! 首先,你必须有学习单片机的热情,不是说今天去图书馆看了一个下午关于单片机的书,而明天玩上半天,后天就不知道那个本书在讲什 么东西了。还是先说说我吧,我从大二的第一个学期期末的时候才开始接触单片机,但在这之前,正如上面所说的:我知道有种芯片叫单片机, 但是具体长成什么样子,却一点也不知道!看到这里很多朋友一定会忍不住发笑。嘿嘿,你可千万别笑,有些大四毕业的人也同样不知道单片 机长成什么样子呢!而我对单片机的痴迷更是常人所不能想象的地步,大二的期末考试,我全放弃了复习,每当室友拿着书在埋头复习的时候, 我却捧着自己从图书馆借的单片机书在那看,虽然有很多不懂,但是我还是坚持了下来,当时我就想过,为了单片机值不值得我这样去付出, 或许这也是在一些三流学校的好处吧,考试挂科后,明年开学交上几十元一门的补考费,应该大部分都能过了。于是,我横下一条心,坚持看 我的单片机书和资料。 当你明白了单片机是这么一回事的时候,显而易见的问题出来了:我要选择那种语言为单片机编写程序呢?这个问题,困扰了我好久。具 体选择C51还是A51呢?汇编在我们大二之前并没有开过课,虽然看着人家的讲解,很容易明白单片机的每一时刻的具体工作情况,但是一合上 书或者资料,自己却什么也不知道了,根本不用说自己写程序了。于是,我最终还是决定学C51,毕竟C51和我们课上讲的C语言,有些类似, 编程的思想可以说是相通的。而且C51还有更大的优点就是编写大程序时的优越性更不言而喻,当然在那时,我并没有想的那么深远,C51的特 点,还是在后来的实践过程中,渐渐体会到的!朋友如果你选择了C51,那么请继续往下看,如果你选择了A51,那么你可以不要看了!因为下面讲 的全是C方面的,完全在浪费你的时间! 呵呵^_^ 第二,既然你想学好单片机,你必须得舍得花钱,如果不买些芯片回来自己动手焊焊拆拆的(但是在后期会介绍给大家一个很好用的硬件 仿真软件,并不需要你用实验板和仿真器了,直接在你的PC上完成,但是软件毕竟是软件,从某个特定的意义上来说是并不能代替硬件的),即使

c入门教程笔记

第一次课(有课后哦)C#输出语句||类型的转换; E:\c#学习\作业\C#第一次课\258\作业和笔记\上机作业 1.*.csclass 类文件单独打开不可运行 *.csprojclassproject 项目文件打开只可以看到单个项目 *.sln 解决方案文件打开就可以看到所有的项目 *.suo 项目资源文件资源的路径保存在里面 2.用于在程序中,保存数据的一个容器 java:int,char,String,boolean,double C#:int,char,string,bool,doubledatetime 1.组成:字母,下划线,数字 2.开头:下划线或字母开头 3.不能是关键字 3.Console类:控制台类 作用:用于控制台数据的输入和输出 Console.Write("数据");向控制台输出数据--不换行输出 Console.WriteLine("数据");向控制台输出数据--换行输出 Console.WriteLine("格式化字符串",数据) //快捷键cw+两下tab Console.WriteLine(); 3.从控制台中获取数据 string变量=Console.ReadLine(); 数据类型转换有效的整数格式字符串->整数 “123”Yes“123abc”No

int变量=int.Parse(字符串) doubled=double.Parse("有效的double类型字符串"); 第二次课(有课后哦)数组||循环; E:\c#学习\作业\C#第二次课循环断点 switch结构java和C#的差别 switchjava C# 可有可无break break必须有 数组的定义 数据类型[]数组名称=new数据类型[长度] 例:整型的保存10个数字的数组 int[]arr=newint[10];//标准写法 int[]arr=newint[]{1,2,3,4,5,6,7…};//快速初始化int[]arr={1,2,3,4,5,6,7…};//同上 循环 while循环次数不确定的时候使用 for 循环次数确定的时候使用 所有数据类型基于object foreach:避免使用数组的下标 循环遍历数组取值的时候使用 foreach(varitemin数组名) { //item是迭代变量不能赋值 //var推算类型根据循环里面的数组的类型推算出来的。}

学习Objective-C入门教程(全)

学习Objective-C入门教程 1,前言 相信iPhone不久就要在国内发布了,和我们在国内可以通过正规渠道买得到的iPodTouch一样,iPhone也是一个激动人心的产品。iPhone发布的同时,基于iPhone的程序也像雨后春笋一样在iTunes里面冒出来。 你将来也许会考虑买一个iPhone,体验一下苹果的富有创意的种种应用;你也许会考虑向iTunes的社区的全世界的人们展示一下你非凡的创意,当然也可以通过你的创意得到一些意想不到的收益。 OK,你也许迫不及待的准备开发了。但是先等一下,让我们回忆一下最初的电影是怎么拍摄的。这个很重要,因为和iPhone的开发比较类似。 在最初因为器材比较原始,所以拍摄电影需要很高的技术,那个时候的电影的导演基本上是可以熟练操作摄影器材的人。随着器材的完善,使用也简单起来。于是器材的使用不是决定一个电影的质量的唯一的因素,取而代之的是故事或者说电影的创意。 iPhone的开发也是这样。当然从入门到掌握的过程来说任何事情都是开始比较难,随着掌握的程度的加深,你将会觉得开发iPhone应用程序是一件简单而且轻松的事情,到了那个时候,你的主要的制胜武器就不是开发技术,而是你的创意了。对于你来说,我在这里写的东西都是有关“摄影器材”也就是介绍如何使用iPhone的平台来开发应用程序。 iPhone的开发语言是Objective-C。Objective-C是进行iPhone开发的主要语言,掌握了Objective-C的基本语法以及数据结构之后,你需要熟悉一下iPhone的SDK。笔者很难做到在一篇文章里面把所有的东西都介绍清楚,所以笔者打算分成两个主题,一个是Objective-C,一个是iPhone开发。 本系列将侧重于Objective-C。当然,任何一种开发语言都无法脱离于运行环境,Objective-C也不例外。所以在本系列当中也会穿插的介绍一些SDK里面的一些特性,主要是数据结构方面,比如说NSString,NSArray等等。看到NSString,NSArray这些名词,你也许会感到有些茫然,不过没有关系,随着本系列的深入介绍,你会发现你非常喜欢这些东西。 1.1,谁会考虑阅读本系列 如果你对iPhone感兴趣,如果你考虑向全世界的人们展示你的创意,如果你有一颗好奇心,如果你打算通过开发iPhone程序谋生,如果你觉得苹果比Windows酷,如果你认为不懂苹果的话那么就有些不时尚的话,那么可以考虑阅读本系列。 老手也可以考虑花一点时间阅读一下,可以发帖子和笔者交流切磋。笔者发布的文章属于公益写作,旨在为大家介绍iPhone开发的一些基础知识,如果可以提供宝贵意见,笔者将不胜感激。 1.2,需要准备的东西 第一,你需要一台苹果电脑。当然这个不是必需的条件,如果你可以在你的IntelPC上成功安装MACOS的话,那么请忽略这一条。 第二,你需要去苹果网站上下载开发工具XCODE。注意,XCODE是完全免费的,但是需要你去注册一个账号才可以下载。由于XCODE不时的在更新,所以如果你的MACOS不支持你下载的XCODE的话,那么你也许需要考虑买一个最新的MACOS。

Objective-C基础教程(中文版)

Objective-C 本文主要介绍Objective-C的基本语法,传统的面向对象语言的封装,继承以及多态在Objective-C上会是什么样子。适合于熟悉面向对象编程的读者。 Objective-C:加强版的C? Objective-C是基于标准的ANSI C的一门面向对象语言。其语法和设计主要基于Sm alltalk,所以有些类似,而且支持标准的C语言语法。代码文件的类型有三种:[.h]头文件,[.m]C代码,[.mm]C++代码。定义了一种新的调用头文件的方法#im port,这样不会重复#include头文件,只在没有调用过的时候调用一次,类似于PHP的require_once。 最常用的数据类型:字符串NSString Objective-C将字符串数据类型定义成为Class,支持可变长度的字符串,支持Uni code等等一些实用的方法。通过使用@标志符,可以方便的由字符串常量定义NSString对象。下面给出一些定义NSString的代码实例。 NSString *string1 = @"const string"; NSString *string2 = [NSString stringWithFormat:@"%d %d %s", 1, 2, "hello string"]; 类(Class) 作为面向对象语言最基本也是最重要的数据类型,Objective-C当然不会不支持。Objective-C 定义类的特点在于先在.h头文件里定义接口,然后在.m代码文件里实现。 关于.h头文件的具体的语法看下面的图更直接一点。 关于.m代码文件的具体语法也请参考下面的图。

小甲鱼零基础入门学习C语言全套教程打包下载及在线观看

《零基础入门学习C语言》全套教程打 包下载及在线观看 至今小甲鱼仍然莫名其妙会受到这样的攻击,喜欢鱼C的朋友帮忙转载下吧,所有视频完全免费!不需要任何版权!尽量转,让那些狼心狗肺的家伙不能得逞! 您也可以通过以下链接捐助鱼C,一元捐助鱼C重建家园: 第八章_指针01 在线观看: 下载地址: 第八章_指针02 在线观看: 下载地址: 第八章_指针03 在线观看: 下载地址: 第八章_指针04 在线观看: 下载地址: 第八章_指针05 在线观看: 下载地址: 第八章_指针06 在线观看: 下载地址:

第八章_指针07 在线观看: 下载地址: 第八章_指针08 在线观看: 下载地址: 第八章_指针09 在线观看: 下载地址: 第九章_预处理01 在线观看: 下载地址: 第九章_预处理02 在线观看: 下载地址: 第九章_预处理03 在线观看: 下载地址: 第十章_结构体与共用体01在线观看: 下载地址: 第十章_结构体与共用体02在线观看: 下载地址: 第十章_结构体与共用体03在线观看: 下载地址:

第十章_结构体与共用体04在线观看: 下载地址: 第十章_结构体与共用体05在线观看: 下载地址: 第十章_结构体与共用体06在线观看: 下载地址: 第十章_结构体与共用体07在线观看: 下载地址: 第十一章_文件操作01 在线观看: 下载地址: 第十一章_文件操作02 在线观看: 下载地址: 第十一章_文件操作03 在线观看: 下载地址: 第十一章_文件操作04 在线观看: 下载地址: 第十二章_位运算01 在线观看: 下载地址:

第十二章_位运算02 在线观看: 下载地址: 通告: 1. 由于小甲鱼的免费视频影响到某些机构的盈利。鱼C官网于2011年8月21日遭遇无情的商业打击,主要被大量肉鸡以CC和DDOS流量等攻击。 对于我们这样的小网站来说,资金暂时没有能力购买足够的防御机制,因此鱼C 网站只能暂时被迫关闭!! 2. 迫于无奈,小甲鱼决定在鱼C官网和论坛正常恢复前,将所有的教程下载地址更新在腾讯空间和大家分享: 3. 面对邪恶势力,永不妥协!希望您如果是网站主或者某网站版主,您可以将小甲鱼的视频进行转载宣传。 对于VIP会员的特权,小甲鱼感到很愧疚,将以如下方式予以补偿: 1. 定期以 E-mail 的形式将最新的视频教程发到您的邮箱; 2. 定期将视频教程所用到的课件、工具、源代码发到您的邮箱; 3. 在论坛恢复前,VIP会员可以通过 E-mail 将您的疑问发送给小甲鱼,小甲鱼将每天抽出时间给您解答。

PocketC--入门基础教程

PocketC--入门基础教程 PocketC是PPC手机端的编程软件,PocketC软件其实很早就被开发出来了,比PY还早,只是没有人教,导致了PocketC的冷淡!要玩机不如玩点技术性的!PocketC语法简单,入门快速,我们开始学习吧! 【基础知识】 ☆☆☆☆☆☆☆☆☆☆☆☆☆☆ ┏┳┳┳┳┳┳┳┳┳┳┳┳┓ ═━┈1.前言┈━═ ═━┈2.准备篇┈━═ ═━┈3.如何编写代码┈━═ ═━┈4.变量┈━═ ═━┈5.数据类型┈━═ ═━┈6.运算符┈━═ ═━┈7.if 语句┈━═ ═━┈8.do while循环┈━═ ═━┈9.for 循环┈━═ ═━┈10.创建按键┈━═ ═━┈11.event()函数┈━═ ═━┈12.guiid()函数┈━═ ═━┈13.数组┈━═ ┗┻┻┻┻┻┻┻┻┻┻┻┻┛ ☆☆☆☆☆☆☆☆☆☆☆☆☆☆ PocketC的入门基础在这里告一段落,望大家把入门基础掌握以后再进入下一单元━━━━━━━PocketC基础进阶

主题:[1].前言--跟小羊学PPC端编程 跟小羊学PocketC--1.前言 从接触PocketC到现在已经2个月了,从最开始的一无所知到现在的略知一二,在无数的通宵达旦中也积累了一些经验。很多机友应该也很想提高一下玩机水平,写出个自己的软件。但是网上那些教程对于没有编程经验的人来说简直就是天书,因此写这篇适合新手入门,循序渐进的教程,可以让你像我这样从一无所知到略知一二。由于作者也是新手上路,教程中难免出现谬误,还望高手批评指正。 首先要敬告您一下,编程可是很累的事情,而且不可以心浮气躁,如果脾气不好,建议还是不学为妙! 如果您是才玩智能机,对智能机最基本的东西(例如,用文件管理器删除软件,怎么打标点符号,等等)还不太了解的话,建议您还是先学会基本的再来,所以,如果您在跟随本教程学习的时候对您的手机产生什么影响的话,还请不要怪我。 上面说了,学编程不可心浮气躁,要有耐心,如果你是新手,请一点一点看起,切不可跳级!如果作为一个新手,连编程最基本的知识都没有的话,那你一定是天才了,我还得拜你为师! 作为一个新手,如果你想跟我学习的话,请把每一篇教程都理解通透了再进入下个环节! 切记,静心,耐心,恒心,相信自己一定能会的,我就是这么来的! 有点啰索了,因为我文化低,表达能力不够强,大家见怪勿怪!本教程根据其它高手改编,感谢笨鸟兄,那么我们开始吧! 下一篇我们要进入准备阶段 主题:[2].准备--跟小羊学PPC端编程 跟小羊学PocketC--2.准备篇 要学编程就得有软件(废话),教程开始之前请先下载PocketC小羊修改版 注:本版本进一步汉化,修正编译软件后的菜单选项为英文!带小羊LOGO,不喜勿下 适合平台:理论支持WM5.0/WM6.0/WM6.1/WM6.5平台手机 推荐大家的ROM使用WM6.1的21112 WM6.5经常自动退出,不建议使用! 附上下载地址: PocketC小羊修正版 https://www.wendangku.net/doc/df15315682.html,/74/act/20090925/9/41257949.cab?dn=71E36660C90CB92A

(1小时学会C语言51单片机)C语言入门教程

相信很多爱好电子的朋友,对单片机这个词应该都不会陌生了吧。不过有些朋友可能只听说他叫单片机,他的全称是什么也许并不太清楚, 更不用说他的英文全称和简称了。单片机是一块在集成电路芯片上集成了一台有一定规模的微型计算机。简称为:单片微型计算机或单片机 (Single Chip Computer)。单片机的应用到处可见,应用领域广泛,主要应用在智能仪表、实时控制、通信、家电等方面。不过这一切都没 什么关系,因为我(当然也包括任何人)都是从不知道转变成知道的,再转变成精通的。现在我只想把我学习单片机的经历,详细地讲叙给大 家听听,可能有些大虾会笑话我,想:那么简单的东西还在这里卖弄。但是你错了,我只是把我个人学习的经历讲述一遍而已,仅仅对那些想 学习单片机,但又找不到好方法或者途径的朋友,提供一个帮助,使他们在学习过程中,尽量少走些弯路而已! 首先,你必须有学习单片机的热情,不是说今天去图书馆看了一个下午关于单片机的书,而明天玩上半天,后天就不知道那个本书在讲什 么东西了。还是先说说我吧,我从大二的第一个学期期末的时候才开始接触单片机,但在这之前,正如上面所说的:我知道有种芯片叫单片机, 但是具体长成什么样子,却一点也不知道!看到这里很多朋友一定会忍不住发笑。嘿嘿,你可千万别笑,有些大四毕业的人也同样不知道单片 机长成什么样子呢!而我对单片机的痴迷更是常人所不能想象的地步,大二的期末考试,我全放弃了复习,每当室友拿着书在埋头复习的时候, 我却捧着自己从图书馆借的单片机书在那看,虽然有很多不懂,但是我还是坚持了下来,当时我就想过,为了单片机值不值得我这样去付出, 或许这也是在一些三流学校的好处吧,考试挂科后,明年开学交上几十元一门的补考费,应该大部分都能过了。于是,我横下一条心,坚持看 我的单片机书和资料。 当你明白了单片机是这么一回事的时候,显而易见的问题出来了:我要选择那种语言为单片机编写程序呢?这个问题,困扰了我好久。具 体选择C51还是A51呢?汇编在我们大二之前并没有开过课,虽然看着人家的讲解,很容易明白单片机的每一时刻的具体工作情况,但是一合上 书或者资料,自己却什么也不知道了,根本不用说自己写程序了。于是,我最终还是决定学C51,毕竟C51和我们课上讲的C语言,有些类似, 编程的思想可以说是相通的。而且C51还有更大的优点就是编写大程序时的优越性更不言而喻,当然在那时,我并没有想的那么深远,C51的特 点,还是在后来的实践过程中,渐渐体会到的!朋友如果你选择了C51,那么请继续往下看,如果你选择了A51,那么你可以不要看了!因为下面讲 的全是C方面的,完全在浪费你的时间! 呵呵^_^ 第二,既然你想学好单片机,你必须得舍得花钱,如果不买些芯片回来自己动手焊焊拆拆的(但是在后期会介绍给大家一个很好用的硬件 仿真软件,并不需要你用实验板和仿真器了,直接在你的PC上完成,但是软件毕竟是软件,从某个特定的意义上来说是并不能代替硬件的),即使 你每天捧着本书,把那本书翻烂,也永远学不会单片机的!刚接触单片机的朋友,看了资料,一定会对以下几个词见的比较多,但是具体的概 念还是比较模糊,现作如下说明: (1)编程器编程器是用来烧单片机芯片的,是把HEX或者BIN文件烧到单片机ROM里

Objective-C基础教程(入门教程)

目录 开始 (1) 下载这篇教程 (1) 设定环境 (1) 前言 (1) 编译hello world (2) 创建classes (2) @interface (2) @implementation (2) 把他们组合在一起 (2) 详细说明 (1) 多个参数 (1) 构造子(Constructors) (2) 存取权限 (2) Class level access (2) 异常(Exceptions) (4) 继承、多态(Inheritance, Polymorphism)以及其他实体导向功能 (8) Id类型 (8) 继承(Inheritance) (12) 动态识别(Dynamic types) (15) Categories (17) Posing (20) Protocols (21) 内存管理 (26) Retain and Release(保留与释放) (26) Dealloc (27) Autorelease Pool (31) Foundation framework classes (33) NSArray (33) NSDictionary (35) 优点与缺点 (37) 优点 (37) 缺点 (37) 更多资讯 (37)

开始 下载这篇教程 所有这篇初学者指南的原始代码都可以在objc.tar.gz 下载。这篇教程中的许多反例都是由Steve Kochan 在Programming in Objective-C. 一书中撰写。如果你想得到更多详细资料及范例,请直接参考该书。本网站所刊登的所有范例都经过他的允许,所以请勿复制转载。 设定环境 Linux/FreeBSD:安装GNUStep 为了编译GNUstep的应用程序,必须先执行位于/usr/GNUstep/System/Makefiles/G NUstep.sh的GNUstep.sh这个文件。这个路径取决于你的系统环境,有些是在/usr, some /usr/lib,有些是/usr/local。如果你的shell 是以csh/tcsh为基础的shell, 则应该改用GNUStep.csh。建议把这个指令放在.bashrc或.cshrc中。 Mac OS X: 安装XCode Windows NT 5.X:安装cygwin或mingw,然后安装GNUStep 前言 这篇教程是建立在假设你已经有一些基本的C语言知识,包括C数据类型、什么是函数、设么是返回值、关于指针的知识以及基本的C语言内存管理。如果您没有这些背景知识,我非常建议你读一读K&R的书:The C Programming Language。这是C语言的设计者所写的书。 Objective-C是C的衍生语言,继承了所有C语言的特性,但是有一些例外,他们不是继承与C语言的特性本身的。 nil:在C/C++里你或许曾经使用过NULL,而在Objective-C中则是nil。不同之处是你可以传递消息给nil(例如[nil message]),这是完全合法的,但是你却不能对NULL做这样的操作。 BOOL:C没有正式的布尔类型,而在Objective-C中也不是“真的”有。它是包含在Fo undation classes(基础类库)中(即import NSObject.h,nil也是包括在这个头文件中的)。BOOL在Objective-C中有两种取值:YES或NO,而不C语言中的是TRUE或FALSE。 #import vs #include:就如同你在hello world范例中看到的,我们使用了#import。#i mport由gcc编译器支持。我并不建议使用#include,#import基本上跟.h头文件的#ifndef # define #endif 相同。许多程序员都同意,使用这些东西是非常愚蠢的。无论如何,使用#i mport就对了。这样不但可以避免麻烦,而且万一有一天gcc把它拿掉了,将会有足够的O bjective-C程序员可以坚持保留它或是将它放回来。偷偷告诉你,Apple在它们官方的程序代码中也使用了#import。所以万一有一天这种事真的发生,不难预料Apple 将会提供一个支持#import 的gcc 分支版本。

Objective-C_快速入门教程

Objective-C 快速入门教程 本文主要介绍Objective-C的基本语法,传统的面向对象语言的封装,继承以及多态在Objective-C上会是什么样子。适合于熟悉面向对象编程的读者。 Objective-C:加强版的C? Objective-C是基于标准的ANSI C的一门面向对象语言。其语法和设计主要基于Sm alltalk,所以有些类似,而且支持标准的C语言语法。代码文件的类型有三种:[.h]头文件,[.m]C代码,[.mm]C++代码。定义了一种新的调用头文件的方法#im port,这样不会重复#include头文件,只在没有调用过的时候调用一次,类似于PHP的require_once。 最常用的数据类型:字符串NSString Objective-C将字符串数据类型定义成为Class,支持可变长度的字符串,支持Uni code等等一些实用的方法。通过使用@标志符,可以方便的由字符串常量定义NSString对象。下面给出一些定义NSString的代码实例。 NSString *string1 = @"const string"; NSString *string2 = [NSString stringWithFormat:@"%d %d %s", 1, 2, "hello string"]; 类(Class) 作为面向对象语言最基本也是最重要的数据类型,Objective-C当然不会不支持。Objective-C 定义类的特点在于先在.h头文件里定义接口,然后在.m代码文件里实现。 关于.h头文件的具体的语法看下面的图更直接一点。 关于.m代码文件的具体语法也请参考下面的图。

C语言入门教程

51 单片机 C 语言入门教程(磁动力工作室) 51 单片机 C 语言学习杂记
学习单片机实在不是件易事,一来要购买高价格的编程器,仿真器,二来要学习编程语 言,还有众多种类的单片机选择真是件让人头痛的事.在众多单片机中 51 架构的芯片风行 很久,学习资料也相对很多,是初学的较好的选择之一.51 的编程语言常用的有二种,一 种是汇编语言,一种是 C 语言.汇编语言的机器代码生成效率很高但可读性却并不强,复 杂一点的程序就更是难读懂,而 C 语言在大多数情况下其机器代码生成效率和汇编语言相 当,但可读性和可移植性却远远超过汇编语言,而且 C 语言还可以嵌入汇编来解决高时效 性的代码编写问题.对于开发周期来说,中大型的软件编写用 C 语言的开发周期通常要小 于汇编语言很多.综合以上 C 语言的优点,我在学习时选择了 C 语言.以后的教程也只是 我在学习过程中的一些学习笔记和随笔,在这里加以整理和修改,希望和大家一起分享,一 起交流,一起学习,一起进步. *注:可以肯定的说这个教程只是为初学或入门者准备的,笔者本人也只是菜鸟一只, 有望各位大侠高手指点错误提出建议. 明浩 2003-3-30 pnzwzw@https://www.wendangku.net/doc/df15315682.html,
第一课 建立您的第一个 C 项目
使用 C 语言肯定要使用到 C 编译器,以便把写好的 C 程序编译为机器码,这样单片机 才能执行编写好的程序.KEIL uVISION2 是众多单片机应用开发软件中优秀的软件之一, 它支持众多不同公司的 MCS51 架构的芯片,它集编辑,编译,仿真等于一体,同时还支持, PLM,汇编和 C 语言的程序设计,它的界面和常用的微软 VC++的界面相似,界面友好,易 学易用,在调试程序,软件仿真方面也有很强大的功能.因此很多开发 51 应用的工程师或 普通的单片机爱好者,都对它十分喜欢. 以上简单介绍了 KEIL51 软件,要使用 KEIL51 软件,必需先要安装它.KEIL51 是一个 商业的软件,对于我们这些普通爱好者可以到 KEIL 中国代理周立功公司的网站上下载一份 能编译 2K 的 DEMO 版软件,基本可以满足一般的个人学习和小型应用的开发. (安装的方 法和普通软件相当这里就不做介绍了) 安装好后,您是不是迫不及待的想建立自己的第一个 C 程序项目呢?下面就让我们一 起来建立一个小程序项目吧.或许您手中还没有一块实验板,甚至没有一块单片机,不过没 有关系我们可以通过 KEIL 软件仿真看到程序运行的结果. 首先当然是运行 KEIL51 软件.怎么打开?噢,天!那您要从头学电脑了.呵呵,开个 玩笑,这个问题我想读者们也不会提的了:P.运行几秒后,出现如图 1-1 的屏幕.
图 1-1 启动时的屏幕
-1-

相关文档