1. 怎样编写一个程序
新手如何学习C语言
第一:一些概念。
C语言是一门程序设计语言,有一些标准,比较重要的是ANSI C(好像是C89)和C99。
数据结构包括逻辑结构和物理结构。逻辑结构是数据元素集合和定义在集合上的关系。物理结构是逻辑结构在计算机中的实现。
LCC、VC、TC、GCC都是C语言编译器,一般包括集成开发环境,编译器和链接器及辅助工具
我们书写的是C源程序,源程序通过编译器编译为中间文件,中间文件经链接器链接生成可执行文件。不同操作系统可执行文件不同。中间文件也有几个标准,微软使用的和Linux下通用的有差异。
第二:学习什么。
个人认为程序设计学习的重点放在数据结构的学习上,但是这种学习要有一个平台,比如C语言。
学习C语言首先要掌握基本语法,常量、变量、类型、及顺序结构、分支结构和循环结构的意义及用法。进一步学习构造类型如指针、结构、函数的意义和用法。
C语言提供一些标准函数以减轻程序设计工作量,这些函数我们自己也可以实现。即使不依靠函数库,只有编译器,理论上就足够了。事实上,提供的标准函数效率都很高,使用很频繁,没有自己实现的必要,所以掌握常用函数是非常必要的,但是要注意函数的适用范围。
继续学习因人而异,应该可以独立选择了。
第三:如何学习。
强调多实践,C语言的学习要经常上机,多写程序才能逐步提高。
推荐书籍:C Programming Languge。有中译本
2. 如何编写一个程序
从c语言开始学习吧,c语言是经受了历史的考验的功能非常强大的面向过程的语言,也是编程最基本的语言;其次学习面向对象的语言,如典型的java,c++,c#等;现在流行网络编程,有一定基础后可以学习j2ee,asp.net;软件技术日新月异,web2.0又热起来了,新语言层出不穷,学编程关键是基础。基础好了,可以举一反三的。。。我给你几点建议:首先,编程这东西是实践性很强的,所以要多练习,其次,软件是开发人员思维的产物,所以写程序时要多多思考,再次,软件是由团队开发的,所以要养成良好的编程习惯,以便在以后的团队开发中能够发挥更高的效率。总结起来就是1:多练习2:多思考3:养习惯
3. 谁能教我如何写一个程序
先学会编程语言吧,最基础的是C语言。C语言是基础,将来想学其他的C++,JAVA等,如果有C的基础,还是比较好入门的.比较好的C语言入门的书是《C程序设计教程》(谭浩强,清华大学)。
#include "stdio.h" //头文件
#include "math.h"
main() //mian函数
{
double x,s; //定义两个实数变量,用来被后面程序使用
printf("input number:\n"); //输出" "里面的 input number: ;\n表示换行
scanf("%lf",&x); //从键盘获得一个实数x
s=sin(x); //求x的正弦,并把它赋给变量s
printf("sine of %lf is %lf\n",x,s); //显示sine of x is s,其中x,s为变量,是你输入的 x值和运算后s的值
} //mian函数结束
上面的例子中//后面是注释的内容, 这个例子的功能是从键盘输入一个数x,求x的正弦值,然后输出结果。你可以用在软件VC++6.0里运行。
4. 求大神帮忙写一个小程序
在同一文件夹中建立一个“密码.txt”文件。代码如下:
Private Sub Form_Load()
List1.Clear
Open App.Path & "\密码.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, s
List1.AddItem s
Loop
Close #1
vbGet
End Sub
Sub vbGet()
Clipboard.Clear
Randomize
n = Int(Rnd * List1.ListCount)
Clipboard.SetText List1.List(n)
End
End Sub
5. 如何写一个软件
关于软件保护的一般性建议,这些都是无数人经验的总结。程序员在设计自己的保护方式时最好能够遵守这里给出的准则,这样会提高软件的保护强度。
(1)软件最终发行之前一定要将可执行程序进行加壳/压缩,使得解密者无法直接修改程序。如果时间允许并且有相应的技术能力,最好是设计自己的加壳/压缩方法。如果采用现成的加壳工具,最好不要选择流行的工具,因为这些工具已被广泛深入地加以研究,有了通用的脱壳/解压办法。另外,最好采用两种以上的不同的工具来对程序进行加壳/压缩,并尽可能地利用这些工具提供的反跟踪特性。
(2)增加对软件自身的完整性检查。这包括对磁盘文件和内存映像的检查,以防止有人未经允许修改程序以达到破解的目的。DLL和EXE之间可以互相检查完整性。
(3)不要采用一目了然的名字来命名函数和文件,如IsLicensedVersion( )、key.dat等。所有与软件保护相关的字符串都不能以明文形式直接存放在可执行文件中,这些字符串最好是动态生成。
(4)尽可能少地给用户提示信息,因为这些蛛丝马迹都可能导致解密者直接深入到保护的核心。比如,当检测到破解企图之后,不要立即给用户提示信息,而是在系统的某个地方做一个记号,随机地过一段时间后使软件停止工作,或者装作正常工作但实际上却在所处理的数据中加入了一些垃圾。
(5)将注册码、安装时间记录在多个不同的地方。
(7)检查注册信息和时间的代码越分散越好。不要调用同一个函数或判断同一个全局标志,因为这样做的话只要修改了一个地方则全部都被破解了。
(8)不要依赖于GetLocalTime( )、GetSystemTime( )这样众所周知的函数来获取系统时间,可以通过读取关键的系统文件的修改时间来得到系统时间的信息。
(9)如果有可能的话,可以采用联网检查注册码的方法,且数据在网上传输时要加密。
(10)除了加壳/压缩之外,还需要自己编程在软件中嵌入反跟踪的代码,以增加安全性。
(11)在检查注册信息的时候插入大量无用的运算以误导解密者,并在检查出错误的注册信息之后加入延时。
(12)给软件保护加入一定的随机性,比如除了启动时检查注册码之外,还可以在软件运行的某个时刻随机地检查注册码。随机值还可以很好地防止那些模拟工具,如软件狗模拟程序。
(13)如果采用注册码的保护方式,最好是一机一码,即注册码与机器特征相关,这样一台机器上的注册码就无法在另外一台机器上使用,可以防止有人散播注册码,并且机器号的算法不要太迷信硬盘序列号,因用相关工具可以修改其值。
(14)如果试用版与正式版是分开的两个版本,且试用版的软件没有某项功能,则不要仅仅使相关的菜单变灰,而是彻底删除相关的代码,使得编译后的程序中根本没有相关的功能代码。
(15)如果软件中包含驱动程序,则最好将保护判断加在驱动程序中。因为驱动程序在访问系统资源时受到的限制比普通应用程序少得多,这也给了软件设计者发挥的余地。
(16)如果采用keyfile的保护方式,则keyfile的尺寸不能太小,可将其结构设计得比较复杂,在程序中不同的地方对keyfile的不同部分进行复杂的运算和检查。
(17)自己设计的检查注册信息的算法不能过于简单,最好是采用比较成熟的密码学算法。可以在网上找到大量的源码。
6. C语言一个小程序怎么写
//main.cpp
//根据你的要求,在有数字相同时输出“相同的数字”,出现不是2的n次方的数字时输出“还可以化简”
//没有使用链表,因为太麻烦,realloc足以满足。
//
#include
#include
#include
int main()
{
int number=0;
size_t array_length = 1;
int * array =(int*) malloc(sizeof(array_length*sizeof(int)));
int ret = 0;
do
{
ret = scanf("%d",&number);
if(ret==0 || ret==EOF)
return 0;
size_t idx=0;
//检查是否有相同的数字
for(;idx