第1章 c语言概述。
1.1 c语言初步。
要求:初步了解c语言,掌握c语言的框架。
补充:1byte = 8bits
内存是按字节编址的。
1. c语言的扩展名为:*.c c++的扩展名为:*.cpp
2. c语言的框架(重点掌握)
#include <>#表示预处理,include表示把包含到当前工程中,standard input output header
int main() int是integer的缩写,表示函数的返回值为整型;main是函数名,小括号()为函数的标志。
return 0; /返回给系统数值0
//大括号{}为函数体部分,函数功能的具体实现。
注意:注释掉的**不参与编译。
/两个斜线表示单行注释。
* .表示多行注释 .
/一个工程中,有且只能有一个main函数。
3. 例1:求1+2+……n的和。
#include <>
int main()
int i=1,n,sum=0; /定义整型变量i,n和sum
printf("请输入一个正整数:");printf为输出函数,表示回车换行。
//双引号中的内容原样输出,除了格式控制符(%)和转义字符(\)
scanf("%d",&n); scanf为输入函数,%d表示按整型输入,&为取地址符。
while(i<=n) /while表示循环,i<=n是循环条件。
printf("1+2+..d=%d",n,sum);
return 0;
第2章数据类型、输入输出。
2.1 输入输出。
要求:掌握scanf和printf的用法,掌握变量和常量的概念及定义。
printf的一般形式:
printf(“待输出的内容”[,对应格式输出的表达式的值])
说明:双引号中的内容原样输出,除了格式控制符(%)和转义字符(\)表示可选项(可有可无),如果前面有格式控制符,则后面必须要有对应输出表达式的值,而且是一一对应的。
scanf的一般形式:
scanf(“格式控制列表”,地址列表);
说明:双引号中的内容原样输入,除了格式控制符;格式控制列表要和后面的地址列表一一对应。
取地址符:&
要求掌握的基本数据类型及对应的格式控制如下:
int %d(十进制)%o(八进制) %x(十六进制) char %c(单个字符)或%s(字符串) float %f double %lf
m表示输出数据总的宽度,n表示小数位数。如果输出的内容长度大于指定的m值,则按实际长度靠左输出,反之靠右。加-负号的靠左。
对于特殊的字符,如都需要特殊处理。
%输出一个% 其他的特殊字符输出需要在前面加上\
例1:#include <>
int main() main为主函数,程序执行时的入口。
int a; /整型。
double b; /双精度的浮点型。
printf("请输入两个整数:");
scanf("%d%lf",&a,&b); a=3 b=5
printf("%d+%lf=%.2lf",a,b,a+b);
return 0;
标识符:通俗来说就是给变量、常量或函数起的名字。只能由数字、字母和下划线组成,且数字不能作为开头,不能使用系统的关键字。一般情况下,建议定义常量使用大写字母,变量使用小写字母。
注意:c语言区分大小写。
常量:在程序运行过程中,值不能改变的量。通常定义放在include后面,定义方式如下:
#define 常量名常量的值。
变量:在程序运行过程中,值能改变的量。通常在函数内部,定义方式如下:
变量的类型变量名1, 变量名2,…,变量名n[=变量的值];
例2:#include <>
#define pi 3.1415926 //定义的符号常量,又叫宏定义。
int main()
float r; /定义变量,在函数的内部。
double area;
printf("请输入圆的半径:");
scanf("%f",&r);
area=pi*r*r;
printf("圆的面积是:%.3lf",area);
return 0;
重点:变量必须先定义后使用。
变量定义后,变量的值是随机的,在使用变量之前,要确保变量有值(不是随机值)
int a,b,c; /定义了三个变量,名字分别是a,b,c,此时变量的值是随机的。在定义变量的同时赋值又叫变量的初始化。
2.2 数据类型及字符的输入输出。
要求:掌握基本的数据类型,尤其是字符型。
例1:数据的交换(重点掌握交换的方法)
#include <>
int main()
int a,b,t;
printf("请输入两个整数:");
scanf("%d%d",&a,&b);
printf("交换之前:a=%d,b=%d",a,b);
//实现两个数据的交换。
t=a;a=b;
b=t;printf("交换之后:a=%d,b=%d",a,b);
return 0;
例2:数据的溢出。
#include <>
int main( )
short int a,b; /定义短整型变量a、b*/
long x,y; /定义长整型变量x、y*/
a=32767;
b=a+1; /已经超出短整型能够表示的最大范围,数据溢出。
printf("a=%d, .b=%d ",a,b);
x=32767l; /整数后面加l(l)表示长整型。
y=x+1;
printf ("x=%ld, y=%ld ",x,y);
return 0;
实型数据(浮点型数据:float和double)
注意:1和1.0表达不同的含义,1表示整型,1.0表示实型,在内存中存储方式不同。
c编译系统对实型常量不分float和double,而是都作为double(双精度)来处理,如果确实想赋值为float类型,则需要在实型数据后面加f或f,如:float a=3.2f;
类型转换:隐式转换(自动类型转换):系统自动由低类型高类型(高低指的是数据占用的存储空间),如:float a=3.2f; double b=a;
显示转换(强制类型转换):需要在待转换的数据前加(要转换到的数据类型),如:double a=3.2; float b=(double)a;
字符:两侧加单引号,如:’a’,
字符存储的是ascii,所以可以和整型数据进行加减运算。
2.3 字符和字符串、运算符。
要求:掌握字符、字符串的用法;掌握基本的运算符。
特殊的字符:
#include <>
int main()
printf("s t\tuden\'t\'");
printf(" h\tqqello");
return 0;
说明:表示回车,但不换行(重新到所在行的开头)
\t表示横向跳格(相当于按下tab键)
表示输出一个单引号。
字符、字符串对比:
字符:单引号括起来。
字符串:双引号括起来。末尾系统自动添加’\0’作为字符串结束的标志,所占存储空间比实际长度大1
例1:#include <>
int main()
/ printf("%c",'101');101 ==8*8+1=65-->a
char str=a"; 表示数组。
printf("%d",sizeof(str));sizeof函数求占用存储空间的大小。
char ch='a';
printf("%d",sizeof(ch));
printf("%s",str); 字符串%s
printf("%c",ch); 字符%c
return 0;
大小写字母的判断:
#include <>
int main()
char ch;
printf("请输入一个字符:");
scanf("%c",&ch);
if(ch>='a' &ch<='z') 满足此条件,说明ch为小写。
printf("%c是小写字母",ch);
else if(ch>='a' &ch<='z') 满足此条件,说明ch为大写。
printf("%c是大写字母",ch);
elseprintf("%c不是字母",ch);
return 0;
例2:字符串移位加密。
#include <>
int main()
char str=hellodf;gfj..,gfzxyz"; 表示定义数组,用于存放字符串。
for(int i=0;i
else if(str[i]>=a' &str[i]<=z') 大写。
printf("%s",str);
return 0;
运算符。赋值运算符(=)把右侧表达式的值赋给左侧的变量。
复合赋值运算符(如+=)a +=3; 等价于 a=a+3;
除号(/)1. 如果/两侧都是整型数据,则表示整除,舍弃余数。
2. 如果/两侧有一侧是实型数据,则表示数学的除法。
如:3/2 ==1 3.0/2 ==1.5
求余(%)舍弃商,取余数。如: 3%2 ==1
例3:整数的位数分离。
#include <>
int main()
int n=153;
int a,b,c; /a存放百位,b存放十位,c存放个位。
a=n/100;
b=n/10%10; /b=n%100/10;
c=n%10;
if(a*a*a + b*b*b + c*c*c ==n)
printf("%d是水仙花数",n);
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.考虑好哪些量会随着循环不断改变。...