| 这个作业属于哪个班级 | C语言--网络2011/2012 |
| ---- | ---- | ---- |
| 这个作业的地址 | C博客作业03--函数 |
| 这个作业的目标 | 学习如何设计函数、C语言基本数据类型 |
| 姓名 | 吴俊豪 |
1. 本章学习总结:
1.1 函数定义、调用及声明
这里直接上例子:
#include<stdio.h>
int maxnum(double total, double price);//函数声明
int main(void)//主函数
{
double t, p;
int max;
scanf("%lf %lf", &t, &p);
max = maxnum(t, p);//函数调用
printf("%d", max);
return 0;
}
int maxnum(double total, double price)//函数定义
{
int max;
max = (total) / (price)+0.000001;
return max;
}
1.2 全局变量、局部变量、静态局部变量
变量类型 |
使用范围 |
生存周期 |
全局变量 |
整个程序 |
整个程序 |
局部变量 |
定义的函数内 |
函数的开始到结束 |
静态局部变量 |
定义的函数内 |
整个程序 |
1.3 C数据类型及注意点
名称 |
类型名 |
数据长度 |
取值范围 |
扩展 |
有符号-整型 |
int |
32位 |
(-231)~[(231)-1] |
无 |
有符号-短整型 |
short[int] |
16位 |
(-215)~[(215)-1] |
无 |
有符号-长整型 |
long[int] |
32位 |
(-231)~[(231)-1] |
无 |
无符号-整型 |
unsigned [int] |
32位 |
0~[(2^32)-1] |
无 |
无符号-短整型 |
unsigned short [int] |
16位 |
0~[(2^16)-1] |
无 |
无符号-长整型 |
unsigned long [int] |
32位 |
0~[(2^32)-1] |
无 |
字符型 |
char |
8位 |
0~255 |
若在输入时误读取了前面的空格或换行符,可在%c前加\n来吸收空格或换行符 |
单精度浮点型 |
float |
32位 |
约±[10(-38)~(1038)] |
浮点误差:当数值在数据长度范围内却出现最后一位或两位数值不正确 |
双精度浮点型 |
double |
64位 |
约±[10(-308)~(10308)] |
解决浮点误差办法:1.加上一个足够小的数; 2.控制精度范围.参考
|
1.4 C运算符
C运算符符号总结 学习体会:对于常见的运算符使用起来还是比较熟练的,但使用一些偏一点的运算符还是要提前再看看,不能死记硬背,应该多用多会.
2.1 模块流程图
流程图仅表示思路,不代表代码最终品质.
2.2 函数功能及全局变量介绍
2.2.1 全局变量
static int total = 0;//计算题目总数
static int count = 0;//计算答对题目数
2.2.2 菜单相关函数
void OperateMenu();//游戏操作界面
void GradeOneMenu();//一年级
void GradeTwoMenu();//二年级
void GradeThreeMenu();//三年级
截图:
游戏总操作界面:
年级操作界面(以二年级为例):
思路:清屏后printf出操作界面并提示输入
2.2.3 出题相关函数(还是拿二年级为例)
搭配的函数:
2.3 运行结果截图,测试用例。
(依然拿二年级为例)
图片中依次为:计算式->用户输入答案->系统判断并给出提示->(正确答案)->准确率展示.
2.4 大作业中编程技巧总结
(1)控制两个数相加时和不超过100:
num1 = 100 - (rand() % 100);
num2 = num1 - (rand() % num1);
sum = num1 + num2;
(2)控制两个数相除结果为整数
num2 = 1+rand() % 9;
num1 = num2 * (1 + rand() % 10);
sum = num1 / num2;
(3)输出随机鼓励语句
if(yoursum == sum)
{
count++;
int j;
j = rand() % 4;
switch (j)
{
case 1:
printf("好耶!\n");
break;
case 2:
printf("起飞!\n");
break;
case 3:
printf("针不戳!\n");
break;
}
}
代码提交课堂派(已完成)
|
请发表评论