C语言程序介绍

来源:互联网 发布:java int 乘法 编辑:程序博客网 时间:2024/05/23 15:07

讲解第一个 C 语言程序”HelloWorld”:

include<stdio.h>int  main(){    printf(“helloworld\n”);    return0;}

(1).#include//头文件:其作用是包含我们所需要的库函数 printf();

include“max.h”//”“从自己写的文件中找到max.h

(2).对于 main 函数来说,是所有函数的入口,每一个可执行程序有且仅有一个 main 函数,返回值为 int,但是对于 main 函数来说,可以不写 return0;其他自己实现的函数,必须如果有返回值,那么一定要写 return。

(3).printf()函数,分别打印各种类型是所需要的格式化符不一样。

(4).每一个程序在从源码到执行所需要的过程:

.c/.cpp 预编译——.i 编译——.s 汇编——.obj 链接——.exe

什么是变量,当计算机接收个变量后计算机干了什么?

例如:inta=10;计 算机会分配 4 个字节给变量存储 10,且是二进制。在定义变量的时候,变量必须先定义后使用,定义变量必须使用标识符,即字母数字下划线,且不能以数字开头。

ASCII码:

ASCII 的取值范围为什么是 0-127,因为为了提高代码的可移植性。

无符号取值范围是 0-255;有符号的取值范围-128-127。

两个取值范围的交集就是 0-127, 所以 ASCII 的取值范围正好在这个地方。

注:0-48 A-65 a-97

输入输出格式说明符

%f 输出 double 数据

%s 输出字符串

%x16 进制 X:字母大写

%08x 打印 8 位 16 进制

%c:输出字符

%i:可以自动将输入的八进制(或者十六进制)转换为十进制

%e:以指数形式输出浮点数,其中 e 分为大小写

%E:大写

%u:表示按unsigned int格式输入或输出数据

%o:以无符号八进制输出整数

大小端存放问题:

当我们把每一位都填好后发现,转换位 16 进制之后为:0x41480000.

而在我们计算机底下存储的却是:0x00004841.
进制转换

大小端存放

大端——高尾端,小端——低尾端

小端:低地址放低数据:PC Inter

大端:低地址放高数据:手机,网络

使用指针判断大小端存放问题:

    #include<stdio.h>      int main()      {          int a = 1;          char * p = (char*)&a;          if (*p == 1)          {              printf("little-endian");          }          else          {              printf("big-endian");          }          return 0;      } 

如果小端方式中(i占至少两个字节的长度)则i所分配的内存最小地址那个字节中就存着1,其他字节是0;大端的话则1在i的最高地址字节处存放。char是一个字节,所以强制将char型量p指向i则p指向的一定是i的最低地址,那么就可以判断p中的值是不是1来确定是不是小端。

什么是算法

解决一个问题而采取的方法和步骤,就称为“算法”,对同一个问题,可以有不同的解题方法和步骤,为了有效地进行解题,不仅需要保证算法正确,还要考虑算法的质量,选择合适的算法。

重点 1:为什么不提倡用 scanf()
因为会造成在输入完成后敲回车无法输入进去

如果:scanf(“%d%d\n”,&a,&b)运行程序会发生什么?

重点 2:为什么要写成一个功能函数? 可以套用函数方便使用

求两个值得最大值?依赖求两个数的最大值求三个数的最大值?

原创粉丝点击