C语言程序设计(一)
该文章适合有基础的同学查看。
以下代码可在VC++6.0直接运行。
参考书籍为谭浩强的《C语言程序设计》清华大学出版社。
#include <stdio.h> //是用来提供标准输入输出的信息头文件
#include <math.h> //是用来提供数学函数的信息头文件
//----------------------------------------------------------------------------------------------------------
/*
程序:就是一组计算机能识别和执行的指令
流程:上机输入和编辑源程序(.c)->对源程序进行编译,得到目标程序(.obj)->将目标程序与库函数连接,得到可执行的目标程序(.exe)->运行科执行的目标程序
步骤:编辑、编译、连接、执行
*/
/*1*/
//----------------------------------------------------------------------------------------------------------
/*1.1*/
/*void main()
{
printf("世界,您好!\n");
}*/
//----------------------------------------------------------------------------------------------------------
/*1.2*/
/*void main(){ //c程序总是从main函数开始,且必须有,有且仅有一个
double x,s;
printf("input number:\n"); //"/n"是换行符
scanf("%lf",&x); //scanf标识输入函数
s = sin(x);
printf("sin of %lfis %lf\n",x,s);
}*/
/*//标识注释部分*/
//----------------------------------------------------------------------------------------------------------
/*1.3*/
/*int main (int a,int b);
main(){
int x,y,z;
int max(int a,int b); //声明部分:定义变量和调用函数(可有可无)
printf("input two number:\n");
scanf("%d,%d",&x,&y); //表示输入输出的格式字符串,%d十进制整数
z = max(x,y);
printf("maxnum=%d",z);
}
int max(int a, int b){ // int 函数类型 max函数名称 int a 函数参数类型和函数参数名
if(a>b)return a;else return b; //{}函数体
}
*/
//----------------------------------------------------------------------------------------------------------
/*2*/
/*数据在计算机中是以二进制形式存储的
----------------------------------------------------------------------------------------------------------
定义常量
#define 标识符 常量 是预处理命令 通常用大写辨识,而变量用小写
符号常量与变量不同,它的值在其作用域不能改变,也不能再被赋值
使用符号常量的好处是:
1.含义清除
2.能做到“一改全改”
*/
//----------------------------------------------------------------------------------------------------------
/*2.1*/
/*
#define PRICE 30
void main(){
int num,total;
num = 10;
total = num*PRICE;
printf("total = %d\n",total);
}
*/
/*
笔记:
----------------------------------------------------------------------------------------------------------
int k = 3;
int 变量的类型
k 变量的名称
3 变量的值
0x0010ff 变量的地址:放的内容是3(11)但是以二进制的形式保存
----------------------------------------------------------------------------------------------------------
在程序中是根据前缀来区分各种进制数的
----------------------------------------------------------------------------------------------------------
八进制:以0开头0~7 015->13 0101->65
十六进制:以0x/0X开头0~9 A~F/a~f 0X2A-> 42 0XA0->160
----------------------------------------------------------------------------------------------------------
1byte(字节)=8bit(位)
----------------------------------------------------------------------------------------------------------
正数的补码和原码相同
负数的补码:将该数的绝对值的二进制形式按位取反再加1
-10的补码:
10的原码 00001010
取反 11110101
-10的补码 11110110(第一位是符号位)
----------------------------------------------------------------------------------------------------------
整型变量的分类
*占多少字节跟系统和编译器规定有关
1.基本型 int 4字节
2.短整型 short int/short 4字节
3.长整型 long int/long 4字节
4.无符号型 unsigned
*/
//----------------------------------------------------------------------------------------------------------
/*2.2*/
//查看变量类型占用多少字节
/*
void main(){
printf("%d\n",sizeof(int));
}
*/
//----------------------------------------------------------------------------------------------------------
/*
变量定义形式
类型说明符 变量名标识符,变量名标识符....;
*/
//----------------------------------------------------------------------------------------------------------
/*2.3*/
/*
void main(){
int a,b,c,d;
unsigned u;
a=12;
b=-24;
u=10;
c=a+u;
d=b+u;
printf("a+u=%d,b+u=%d\n",c,d);
}
*/
/*2.4*/
//整型数据的溢出
/*
void main(){
short int a,b;
a=32767;
b=a+1;
printf("%d,%d\n",a,b); //32767,-32768(011111111111111111 , 1000000000000000)
}
*/
/*2.5*/
//类型转化
/*
void main(){
long x,y;
int a,b,c,d;
x=5;
y=6;
a=7;
b=8;
c=x+a;
d=y+b;
printf("c=x+a=%d,d=y+b=%d\n",c,d); //c=x+a=12,d=y+b=14
}
*/
/*
实型数据(浮点型)(4字节)(32位)(指数形式存储3.14=(符号+)+(小数部分.314)+(指数部分1))
形式:十进制小数形式和指数形式
1. 0.0、25.0、-2.3
2. 2E5=2*10*10*10*10*10
3f=3.
----------------------------------------------------------------------------------------------------------
实型变量分类
1.单精度(float)
2.双精度(double)
3.长双精度(long double)
*/
未完待续。。。。。。
欢迎大家关注