1.程序从标准输入中读取输入行并在标准输出中打印这些输入行
首先读取一串列标号,每一行的列标号从0开始,以一个负数作为结束标志,列标号都是成对出现,表示读取列的范围。
输入如下:
3 7 8 15 -1 //输出第3—7列,8—15列
qwertyuiopasdfghjkl
I love you for my life past
beauty
输出如下:
rtyuiopasdfgh
Ove you for m
Uty
2.注释不能嵌套,第一个/*和第一个*/之间的内容都被当做注释处理。注释出现在任何空格可以出现的地方。
3.预处理指令
#include 需要声明几个不同的源文件时,在一个单独的文件中编辑这些声明,然后用#include指令把这些文件包含到需要使用这些声明的源文件中。
#define 定义EXP为0.000000000001,当EXP出现在源文件中的任何地方时,它就会被替换为定义的值。
4.C函数的参码中数传递:
所有传递给函数的参数都是按值传递的
5.NUL是ACSII字符“\0”的名称,NULL是指一个其值为0的指针,都是整型值,且值相同。
6.Scanf函数,所有标量参数的前面必须加上“&”。用格式码输入字符串时,中间不能有空白。%d,%ld,%f,%lf,%c,%s
7.strncpy函数把选中的字符从输入行复制到输出行中可用的下一个位置。函数的三个参数分别表示目标字符串参数,源字符串参数,需要复制的字符数。
Strcpy函数,与strncpy函数类似,但是它没有限制要复制的字符数。它接受两个参数,第二个字符串参数将被复制到第一个字符串参数,第一个字符串参数的燕来的字符串内容将被覆盖。
Strcat函数,接受两个参数,第二个字符串参数将被添加到第一个字符串参数。
Strcpy函数和Strcat函数的第一个字符串参数都不能是字符串常量。
二、词法规则:
1.三字母词
2.转义字符
\? 在书写连续多个问号时使用,防止他们被解释为三字母词
\” 用于表示一个字符串常量内部的双引号
\’ 用于表示字符常量’
3C语言中,标识符的长度没有限制,但标准允许编译器忽略第31位字符以后的字符,标准同时允许编译器度用于表示外部名字的标识符进行限制,只识别前六位不区分大小写的字符。
下列C语言官关键字是被保留的,不能当做标识符使用:
三、数据:
1.基本数据包括4种:整型、浮点数、指针,聚合类型。
2.字面值:字面值常量,指定了自身的值,并且不允许发生改变。
3.枚举类型
eunm {ADD,SUB,MUL,,DIV}
0 1 2 3
4浮点数:10—^37-----10^37
浮点数在字面值缺省的情况下,都是double型,除非它后边跟着一个L或者l表示它是long double型的值,或者跟一个F或f表示它是一个float类型的值。
5.基本声明
相等的整型声明
声明数组:int a[5];
声明指针:int *a;
6.标识符的作用域就是在程序中该标识符可以被使用到的区域。
任何在所有代码块之外声明的标识符都具有文件作用域,表示这些标识符从她们声明之处起到源文件结尾处都是可以被访问的。