C语言学习基础知识点---谭浩强

1.在程序中如果用到标准函数库中的输入输出函数,应该在本文件模块的开头写上下面一行: # include<stdio.h>

2.在常量一节中,有字符串常量,但是不能错写成 ‘CHINA’, ‘123’,‘boy’。在C语言里面,单撇号只能包含一个字符,双撇号可以包含一个字符串。

3.符号常量。 用 # define 指令,指定用一个符号名称代表一个常量。如:# define PI 3.1415. 但在使用而言,更加倾向于用 变量 const float pi = 3.1415
他们都含义清楚,一改全改

4.标识符:字母、数字、下划线,但是刚开始不能为数字

5.如果想输出字符“%”,应该在“格式控制字符串”中用连续两个“%”表示
栗子:

#include<stdio.h>

int main()
{

	printf("%f%%\n",1.0/3);

	return 0;
}

输出为:
在这里插入图片描述
6.C语言中的转义字符:
‘\101’:代表八进制数101的ASCII字符,即’A’(八进制101相当于十进制数65,ACSII为65的字符是大写字母’A’)
‘\012’: 代表八进制数12(即十进制数的10)的ASCII码所对应的字符“换行”符
‘\x41’: 代表十六进制数41的ASCII字符,也是’A’(十六进制数41相当于十进制数65)

7.getchar()和putchar()都是针对单个字符的输入输出。

8.C语言中有两种选择语句:(1) if 语句,用来实现两个分支的选择结构 (2) switch 语句,用来实现多分支的选择结构。

9.在C库函数中,有两个求绝对值的而寒暑,一个是abs(x),求整数x的绝对值,结果是整型。另一个是fabs(x),x 是双精度数,得到的结果是双精度型。

10.char c[ ] = {"I am happy"};
此时数组c的长度不是10,而是11,因为字符串常量的最后由系统加上一个’\0’。上面的初始化等价为(注意单双引号的出现情况):

char c[ ] = {'I','','a','m','','h','a','p','p','y','\0'}; 

11.scanf函数中的输入项如果是字符数组名,不要再加地址符&,因为在C语言中数组名代表该数组的起始地址。

scanf("%s", &str);    // str前不应该加&

12.字符串结束标志’\0’

13.字符串的 输入:scanf() 输出: printf()

14.使用字符串处理函数:
(1).puts函数 — 输出字符串的函数
(2).gets函数 — 输入字符串的函数
(3).strcat函数 — 字符串连接函数
(4).strcpy和strncpy函数 – 字符串复制函数
(5).strcmp函数 — 字符串比较函数
(6).strlen函数 — 测字符串长度的函数(不包括’\0’)
(7).strlwr函数 — 装换为小写的函数
(8).strupr函数 — 装换为大写的函数
注意: 在使用字符串处理函数时,应当在程序文件的开头用 include <string.h>,把string.h文件包含到本文件中。

15. 实参和形参
在定义函数时,函数名后面括号中的变量名称为“形式参数”;在main函数中,调用一个函数时,函数名后面括号中的参数称为“实际参数”。

调用结束,形参单元被释放。如果执行一个被调用函数时,形参的值发生改变,不会改变主调函数的实参的值。

实参向形参的数据传递是“值传递”,单向传递,只能由实参传给形参,而不能由形参传给实参。

16.一维数组初始化:
(1). int a[5] = {0,0,0,0,0};int a[5] = {0};
(2). int a[5] = {1,2,3,4,5};int a[] = {1,2,3,4,5};

17.字符串的结束标志是'\0',程序末尾系统自动添加

18.字符串处理函数
(1). puts 函数 —— 输出字符串的函数:

	char str[] = {"China \n Beijing"};
	puts(str);

(2). gets 函数 —— 输入字符串的函数:

	gets(str);

(3). strcat 函数 —— 字符串连接函数:

	char str1[10] = {"Hello,"};
	char str2[] = {"Tomorrow!"};
	printf("%s", strcat(str1, str2));

(4). strcpy 和 strncpy 函数 —— 字符串复制函数:

	char str1[10];
	char str2[] = {"Tomorrow!"};
	printf("%s", strcpy(str1, str2));

strncpy(str1, str2, n): 将字符串2中前面n个字符复制到字符数组1中去。

(5). strcmp 函数 —— 字符串比较函数:

	char str1[10] = {"Haha"};
	char str2[] = {"Tomorrow!"};
	if (strcmp(str1, str2)>0)
		printf("Yes");
	else
		printf("No");

(6). strlen 函数 —— 测量字符串长度的函数:

	char str[10] = {"Haha"};
	printf("%d\n", strlen(str));

(7).strlwr函数 —— 装换为小写的函数

	char str[10] = {"Haha"};
	printf("%s\n", strlwr(str));

(8).strupr函数 —— 装换为大写的函数

	char str[10] = {"Haha"};
	printf("%s\n", strupr(str));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值