在信息化、智能化的世界里,可能很早很早 我们就听过许多IT类的名词,C语言也在其中,我们侃侃而谈,到底C程序是什么样子?让我们先看简单的一个例子:

1
2
3
4
5
6
7
8
9
#include<stdio.h>                 /*引入头文件*/
int main(void)                  /*一个简单的C程序*/
{
    int number;            /*定义个名字叫做number的变量*/
    number=2014;                /*给number赋一个值*/
    printf("Hello ! I am dotcpp.com\n");    /*调用printf()函数*/
    printf("This year is %d\n",number);
    return 0;
}

这个简单的程序作用是向屏幕上输出两句话,如果想看到实际的运行结果的话,我们需要使用编译器编译这段代码然后运行最后的可执行程序,如果顺利话,将看到运行结果为:

1
2
Hello ! I am dotcpp.com
This year is 2014

怎么样?一切如我们所预料吧? 
可是...为什么... 
也许您还有很多个疑问,很多个为什么,比如什么头文件、main、int、\n、%d都是什么东西?都是干什么用的? 
以及您可能感觉为什么写的这么奇怪? 
不用着急~ 好,让我们一起先来大致看一遍。

1
#include<stdio.h>  /* 包含另一个文件 */

本行代码将告诉编译器引入一个stdio.h的文件(就像我们电脑中的123.txt一样)的全部内容。stdio.h文件是所有C语言编译器的标准部分,用来提供输入和输出的支持。

1
int main(void/*主函数*/

C程序规定一个程序中有一个或多个函数,他们是C程序的基本模块。但必须有且只有一个main函数。因为C程序的执行将从main函数开始,到main函数结束而停止。 
再回头看看我们的这个简单实例吧,他只有一个名为main的函数,名字后面的圆括号()表明main()是一个函数的名字,括号里面的void表示空的,这里指不接受任何参数。而前面的int表示main()这个函数在执行完成后返回一个整数(int表示整数,即英文integer的缩写)。有关更详细的知识,我们会在后面进入更深入的讲解。而此时,我们只需要把int和void看作是用来定义main()函数的标准即可。

1
/*一个简单的C程序*/

这不是代码,是一句注释,符号/*和*/中包含的话不被编译器编译处理,而是给我们看的,帮助我们理解程序,你可以认为是笔记~

1
{

这个开始花括号标志着函数的开始,而后面的结束花括号}则标志着函数的结束。

1
int number;

这个语句表明告诉编译器,我们将使用一个叫做number的变量,并且它是int(整数)类型。

1
number=2014;

这条语句表示,给number这个变量赋值为2014。

1
printf("Hello ! I am dotcpp.com\n");

这是一个函数调用语句,在屏幕上显示“Hello ! I am dotcpp.com”,\n表示让光标另起一行。这里的printf()是C标准库里的一部分。用术语来讲,它是一个函数。在一个程序中使用另一个函数(如我们在main()函数当中调用了printf()函数),术语称之为调用了一个函数。

1
printf("This year is %d\n",number);

又是一个函数调用语句。但不同的是并不是输出“This years is %d”换行,而是输出"This year is 2014"换行,此刻的%d表示输出number值的位置和形式。

1
return 0;

C函数可以给它的使用者提供或返回一个数值。此时 我们只需理解这一句是用来满足C标准的要求而已。

1
}

结束的花括号,函数名后{ 和 }之间的部分称之为函数体。 

好的,这就是我们的第一个简单的C程序以及其简单的介绍,希望大家好好理解并消化,更详细的讲解我们将会在下节展开!

