第一章:简单的C程序设计
#include<stdio.h>
//预处理文件,“stdio.h”叫头文件,里面有函数的声明和宏定义
#include<stdlib.h>//这是C语言的标准库文件
int main(void)//这是函数的入口,是一定要有的
{
printf("hi\n");//函数调用
return 0;//返回值为0
}
小结
- 注释方式:
- // 为一行的注释,只能注释本行在本符号之后的内容
- /* */ 能注释掉中间的内容
- 主函数的()中可以无void
- \n 为换行符,能将光标移动到下一行开头,\r 类似,能将光标移动到本行开头
- 函数
- 程序功能注释块
- 预处理命令
- 主函数
- 函数头
- 函数体
- 声明(声明函数、定义变量)
- 赋值(变量初始化)
- 算法
- 输出
C语言常见的标识符号
1.关键字
2.标识符
- 系统预定义
- 用户自定义
- 英文字母、数字、下划线构成
- 不能是关键字
- 区分大小写
- 应具有一定含义
3.分隔符:“SPACE”“Tab”“ENTER”“;”
4.运算符号
- +、-、*、/ :加、减、乘、除
- % :取余,该双目运算符(两个操作数)两边的操作数一定为int(整数)
- 操作优先级:*、/、% 大于 +、-
- 输出表达格式:
printf("%d",1+2);
- 转义字符:如“\n”
- 格式控制符:*
- “%d”按照十进制输出
- “%c”按照字符输出
- “%x”按照十六进制输出
- “%f”按照浮点类型输出
C语言的数据类型
(1)字符型 char
- 表达形式:‘x’ 或 ASCII码值 链接:ASCII码表
- 存储形式:八位二进制(ASCII码)
- 赋值规则:
char c = 'c';
(2)整型 int
- 表达形式:整数
- 存储形式:4字节,32位,超过会溢出
- 赋值规则:
int i = 0;
(3)短整型 short
- 表达形式:整数
- 存储形式:2字节,16位,超过会溢出
- 赋值规则:
short i = 0;
(4)长整型 long
- 表达形式:整数
- 存储形式:4字节,32位,超过会溢出
- 赋值规则:
long i = 0;
(5)修饰符 signed有符号 unsigned无符号
(6)浮点型
- 表达形式:小数
- 存储形式:float:4字节;double:8字节
- 赋值规则:
float a = 0.1;
double b = 0.1;
格式化输出函数
printf(“格式化字符串”,参量表);
- 输出一个字符串
printf("I can output a string!");
- 格式化输出示例
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a=1;
float b=2.2;
char c='3';
printf("%d\n",a);
printf("%x\n",a);
printf("%f\n",b);
printf("%c\n",c);
printf("%d\n",c);
return 0;
}
- 输出多个数据
#include<stdio.h>
#include<stdlib.h>
int main()
{
char a='I';
int b=250;
printf("%c am not a %d\n",a,b);
return 0;
}
格式化输入函数
scanf(“格式化字符串”,参量表);
- 格式化输入示例
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a;
char b,c;
printf("Please Input a:");
scanf("%d",&a);
printf("Please Input b and c:");
scanf("%c%c",&b,&c);
printf("The number of a is:%d\n",a);
printf("The Data of b and c are:%c and %c\n",b,c);
return 0;
}
输入空格、回车、Tab代表输入结束。
- C语言书写规则
- 以分号为结束标志
- 书写格式自由
- {}划分段落
- //和/* */用来注释
简单的C程序扩展
例题:完成整数(包括求余)及浮点数的四则运算。
程序设计描述:
mermaid
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a,b;
float c,d;
printf("Please Input a and b:");
scanf("%d%d",&a,&b);
printf("Please Input c and d:");
scanf("%c%c",&c,&d);
printf("The number of a and b are:%d and %d\n",a,b);
printf("The number of c and d are:%f and %f\n",c,d);
printf("a+b is:%d\n",a+b);
printf("a-b is:%d\n",a-b);
printf("c*d is:%d\n",c*d);
printf("c/d is:%d\n",c/d);
printf("a%b is:%d\n",a%d);
return 0;
}
常见错误
- 数据类型不一致
- 数据溢出
- 运算后数据类型改变(应不变)
- 输入函数不加地址符
- double-%lf
拓展
-
%d:普通输出
%5d:数字宽度5,右对齐输出,长度不够左边补空格
%-5d:左对齐
%05d、%.5d、%0.5d:右对齐,长度不够左边补0 -
%u:打印unsigned int类型
-
bool类型:TRUE or FALSE
#define TRUE 1
#define FALSE 0
- 转义符示例
\b:退格
\r:返回本行开头
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a=1,b=2;
printf("%0.4d%d\n",a,b);
printf("%0.4d\b%d\n"a,b);
printf("%0.4d\r%d\n"a,b);
return 0;
}
- 可以尝试以十进制格式输出字符类型,输出的是ASCII码,以十六进制输出同理。
#include<stdio.h>
#include<stdlib.h>
int main()
{
char a='a';
printf("%c\n",a);
printf("%d\n",a);
printf("%x\n",a);
return 0;
}
##第一章完##
整理人:newenergy_freshman
整理时间:2021/5/14
基础部分参考:《C语言程序设计与应用》人民邮电出版社
拓展部分参考:《C Primer Plus》人民邮电出版社
本资料仅可作学习用,禁止用作商业用途,转载请注明出处。
如有错误敬请指正!谢谢!