1.入门程序
#include <stdio.h> int main() { printf("Hello World!"); return 0; }
2.数据类型
数据类型:
1.基本数据类型:
1.1. 整型:int 4 个字节
1.2. 字符型:char 1 个字节
1.3. 实型(浮点型)
1.3.1.单精度型:float 4 个字节
1.3.2.双精度型:double 8 个字节
2.构造类型:
2.1.枚举类型
2.2.数组类型
2.3.结构体类型
2.4.共用体类型
3.指针类型:
4.空类型:
3.格式化输出语句
%d:十进制整数;
%c:单个字符;
%s:字符串;
%f:6位小数;
#include <stdio.h> int main() { int age = 18; float height = 1.85; char unit = 'm'; printf("小明今年%d岁\n", age); printf("小明身高%f%c\n", height, unit); printf("小明现在在慕课网上学习IT技术\n"); return 0; }
4.常量
值不发生改变的量成为常量;
定义字符常量(注意后面没有;)
#include <stdio.h> #define POCKETMONEY 10 //定义常量及常量值 int main() { printf("小明今天又得到%d元零花钱\n", POCKETMONEY); return 0; }
5.运算符
5.1.算数运算符:+,-,*,/,%,++,--;前++/--,先运算,再取值.后++/--,先取值,再运算;
5.2.赋值运算符:
5.3.关系运算符;
5.4.逻辑运算符;
5.5.三目运算符:
表达式1 ? 表达式2 : 表达式3;
6.水花仙数计算
输出所有三位数的水仙花数字
所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数,如:153就是一个水仙花数,153=111+555+333。
#include <stdio.h> int main() { //定义三位数num,个位数sd,十位数td,百位数hd int num, sd, td, hd; //循环所有三位数 for( num=100 ; num<1000 ; num++ ) { //获取三位数字num百位上的数字 hd = num/100 ; //获取三位数字num十位上的数字 td = num/10%10 ; //获取三位数字num个位上的数字 sd = num%10 ; //水仙花数的条件是什么? if(num ==hd*hd*hd+td*td*td+sd*sd*sd ) { printf("水仙花数字:%d\n", num); } } return 0; }
7.打印正三角形的*
#include <stdio.h> int main() { int i, j, k; for(i=1; i<5; i++) { /* 观察每行的空格数量,补全循环条件 */ for( j=i ; j<5 ; j++ ) { printf(" "); //输出空格 } /* 观察每行*号的数量,补全循环条件 */ for( k=0 ; k<2*i-1 ; k++ ) { printf("*"); //每行输出的*号 } printf("\n"); //每次循环换行 } return 0; }
8.臭名远扬的goto语句
很少使用
#include <stdio.h> int main() { int sum = 0; int i; for(i=1; i<=10; i++) { printf("%d\n", i); if(i==3){ goto LOOP;//满足条件就执行goto语句 } } //执行goto LOOP:printf("结束for循环了...."); //请选择合适位置添加标识符 return 0; }
9.形参与实参
形参:形参是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传入的参数;
实参:实参是在调用时传递该函数的参数。
函数的形参和实参具有以下特点:
形参只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只有在函数内部有效。函数调用结束返回主调函数后则不能再使用该形参变量。
实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值,以便把这些值传送给形参。因此应预先用赋值等办法使实参获得确定值。
在参数传递时,实参和形参在数量上,类型上,顺序上应严格一致,否则会发生类型不匹配”的错误。
10.函数返回值注意
注意:void函数中可以有执行代码块,但是不能有返回值,另void函数中如果有return语句,该语句只能起到结束函数运行的功能。其格式为:return;
11.递归
#include <stdio.h> int getPeachNumber(int n) //这里要定义n,要不编译器会报错! { int num; if(n==10) { return 1; } else { num = (getPeachNumber(n+1)+1)*2; printf("第%d天所剩桃子%d个\n", n, num); } return num; } int main() { int num = getPeachNumber(1); printf("猴子第一天摘了:%d个桃子。\n", num); return 0; }