程序演示:C语言第一个简单实例的更多相关文章

  1. 留念 C语言第一课简单的计算器制作

    留念 C语言第一课简单的计算器制作 学C语言这么久了.  /* 留念 C语言第一课简单的计算器制作 */   #include<stdio.h>  #include<stdlib.h ...

  2. Hibernate笔记——第一个简单实例

     1. 首先进行框架配置 导包 hibernate配置xml文件 ======================= 2. 创建并配置POJO类 Hibernate是操作持久化层的框架,和数据库打交道,其 ...

  3. c语言指针的简单实例

    c语言的指针的存在使得c语言对硬件的操控,以及灵活性得到了极大的提高. 但是指针的使用存在着很多难点问题. #include<stdlib.h> #include<stdio.h&g ...

  4. Win32 API 多线程编程——一个简单实例(含消息参数传递)

    Win32 API进行程序设计具有很多优点:应用程序执行代码小,运行效率高,但是他要求程序员编写的代码较多,且需要管理所有系统提供给程序的资源,要求程序员对Windows系统内核有一定的了解,会占用程 ...

  5. 【C语言C++编程学习笔记】基础语法,第一个简单的实例编程入门教程!

    C语言/C++编程学习:一个简单的实例 让我们来看一个简单的C语言程序.从下面的程序可以看出编写C语言程序的一些基本特征.   如果你能知道该程序将会在显示器上显示一些内容,那说明你还是知道一些的! ...

  6. SignalR代理对象异常:Uncaught TypeError: Cannot read property 'client' of undefined 推出的结论 SignalR 简单示例 通过三个DEMO学会SignalR的三种实现方式 SignalR推送框架两个项目永久连接通讯使用 SignalR 集线器简单实例2 用SignalR创建实时永久长连接异步网络应用程序

    SignalR代理对象异常:Uncaught TypeError: Cannot read property 'client' of undefined 推出的结论   异常汇总:http://www ...

  7. C++ 容器的综合应用的一个简单实例——文本查询程序

    C++ 容器的综合应用的一个简单实例——文本查询程序 [0. 需求] 最近在粗略学习<C++ Primer 4th>的容器内容,关联容器的章节末尾有个很不错的实例.通过实现一个简单的文本查 ...

  8. 关于《数据格式修改》的简单应用程序(C语言)

    关于<数据格式修改>的简单应用程序(C语言) 至亲爱的博友: 大家好,好久不见了.由于博主还是一名大学在校生,不可避免的需要和指导教师共同完成一些项目,因此前一段时间暂时停止了博客的更新. ...

  9. 用C语言编写一个简单的词法分析程序

    问题描述: 用C或C++语言编写一个简单的词法分析程序,扫描C语言小子集的源程序,根据给定的词法规则,识别单词,填写相应的表.如果产生词法错误,则显示错误信息.位置,并试图从错误中恢复.简单的恢复方法 ...

随机推荐

  1. 解放双手,不写SQL!一个开源mybatis神器

    什么是通用 Mapper? 它是一个可以方便的使用 Mybatis 进行单表的增删改查优秀开源产品.它使用拦截器来实现具体的执行 Sql,完全使用原生的 Mybatis 进行操作.在 Github 上 ...

  2. 【论文阅读】An Empirical Study of Architectural Decay in Open-Source Software

    2020-06-19这篇文章是我学习 软件架构与中间件 课程时分享的论文.可以说,这篇文章塑造了我基本的科研观,也养成了我如今看论文的习惯.感谢老师们,也感谢恒恒对我的帮助. 论文地址: https: ...

  3. 样式操作-核心DOM

    1.核心DOM 只能操作行内(内嵌)样式-->style里面的所有内容(核心DOM) //麻烦获取 console.log(div.getAttribute("style") ...

  4. python机器学习实现人脸图片自动补全

    人脸自动补全 关注公众号"轻松学编程"了解更多. 1.导包 import matplotlib.pyplot as plt import numpy as np import pa ...

  5. 深入研究Paxos算法原理

    一.Paxos算法产生的背景 Paxos算法是基于消息传递且具有高度容错特性的一致性算法,是目前公认的解决分布式一致性问题最有效的算法之一,其解决的问题就是在分布式系统中如何就某个值(决议)达成一致. ...

  6. Java_进程与线程

    进Process&Thread 区别 进程 线程 根本区别 作为资源分配的单位 调度和执行的单位 开销 每个进程都有独立的代码和数据空间(进程上下文), 进程间的切换会有较大的开销 线程可以看 ...

  7. js 自适应手机电脑 轮播图

    自己写了一个javascript的可循环轮播图,支持手机滑动,不过代码着实小白,全局变量,函数调用满天飞,研究别的代码规范好的轮播图插件,表示看得懂但是写不出.. HTML: <div id=& ...

  8. php 之根据mysql字段 批量生成 array 数组

    ci框架 验证字段 需要 生成类似为: array('field' => 'admin_id','label' => '账号ID','rules' => 'integer'),    ...

  9. leetcode75:search-a-2d-matrix

    题目描述 请写出一个高效的在m*n矩阵中判断目标值是否存在的算法,矩阵具有如下特征: 每一行的数字都从左到右排序 每一行的第一个数字都比上一行最后一个数字大 例如: 对于下面的矩阵: [ [1, 3, ...

  10. .NetMvc从http或本地下载pdf文件

    1.帮助类 1 public static class PdfHelper 2 { 3 #region 从http链接下载 4 public static void Download(string u ...