顺序与分支结构 c博客作业二

| 这个作业属于哪个班级 | 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)随机数的建立

  1. 头文件要加上#include<stdlib.h>include<time.h>
  2. 建立随机数种子srand(time(0))
  3. 对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,&center,&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\n", 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进行数据的调试。

错误经过调试后发现“回车\n”也算字符在内,修改后结果如下

  • 单步调试用来发现错误地方,是解决问题的不二手段
posted @ 2020-11-08 22:50  此处应该有名字  阅读(99)  评论(0编辑  收藏  举报