C语言笔记

发布 2021-05-12 01:02:28 阅读 8651

1. #include<>是编译预处理命令,其特征是出现在程序开始处。

2. main()是c程序的主函数,任何c程序都有且仅有一个主函数。

程序总是从main函数开始执行的,而不论main函数在整个程序中的位置如何(main函数可以放在程序最前面,也可以放在程序最后,或在一些函数之前,另一些函数之后)。

3. 函数名后的每个语句后,都以分号结尾。

4. /称为注释,可占据多行,通常是给程序阅读者的说明,用于增强程序的可读性。

5. %d是指定的输出格式,d表示用十进制的整数输出;%f表示输出一个实数型。

printf(“sum is %d”,sum);

printf()函数中双引号中的可以在输出时换行。

执行该语句printf( )时,将sum的值(以十进制整数)取代””中的%d

6. c语言是大小写敏感的语言,所有关键字、函数名都为小写。

7. 调用函数(自定义函数,对系统声明函数的定义)

该步骤需在主函数main()前进行。

#include<>

int add(inta,int b)int sub(inta,int b)

return(a+breturn(a-b) }

*定义函数需要在主函数main()前进行*/

return(a+b)表示将a+b的值作为add的函数值,返回到调用add函数的位置。

8. scanf(“%d,%d”,&a,&b);该scanf函数的作用是输入变量a和b的值(由于””中为%d,a和b只能为十进制整数)。键入的格式为 a,b 若为”%d%d”,则键入格式为a空格b。

9. 常量的概念:

1) 整型常量:1000,12345,0,-345

2) 实型常量: 132.45,0.345,-56.79

指数形式:12.34e3(12.34*10^3),-345.87e-25[-345.87*10^(-25)]

3) 字符常量:普通字符:’a’、’z’、’3’

单撇号只是界限符,字符常量只是一个字符,不能使用’ab’、’12’

转义字符:,\b (这是一种在屏幕上无法显示的控制字符)

4) 字符串常量:”boy”、”123”等 (是双撇号中的全部字符,不包括双撇号本身)

5) 符号常量(用define指令 #define pi 3.14)

10. 常用的数据类型。

其中float的有效数字为6,double的有效数字为15

11. 运算符和表达式。

:求余运算符a%b:a除以b的余数。

+i、--i:(在使用i之前,先使i的值加(减)1)

i++、i--:在使用i之后,使i的值加(减)1)

a+=3→a=a+3 x*=y+8→x=x*(y+8) x%=3→x=x%3

算数运算符的结合方向为从左向右、赋值运算符的方向为从右向左。

12. 强制类型转换运算符。

double)a (将a转换为double类型)

int)(x+y) (将x+y的值转换为int型)

float)(5%3) (将5%3的值转换为float型)

13. 求根和多次幂的方法。

#include<>

#include<>导出数学函数。

area=sqrt(s*(s-a)*(s-b)*(s-c))→area=

y=pow(x,a)→y=

14. 赋值过程中的类型变换。

1) inti,i=3.56→i=3

2) double d=123.456789e100,float f, f=d;

指数为100,超过了float数据的最大范围,无法输出正确信息。

3) inti,i=’a’;→i=65 ‘a’的ascii**为65

4) inti=289,char c,c=i→c=33(%c输出得到”!”

原因:发生了截断现象i0000 0001 0010 0001(2或4个字节)

c0010 0001(1个字节)

5) int a=32767,short b,b=a+1

a=32767 0000 0000 0000 0000 0111 1111 1111 1111

b=-327681000 0000 0000 0000

15. 有关数据的输入输出。

1) 用printf输出数据:%d:10进制的整数 %ld:输出长整型。

x,%x:16进制的整数 %o:无符号8进制整数 %u:无符号10进制整数。

f:实数输出(小数默认保留六位) %2f:实数输出(小数保留两位)

e,%e:以科学计数法输出 %g:保留到最后一位有效数字。

6.2f:占6个单位 %s:输出字符串printf(“%2s”,”china”)→ch

2) 用scanf输入数据:scanf(“%f%f%f”,&a,&b,&c)注意&符号不能丢掉。

scanf(“%f%f%f”,&a,&b,&c);输入abc以空格间隔开。

一般%f%f%f之间选择不加逗号避免bug)

scanf(“a=%f,b=%此字符都作为有效字符输入。

scanf(“%c%c%c”,&c1,&c2,&c3);应连续输入三个字符abc

3) 用putchar,getchar输入数据:

