- 博客(16)
- 资源 (10)
- 收藏
- 关注
转载 C语言不定参数
我们在C语言编程中会遇到一些参数个数可变的函数,例如printf()这个函数,它的定义是这样的: int printf( const char* format, ...); 它除了有一个参数format固定以外,后面跟的参数的个数和类型是可变的,例如我们可以有以下不同的调用方法: printf("%d",i); printf("%s",s); pr
2013-09-29 20:12:02 582
原创 带参数的main函数
int main(int argc, char* argv[]);第一个参数是命令行里的项目个数,第二个参数是一个字符指针数组,里面有argc项,分别指向这些字串。系统默认,argv的第一项指向程序本身的名字。例如,您的应用程序叫mydarling,而您在命令行中执行它时带着如下的命令行参数。mydarling abc def那么,argc就为3,argv[0]为"mydarl
2013-09-29 20:10:45 407
原创 应用位运算 c语言实现比较:
#include"stdio.h"#define min(a,b) (((a)-(b))>>31)?(a):(b)int main(void){ int a,b; int p; puts("Please input the number!"); scanf("%d",&a); puts("Please input the number!"); sca
2013-09-29 20:09:15 715
原创 约瑟夫环
是一个数学的应用问题: 已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。 例如:n = 9, k = 1, m = 5 【解答】 出局人的顺序为5, 1, 7, 4, 3, 6, 9, 2, 8。
2013-09-29 20:07:13 542 1
原创 N阶幻方阵
幻方,亦称纵横图。台湾称为魔术方阵。将自然数1,2,3,……n*n排列成一个n*n方阵,使得每行、每列以及两对角线上的各个数之和都相等,等于n/2*(n*n+1),这样的方阵称为幻方。例如:把1,2,3,4,5,6,7,8,9填入3*3的格子,使得:每行、每列、两条对角线的和是15。816357492n是它
2013-09-29 20:05:47 2098
转载 编程语言的发展趋势及未来方向
程序设计离不开编程语言,但是编程语言在国内的大环境中似乎一直是个二等公民。国内的计算机教育和工程培训,似乎一直在宣传“语言不重要,重要的是思想”,“语言一通百通”等观点,甚至在许多人眼中“语言的讨论”完全是不入流的,但其实“编程语言”与“工具”、“框架”或是“开发方法”等事物一样,都对生产力有着重要的影响。事实上,语言的发展历史比其他方面更为悠久,并且在过去十几年,甚至最近几年中都依然在不断的碰撞
2013-09-29 20:03:28 1516
原创 Java中的instanceof关键字
instanceof是Java的一个二元操作符,和==,>, String s = "I AM an Object!"; boolean isObject = s instanceof Object; 我们声明了一个String对象引用,指向一个String对象,然后用instancof来测试它所指向的对象是否是Object类的一个实例,显然,这是真的,所以返回true,
2013-09-29 20:01:38 395
转载 Java的synchronized关键字:同步机制总结(转载)
JAVA中synchronized关键字能够作为函数的修饰符,也可作为函数内的语句,也就是平时说的同步方法和同步语句块。搞清楚synchronized锁定的是哪个对象,就能帮助我们设计更安全的多线程程式。不久前用到了同步,现在回过头来对JAVA中的同步做个总结,以对前段时间工作的总结和自我技术的条理话。JAVA的synchronized关键字能够作为函数的修饰符,也可作为函数内
2013-09-29 19:59:37 519
原创 开始LINUX C语言编程
这篇文章介绍在LINUX下进行C语言编程所需要的基础知识.在这篇文章当中,我们将会学到以下内容: 源程序编译 Makefile的编写 程序库的链接 程序的调试 头文件和系统求助 1.源程序的编译 在Linux下面,如果要编译一个C语言源程序,我们要使用GNU的gcc编译器. 下面我们以一个实例来说明如何使用
2013-09-29 19:56:40 671
原创 java多线程编程总结
一、认识多任务、多进程、单线程、多线程要认识多线程就要从操作系统的原理说起。 以前古老的DOS操作系统(V 6.22)是单任务的,还没有线程的概念,系统在每次只能做一件事情。比如你在copy东西的时候不能rename文件名。为了提高系统的利用效率,采用批处理来批量执行任务。 现在的操作系统都是多任务操作系统,每个运行的任务就是操作系统所做的一件事情,比如你在听歌的同时还在用MS
2013-09-29 19:54:59 642
转载 C语言算法之背包算法
在0 / 1背包问题中,需对容量为c 的背包进行装载。从n 个物品中选取装入背包的物品,每件物品i 的重量为wi ,价值为pi .对于可行的背包装载,背包中物品的总重量不能超过背包的容量,最佳装载是指所装入的物品价值最高,即n ?i=1pi xi 取得最大值。约束条件为n ?i =1wi xi≤c 和xi?[ 0 , 1 ] ( 1≤i≤n)。 在这个表达式中,需求出
2013-09-29 19:52:02 1122
原创 程序设计实践 双语版3.1---马尔可夫链算法
给我看你的流程图而藏起你的表,我将仍然是莫名其妙。如果给我你的表,那么我将不再要你的流程图,因为它们太明显了。—Frederick P. Brooks, Jr., 《人月神话》以上从Brooks的经典书中摘录的内容想说的是,数据结构设计是程序构造过程的中心环节。一旦数据结构安排好了,算法就像是瓜熟蒂落,编码也比较容易。这种观点虽然有点过于简单化,但也不是在哄骗人。在前一章里
2013-09-29 19:49:23 1029
原创 文件操作总结-- 基于Java的文件操作
一.获得控制台用户输入的信息/**获得控制台用户输入的信息 * @return * @throws IOException */ public String getInputMessage() throws IOException{ System.out.println("请输入您的命令∶");
2013-09-29 19:44:23 493
原创 文件操作总结-- 基于C++的文件操作
基于C++的文件操作 在C++中,对文件的操作是通过stream的子类fstream(file stream)来实现的,所以,要用这种方式操作文件,就必须加入头文件fstream.h。下面就把此类的文件操作过程一一道来。1.打开文件 在fstream类中,有一个成员函数open(),就是用来打开文件的,其原型是:void open(const char* filename,
2013-09-27 18:43:24 517
原创 文件操作总结-- 基于C的文件操作
在编程过程中,文件操作是一个经常遇到的问题,通常可以使用多种方对文件进行操作,主要的方法有:1、基于C的文件操作;2、基于C++的文件操作;3、基于WINAPI的文件操作;4、基于BCB库的文件操作;5、特殊文件的操作。基于C的文件操作在ANSI C中,对文件的操作分为两种方式,即流式文件操作和I/O文件操作,下面就分别介绍之。一.流式文件操
2013-09-27 18:36:16 541
原创 java try catch finally 的处理测试
通过运行测试代码,查看打印信息,可以了解运行的流程:代码如下:public class Finally {/** * @param args */public static void main(String[] args) {for(int i = 1; iSystem.out.println("------------------------"
2013-09-27 17:42:10 625
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人