文章目录
- 1. C工程创建
 - 1.1 基于Code::Blocks创建工程
 - 1.2 Code::Blocks界面设置
 
- 2. C语言程序组成
 - 2.1函数
 - 2.1.1 主函数
 - 2.1.2 其它函数
 - 2.1.3 如何执行定义好的函数
 
- 2.2 输出函数printf
 - 2.2.1 编译输出为exe可执行文件
 
- 2.3 C语言要求
 - 2.3.1 注释
 
- 2.4 C语言程序练习
 - 2.4.1 输出三角形
 - 代码1:
 - 代码2
 
- 2.4.2 输出无bug
 - 代码:
 
- 2.5 C语言中的关键字
 - 2.5.1 关键字
 - 2.5.2 关键字分类
 
- 2.5 标识符
 
参考:https://blog.csdn.net/weixin_44617968/article/details/117656810
1. C工程创建
1.1 基于Code::Blocks创建工程
打开开发工具 Code::Blocks
-  
创建新工程

 -  
在弹出的窗口中,选择Console Application(控制台应用程序)

 -  
创建一个C项目

 -  
设置项目名称为所在位置:

 -  
运行main.c
选择编译并运行

 
1.2 Code::Blocks界面设置
如果打开Code::Blocks,发现有些界面为空白,可以通过view进行显示需要显示的页面
 View–Perspectives–Code::Blocks default
 
2. C语言程序组成
2.1函数
2.1.1 主函数
手机APP中的每一个功能如“打电话”,“发短信”等等,就相当于C语言程序中的一个程序段(函数),每个功能要顺序执行,如先开机,才能打电话,开机就是一起执行的基础。
 C语言程序也一样,由众多功能组成,这个先执行的程序段称之为"主函数"。主函数有且只有一个,没有主函数,程序无法运行。主函数是系统运行是自动调用的,其它函数需要手动调用。主函数有固定书写的格式和范写
如果没有主函数,进行编译会报错
c:\Program Files\CodeBlocks\MinGW\bin\..\lib\gcc\x86_64-w64-mingw32\8.1.0\..\..\..\..\x86_64-w64-mingw32\lib\..\lib\libmingw32.a(lib64_libmingw32_a-crt0_c.o):crt0_c.c:(.text.startup+0x2e)||undefined reference to `WinMain'|
 
出现这种情况表示C代码中不存在入口函数,即 main() 函数,请为你的C程序添加 main() 函数;
int main(int argc, char* argv[])
{
  return 0;
}
 
主函数定义的格式:
int 代表函数执行之后会返回一个整数类型的值
main 代表这个函数的名字叫做main
() 代表这是一个函数
{} 代表范围
return 1; 代表函数执行完之后返回整数1
2.1.2 其它函数
其它函数定义的格式 与主函数一致 只是函数名不一样
int oFunction() {
    printf("%d",1);
    return 1;
}
 
2.1.3 如何执行定义好的函数
int main()
{
  oFunction(); // 调用了函数
  return 0;
}
int oFunction() {
    printf("%d",1);
    return 1;
}
 
2.2 输出函数printf
使用printf函数输出要输出的内容
printf();
 
报错:
D:\cplusproject\cproject\main.c|8|error: too few arguments to function ‘printf’|
表示 函数’printf’|的参数太少
添加字符串参数后调用:
  printf("字符串1\n");
  printf("字符串2\n");
 
\n表示换行
如何引用printf函数,可以通过
#include <stdio.h> 
 
printf函数的参数格式:
%[flags][width][.precision][length]specifier,
 
即:%[标志][最小宽度][.精度][类型长度]说明符 [5] 。转换说明详解见下文。
附加参数 – 根据不同的 format 字符串,函数可能需要一系列的附加参数,每个参数包含了一个要被插入的值,替换了 format 参数中指定的每个 % 标签。参数的个数应与 % 标签的个数相同。
输出函数格式
 
2.2.1 编译输出为exe可执行文件
代码 demo1208.c
#include <stdio.h>
#include <windows.h>
int main()
{
    printf("字符串1\n");
    printf("字符串2\n");
    Sleep(10000);
    return 10;
}
 
如果通过
 gcc demo1208.c -o demo1208
如果提示错误
demo1208.c:3:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
main()
表示当前的main函数前没有添加int返回值类型,只需要把主函数
int main()
{
}
 
即可
2.3 C语言要求
2.3.1 注释
单行注释
// 被注释内容
多行注释
/* 被注释内容 */
注释的应用场景:
思路分析
说明变量
函数说明
C语言中,每条完整的语句均使用 ; 结尾
C语言中,中文只能出现在注释或字符串中
一个C语言程序有且只有一个main函数,main函数前面的int可以不写或者换成void,其中return 0可以不写
代码记得加注释 //
2.4 C语言程序练习
2.4.1 输出三角形
  *
 ***
*****
 
代码1:
void main()
{
    printf("  *  \n");
    printf(" *** \n");
    printf("*****\n");
}
 
代码2
printf("  *  \n *** \n*****\n");
 
2.4.2 输出无bug
代码:
#include <stdio.h>
#include <windows.h>
void main()
{
char log[] = "\
                         _oo0oo_\r\n\
                        o8888888o\r\n\
                        88\" . \"88\r\n\
                        (| -_- |)\r\n\
                        0\\  =  /0\r\n\
                      ___/`---'\\___\r\n\
                    .' \\\\|     |// '.\r\n\
                   / \\\\|||  :  |||// \r\n\
                  / _||||| -:- |||||- \r\n\
                 |   | \\\\\\  - /// |   |\r\n\
                 | \\_|  ''\\---/''  |_/ |\r\n\
                 \\  .-\\__  '-'  ___/-. /\r\n\
               ___'. .'  /--.--\\  `. .'___\r\n\
            .\"\" '<  `.___\\_<|>_/___.' >' \"\".\r\n\
           | | :  `- \\`.;`\\ _ /`;.`/ - ` : | |\r\n\
           \\  \\ `_.   \\_ __\\ /__ _/   .-` /  /\r\n\
       =====`-.____`.___ \\_____/___.-`___.-'=====\r\n\
                         `=---='\r\n\
\r\n\
       ~~~~~~~~~~~~~~~~~~~~无bug~~~~~~~~~~~~~~~~~~~\r\n\
\r\n ";
printf("%s",log);
}
 
注意下C语言中的类型特点
2.5 C语言中的关键字
2.5.1 关键字
关键字就是保留字:
一共32个。
全部都是小写
在开发工具中会显示特殊颜色,比如Code::Blocks中为蓝色
关键字不能用作变量名、函数名等

2.5.2 关键字分类

2.5 标识符
标识符是用来给变量,函数起名字的,和人类的名字差不多,为了方便识别变量和函数,标识符要有一定的规范,避免出现大家都叫曹的情况发生。
标识符命名规则–编译器可以通过
只能由字母(a~z、 A~Z)、数字、下划线组成 a_6
不能包含除下划线以外的其它特殊字符串 a+6
不能以数字开头 6a
不能是C语言中的关键字 do
标识符严格区分大小写
标识符命名规范–名字起的好
见名知意: a 不合适 studentName比较合适
驼峰命名: 驼峰命名法 是指 构成标识符时,第一个单词以小写字母开始;第二个单词的首字母大写.
例如:userName、userLoginName这样的变量名称看上去就像驼峰一样此起彼伏
问题如果一个变量用来接收学生的年龄,定义这个变量吧:
int studentAge;
int a; // 对比
                



















