初入程序世界--学习C语言

目录

1.使用程序做一些简单计算

2.使用程序解决找零问题

 3. 使用程序输出两个整数中的较大值

 4.在编写程序时因为容易忽略的细节造成的错误

5.关于数据类型的一些知识点

6.关于标识符与关键字

7.关于常量

8.关于变量

9.关于字符串常量


1.使用程序做一些简单计算

#include
int main()
{
int a=5;
int b=11;
int c=a+b;

printf("a+b=%d",c);
return 0;
}

注释:利用变量c代表a+b这一表达式的值,再用printf函数将结果进行输出


2.使用程序解决找零问题

#include
int main()
{
int price=0;
printf("请输入金额(元):");
scanf("%d",&price);

int change=100-price;
printf("找您%d元\n",change);

return 0;
}

注释:使用printf函数和scanf函数,

scanf("%d",&price);

表示输入一个整数值并把这个值给变量price;之后再定义一个变量change并用其表示找零的金额 


 3. 使用程序输出两个整数中的较大值

#include
int main()
{
int max(int x,int y);
int a,b,c;

scanf("%d,%d",&a,&b);
c=max(a,b);

printf("max=%d\n",c);
return 0;
}

int max(int x,int y)
{
int z;
if(x>y),z=x;
else z=y;
return(z);
}

注释:该程序除了使用主函数main外,还使用了一个自定义函数max;配合函数printf和scanf以及if else语句构成程序主体


 4.在编写程序时因为容易忽略的细节造成的错误

scanf("%d",&price);
scanf("%d",&price);

以上两个程序段是我在编写程序解决找零问题时所写,乍一看两者貌似一样,但是;当我在写出第一个程序段时,点击运行后却显示错误,我反复观察录播课上的正确程序之后依然没有找出原因,然后我重新写了一次程序,这次我写出了第二个程序段,点击运行后显示成功,我反复观察并编写两次所写下的程序得出结论;第一个程序段中的逗号(,)是使用的中文输入法,第二个编程段中的逗号(,)用的是英文输入法。两个逗号在编写程序时很像,但是像归像,两者一定不能等同,在编写程序时要使用英文输入法的半角!


5.关于数据类型的一些知识点

(1).所谓类型,就是对数据类型分配储存单元的安排,包括储蓄单元的长度(所占的字节)以及数据的存储形式。

数据类型包括 基本类型、构造类型、空类型、指针类型

其中基本类型又包括:

整型类型(eg:整型int、无符号整型unsigned int、短整型short int、无符号短整型unsigned short、长整型long int、无符号长整型unsigned long);

字符类型(eg:字符型char);

浮点类型(eg:单精度浮点型float、双精度浮点型double)

目前学习只使用过整型 int

(2).对整型数据用“%d”格式输出。%d表示用十进制的格式输出。

     对无符号整型数据用"%u"格式输出。%u表示用无符号十进制数的格式输出。

(3).浮点型变量的定义方法(与定义整型变量相同):[类型定义符] 标识符

float的格式说明项为“%f”,double的格式说明项为“%lf”。


6.关于标识符与关键字

(1).标识符是有效字符序列,是一个对象的名字。用于标识用户自己定义的变量、符号常量、函数名、类型名等等。

标识符命名规则

*不能是关键字

*只能由字母、数字和下划线组成,且区分大小写

*名称的第一个字符必须是字母或下划线,不能是数字

*名称中间不能有空格

*标识符可以为任意长度,但最好不要超过31个字符

*不要与C语言库函数名称相同

(2).关键字(保留字)是C语言预先定义好的字符序列,具有特殊的含义和用法,在标准C语言中共有32个关键字。

关键字主要有存储类声明、程序语句、数据类型声明、运算符等四种作用


7.关于常量

常量是在程序运行过程中不变的量,程序员可以在程序中直接书写常量

常量包括整数常量、浮点数常量、字符常量。

(1).整数常量分为:

*十进制整数  直接写出eg:101、999、-58

*八进制整数  以开头,由0~7组成。eg:0225、0124、-058

*十六进制整数  以0x开头,由0~9、A~F组成。eg:0x321、-0x99

*长整数  后面加大写L或小写leg:398L、0x99L

*无符号类型整数  后面加大写U或小写ueg:65U、0x43U、067u

(2).浮点数常量必须以十进制的形式出现,浮点数常量分为:

*小数形式  小数点必须写出来,如果其前或其后有零则可省略eg:1.0可以写成1.  、  0.12可以写成.12

*指数形式  十进制数+E(或e)+十进制整数。eg:1.97e5、3.65E9

(3).字符常量分为:

*普通字符常量  英文单引号引起来的字符。eg:'A'、'#'

*转义字符常量  英文单引号引起来,反斜杠开头。eg:'\#'、'\66'


8.关于变量

变量是在程序运行过程中其值可以改变的量,其名称必须使用标识符来标识。

变量根据数据类型可以分为整数变量、浮点数变量、字符变量等三种不同的变量类型;不同类型变量的存储空间

变量的三要素:变量名、存储空间、初始值

变量代表一个有名字的、具有特定属性的一个存储单元且变量必须先定义,后使用

(1).变量定义定义变量的本质是按照变量的数据类型给变量分配一定的存储空间;其格式为:

[存储类别][类型说明符] [变量1],[变量2],[变量3],...[变量n];  :存储类别在大多数使用情况下是不指明的,默认为auto类别。)

(2).变量赋值。变量只有通过赋值的方式才能使得变量的值有意义;赋值时必须使用赋值运算“=”;赋值的方式有两种,分别是先定义后赋值和在定义的同时赋值。

(3).常变量(一种特殊的变量)。变量在定义时,在类型说明符前加const说明符,表示改变量是一个常变量;与变量的相同点是都具有三要素即:变量名、存储空间、初始值;不同点是常变量必须在定义的同时赋值。并且在程序运行过程中其值不能改变,即体现出常量的性质。

常变量这种特殊的性质适用于某些经常使用的常数数值,例如圆周率Π

(4).符号常量#define)与常变量const)之间的区别。

a.在使用上

#include
#define PI 3.14
void main()
{
 const double r=10;
 double s;
 s=PI*r*r;
 printf("s=%lf",s);
 retuen 0;
}

两者的使用位置不同且使用方法不同。

b.在内存分配上,define是宏定义,程序在预处理阶段将用define定义的内容进行了替换。系统不为它分配内存。而const定义的常量在程序运行时在常数表中,系统为它分配内存。

c.在编译时类型检查上,define定义的常量在预处理时只是直接进行了替换,所以在编译时不能进行数据类型检验。而const定义的常变量在编译时进行严格的类型检验,可以避免出错。

9.关于字符串常量

字符串常量是用双引号括起来的字符序列,字符串常量是不可被修改的。

字符串常量在内存中的存放形式是连续存放字符的ASCII码值,并且在最末尾加一个结束标志'\0'字符。'\0'在ASCII码表也是一个字符,其值为0注:字符串"a"和字符'a'是不一样的。

C中有大量操作字符串的函数。(需要包含头文件)

eg:  strlen(s1);   返回字符串s1的长度(不含'\0').

       strcmp(s1,s2);   如果s1和s2是相同的,则返回;如果s1s2,则返回大于0。

 


你可能感兴趣的:(c语言,学习,c++)