这个作业属于哪个班级 | C语言--网络2011/2012 |
---|---|
这个作业的地址 | C博客作业00--顺序分支结构 |
这个作业的目标 | 初步认识C语法,掌握数据表达、printf、scanf语法及分支结构内容 |
0.展示PTA总分
顺序结构
分支结构
1.本章学习总结
1.1学习内容总结
1)数据类型
整形 | 位数 | 范围 |
---|---|---|
short | 16bit | -215~215-1 |
int | 32bit | -231~-231-1 |
long | 64bit | -263~263-1 |
浮点型 | 字节数 | 格式化输入 |
---|---|---|
float | 4 | %f |
double | 8 | %lf |
字符类 | 字节数 | 格式化输入 |
---|---|---|
char | 1 | %c |
char[] | / | %s |
2)* if else与switch case的运用
if(条件){执行语句}
else if(){}
...
else{}
case 1(或者'字符'):语句;break;
case 2:语句;break;
...
default:语句;
- do while 与 while 与 for循环
do(循环体}
while(条件)//先执行一次后循环
{循环体} //先判断条件后循环
{循环体}
- 能用while循环的一定可以转化为for循环,反之亦然。
3)随机数的建立
- 头文件要加上#include<stdlib.h>和include<time.h>
- 建立随机数种子srand(time(0))
- 对rand()取余
4)函数
- 头文件include<math.h>
- pow函数的调用pow(x,n)
- sqrt(x)函数
- 绝对值fabs(x)函数
- 指数exp(x)函数
- 以e为低的对数log(x)函数
等等
1.2 编程技巧总结
Ep 1:寻找中间数
int main(){
int max,center,min;
int temp;
scanf("%d %d %d",&max,¢er,&c);
if(max<center){
temp=max;
max=center;
center=temp;
} if(max<min){
temp=max;
max=min;
min=temp;
} if(center<min){
temp=center;
center=min;
min=temp;
}printf("%d",center);
return 0;
}
Ep 2: 计算油费
int main(){
int oil;
char service;
int type;
double put;
scanf("%d %d %c",&oil,&type,&service);
switch(type){
case 90:
put=6.95*oil;
break;
case 93:
put=7.44*oil;
break;
case 97:
put=7.93*oil;
break;
}
if(service=='m'){
put=put*0.95;
}else{
put=put*0.97;
}
printf("%.2f",put);
return 0;
}
Ep 3:找出三位水仙花数
#include<math.h>
int main() {
int m, n;
int i;
int a, b, c;
int count = 0;
scanf("%d %d", &m, &n);
if (m < 100 || m>999 || n < 100 || n>999 || m > n) {
printf("Invalid Value.");
}
else {
for (i = m; i <= n; i++) {
a = i % 10;
b = i / 10 % 10;
c = i / 100;
if (pow(a, 3) + pow(b, 3) + pow(c, 3) == i) {
printf("%d
", i);
count++;
}
}
if (count == 0) {
printf("");
}
}return 0;
}
1.3学习体会
之前每次遇到新题无从下手,现在学会了数据表达、数据处理,设置合理的变量名。切记逻辑理顺后在下手,“不可写一点是一点”!现在代码量提高了一点,写起代码不像暑假那么蹩脚,深刻意识到多练才能提升!
对老师的意见:脚步慢一点。。
前俩周的代码量:30左右道题吧
2.PTA实验作业
2.1 前天是哪天
- 数据处理
int year,month,day
用分支结构(switch)
- 代码量太多,思路错乱导致第一次结果出错。应该学习更方便的代码。
2.2 和字符型数据处理有关的题目(油费计算)
- 数据处理
油量 double oil;
油种类 int type;
服务类型 char service;
油费 double result。
方式:运用if else以及switch case罗列不同情况。 - 代码截图
- PTA提交列表及说明
注意字符service=m,m要加单引号!
2.3 介绍单步调试如何检查错误
- 以统计字符为例
- 也可以手动printf进行数据的调试。
错误经过调试后发现“回车 ”也算字符在内,修改后结果如下
- 单步调试用来发现错误地方,是解决问题的不二手段