getchar:从键盘输入一个字符送给变量putchar:将变量输出。

eg. char a,b,c; a=getchar();b=getchar();c=getchar();putchar(a);putchar(b);putchar(c);

putchar(‘’)→键入boy) boy

boyint a=66,b=79,c=89;putchar(a);putchar(b);putchar(c);putchar(‘’);boy

将ascii**赋值给字符变量。

char c1,c2;c1=’a’;c2=c1+32;printf(“%c”,c2);printf(“%d”c2)

前者输出字符a,后者输出’a’的ascii**;自己编程用只用printf完全可以。

16. ascii中字母数字的关系。

a’=’a’+32,’b’=’b’=32

小写字母的ascii值=大写字母的ascii值+32

数字(0~9)的ascii值=数字自身值+48

17. 关系运算符和关系表达式。

在c语言中,比较运算符称为关系运算符,所谓关系运算就是比较运算,将两个数值进行比较,判断给定的结果是否符合比较的条件。(1表示真true,0表示假false)

a=3,b=2,c=1,d,f;

a>b→ 1 c==a>b→1(>优先级高于==)a<(b+c)→ 0

d=a>b→ 1 f=a>b>c→ 0 ( a>b>c → 1>c → 0 →f=0 )

18. 逻辑运算符及其优先次序。

&:逻辑与 a&&b(如果a,b都为真,则结果为真,否则为假)

|:逻辑或 a||b(如果a,b有一个或两个为真,则结果为真;两者都为假时结果为假)

:逻辑非!a(如果a为假,则!a为真,如果a为真,则!a为假)

只有0为假,其它数据都是真的)

优先次序(1) !非) (2) 算术运算符 (3)关系运算符 (4)&&和|| 5)赋值运算符。

eg. int a=4,b=5; !a=0 ‘c’&&d’=1 a&&b=1 a||b=1 !a||b=1 4&&0||2=1

19. 选择结构(if,switch语句)

判断闰年(是4的倍数而不是100的倍数,或直接为400的倍数)

printf("请输入一个年份:")scanf("%d",&year);

if((year%4==0&&year%100!=0)||year%400==0))

printf("这一年是闰年");else printf("这一年不是闰年");

:条件运算符 if(a>b) max=a; else max=b; →max=a>b?a:b

if(a>b) printf(“%d”,a); else printf(“%d”,b);→printf(“%d”,a>b?a:b)

条件运算符中的数据类型强制转换:x>y?1:5→因为出现了1.5,输出也为实数型1.0

switch语句是多分支选择语句。

switch ()括号中只可以填整型和符号如果填入2.8,则视为填入2

case 1: printf("1");break;case 2: printf("2");break; case 3:printf("3");break;

default:printf("0");

break的作用为结束switch,如果不加break则会继续输出。

eg .上面的程序中,如若去掉break 输入2,则最后会输出230

关于选择结构的几道例题。

1). 输入一个字符ch,根据不同情况进行输出:

1)ch为小写字母,输出对应的大写字母;

2)ch为大写字母,按照原样输出;

3)ch为数字,输出对应的数字;

4)ch为其他字符,输出“other character.”。

#include<>main()

charch;

printf("请输入一个字符或数字:")ch=getchar();

if(ch>='a'&&ch<='z')printf("%c",ch-('a'-'a'))

else if(ch>='a'&&ch<='z')printf("%c",ch);

C语言笔记

第一课时。c语言标准格式。include vidomain 以 开头的语句称为预处理指令。include语句不是必须的,但是如果一旦有该语句就必须把它放在文件开始处是standared input output header的缩写standared 标准input 输入output 输出header...

C语言笔记

c语言算法和数据类型。整型。基本类型 字符型注释 基本类型的特点是其不可实型 单精度型以再分解为其他类型双精度型数组型。数据结构 构造型 结构体型共用体型指针型空类型。一 常量。define 语句不以分号结尾,它可以放在源 的任何位置。不过在定义常量时,只有在它定义后的源 中才有效。是一个修饰符,在...

c语言笔记

1.if中别忘了 而不是 2.写完程序别忘了检查前后大括号 小括号是否完全照应。3.遇到几分之几的分数可以方程两边同时乘以一个数来消去分母。4.写指针题时看准指针对应的是行还是列。例 int a 4 3 int p a 0 列指针。int ptr 3 a 行指针。5.考虑好哪些量会随着循环不断改变。...