一、首先,从一个C程序开始:

 ///Name:Hello World
///Author:JA
///Date:2015-2-4 #include <stdio.h> //包含标准库的信息 void main1() //定义名为main的函数,它不接受参数值
{ //main函数的语句都被括在花括号中
printf("hello world\n"); //main函数调用库函数printf以显示字符序列;\n代表换行符 }

如果你感兴趣,就顺带了解一下何为C语言

二、变量与算术表达式

1.声明

在C语言中,所有变量先声明后使用。声明通常放在函数起始处,在任何可执行语句之前。声明用于说明变量的属性,它由一个类型名和一个变量表组成。说明变量的性质,并不分配存储单元。

2.基本数据类型

  • int
  • float
  • char
  • double

三、for语句

1.初始化

2.控制循环测试条件部分

3.增加步长

 ///Name:华氏——摄氏
///Author:JA
///Date:2015-2-4 #include<stdio.h> //void main()
//{
// int fahr, celsius;
// int lower, upper, step;
//
// lower = 0;
// upper =300;
// step = 20;
//
// fahr = lower;
// while (fahr <= 300)
// {
// celsius = 5 * (fahr - 32) / 9;
// printf("%d\t%d\n", fahr, celsius);
// fahr = fahr + 20;
// //getchar();
// }
//
//} //void main()
//{
// int fahr;
// for (fahr = 0; fahr <= 300; fahr = fahr + 20){
// printf("%3d %6.1f\n",fahr, (5.0 / 9.0)*(fahr - 32));
// }
// getchar();
//} #define LOWER 0
#define UPPER 300
#define STEP 20 void main()
{
int fahr; for (fahr = LOWER; fahr <= UPPER; fahr = fahr + STEP)
printf("%3d %6.1f\n", fahr, (5.0 / 9.0)*(fahr - ));
//getchar();
}

四、符号常量

1.幻数:在程序中使用300,20等

2.#define指令可以把符号名(或称为符号常量)定义为一个特定的字符串

五、字符输入输出

1.文件复制

2.字符统计

3.行计数

4.单词计数

 ///Name:字符输入输出
///Author:JA
///Date:2015-2-4 /*文件复制*/
#include<stdio.h> void main()
{
int c;
while ((c = getchar())!= EOF){ //EOF:END OF FILE
putchar(c); }
} /*字符计数*/
#include<stdio.h> void main()
{
double nc;
for (nc = ; getchar() != EOF; nc++)
; //空语句
printf("%.0f\n", nc);
} /*行计数*/
#include<stdio.h> void main()
{
int c, n1;
n1 = ;
while ((c = getchar())!=EOF)
if (c == '\n')
++n1;
printf("%d\n", n1);
} /*单词计数*/
#include<stdio.h>
#define IN 1
#define OUT 0 void main()
{
int c, n1, nw, nc, state; state = OUT;
n1 = nw = nc = ;
while (c = getchar() != EOF)
{
++nc;
if (c == '\n')
++n1;
if (c == ' ' || c == '\n' || c == '\t')
state = OUT;
else if (state = OUT){
state = IN;
++nw;
}
}
printf("%d %d %d\n", n1, nw, nc);
}

六、数组

1.数组下标从0开始

2.数组下标可以是任何整型表达式,包括变量常量

七、函数

1.为计算的封装提供了一种简便方法

2.函数声明中不允许有参数列表

八、参数——传值调用

1.被调用函数不能直接修改主调函数中变量的值,而只能修改其私有的临时副本的值。

九、外部变量与作用域

1.外部变量必须在所有函数之外,且只能定义一次。

2.extern

Empire C:Basic 1的更多相关文章

  1. Empire C:Basic 3

    首先我们定义一个表示年龄的指针: int* page: 这就是定义了一个指针,和定义普通变量就多了一个*符号而已. 为什么变量名用了p开头,这里引用了英文pointer(指向),表示它是一个指针,而非 ...

  2. Empire C:Basic 2

    作为人与计算机沟通的媒介,C语言给我们呈现了:printf.scanf.以及缓冲区. 1.printf("%d",a) %d:d是decimal base(十进制)的开头字母,意思 ...

  3. Empire C:Basic 4

    一.变量名 1.名字由字母和数字组成,但其第一个字符必须为字母. 2.变量名不要以下划线开头. 3.变量名使用小写字母,符号常量名全部使用大写字母. 二.数据类型及长度 1.char 字符型 占用一个 ...

  4. C#进阶系列——WebApi 身份认证解决方案:Basic基础认证

    前言:最近,讨论到数据库安全的问题,于是就引出了WebApi服务没有加任何验证的问题.也就是说,任何人只要知道了接口的url,都能够模拟http请求去访问我们的服务接口,从而去增删改查数据库,这后果想 ...

  5. #进阶系列——WebApi 身份认证解决方案:Basic基础认证

    阅读目录 一.为什么需要身份认证 二.Basic基础认证的原理解析 1.常见的认证方式 2.Basic基础认证原理 三.Basic基础认证的代码示例 1.登录过程 2./Home/Index主界面 3 ...

  6. WebApi身份认证解决方案:Basic基础认证

    前言:最近,讨论到数据库安全的问题,于是就引出了WebApi服务没有加任何验证的问题.也就是说,任何人只要知道了接口的url,都能够模拟http请求去访问我们的服务接口,从而去增删改查数据库,这后果想 ...

  7. C#进阶系列——WebApi身份认证解决方案:Basic基础认证 (转)

    http://www.cnblogs.com/landeanfen/p/5287064.html 前言:最近,讨论到数据库安全的问题,于是就引出了WebApi服务没有加任何验证的问题.也就是说,任何人 ...

  8. Demo学习: Basic jQuery

    UniGUI是一套基于ExtJS的Delphi的WEB框架,它是使用ExtPascal来转化到ExtJS,ExtJS是一个跨浏览器的JavaScript库,因此UniGUI发布出来的程序可以在各种浏览 ...

  9. Python Learing(二):Basic Image Processing 1

    <写在前面> Basic image processing 1: 0.(以简单的曲线图为例)对于生成的图自定义外观,使用子图,多个数据集,标题,标签,交互式标注,图例: 1.生成散点图,直 ...

随机推荐

  1. 常用fix顶部1111111111111111

    如何写CSS? 1.顶部不fix,有主宽度: 2.顶部fix,无主宽度,min-width.移动端. 3.向下滑动页面时,顶部出现fix,与初始的顶部内容有区别.(常用于移动端) 4.顶部fix,有主 ...

  2. 17243 Huzi酱和他的俄罗斯套娃(贪心)

    时间限制:500MS  内存限制:65535K 提交次数:15 通过次数:4 收入:12 题型: 编程题   语言: C++;C Description Huzi酱是个非常贪玩的人,除了魔方他还喜欢各 ...

  3. virtualtree 的使用(Delphi)

    VirtualTreeview的强大,毋庸置疑,不过,你能给演示演示,也不错,就是刚下来,只有一个可执行程序,感觉像病毒. 最近比较忙,没有上网,现在把我研究的结果和大家通报下,方便新手学习,避免走弯 ...

  4. POJ3368 Frequent values(RMQ线段树)

    题目大概说给一个递增序列,询问区间出现最多的数. 用莫队算法比较直观,虽然应该会T..好像也可以主席树..不过题目给的序列是有序的,因而相同的数会聚在一起. 考虑把序列分成一段一段,使每段都包含极大的 ...

  5. 每天一个linux命令--awk

    统计计算日志 pmail@app2linux04 performance]$ grep 'user:logBehaviorAction' performance.log|awk -F '|' '{pr ...

  6. BZOJ3615 : MSS

    将所有点按横坐标排序,那么最长上升子序列和最长下降子序列里必有一个长度不小于$\sqrt{n}$. 因为如果最长上升子序列很短,那么根据Dilworth定理,它的反链长度与它成反比. 因此可以将$n$ ...

  7. BZOJ3548 : [ONTAK2010]Party

    首先将朋友通过并查集缩起来,因为$P\geq\frac{n(n-1)}{3}$,所以最后最多剩下$46$个点. 将自相矛盾的点删掉,就变成求最大权独立集问题,这等于求补图的最大团. 然后直接用Bron ...

  8. Android HttpURLConnection And HttpClient

    Google的工程师的一个博客写到: HttpURLConnection和HttpClient Volley HTTP请求时:在Android 2.3及以上版本,使用的是HttpURLConnecti ...

  9. ACM: A Simple Problem with Integers 解题报告-线段树

    A Simple Problem with Integers Time Limit:5000MS Memory Limit:131072KB 64bit IO Format:%lld & %l ...

  10. 【POJ】2296 Map Labeler

    http://poj.org/problem?id=2296 题意:题意:给你n个点,每个点上都放一个正方形,点只能在正方形的上边或下边的中点上,所有正方形大小一样,不能有面积重叠,求最大的正方形.( ...