zoukankan      html  css  js  c++  java
  • C语言第二次博客作业---分支结构

    题目1:计算分段函数

    1.实验代码

    {
    	double y,x;
    	scanf("%lf",&x);
    	if(x>=0){
    		y=pow(x,0.5);
    	}
    	else{
    		y = pow(x+1,2) + 2*x + 1/x;
    	}
    

    2 设计思路

    • 定义浮点型变量x与y
    • 输入x的值
    • 若x>0则y=pow(x,0.5),否则 y = pow(x+1,2) + 2*x + 1/x
    • 输出y

    3.本题调试过程碰到问题及解决办法

    • 本题调试过程中没有问题

    4.本题PTA提交列表

    题目2: 输出三角形面积和周长

    1.实验代码

    {
    	int a,b,c;
    	double s,arer,perimeter;
    	scanf("%d%d%d",&a,&b,&c);
    	s=(a+b+c)/2.0;
    	arer=sqrt(s*(s-a)*(s-b)*(s-c));
    	perimeter=a+b+c;
    	if(a+b>c&&a+c>b&&b+c>a){
    		printf("area = %.2f; perimeter = %.2f
    ",arer ,perimeter);
        }
    	else{
    	printf("These sides do not correspond to a valid triangle");
        }
    	return 0;
    }
    

    2 设计思路

    • 定义整型变量三角形的3条边a、b、c和浮点型变量面积area 周长 perimeter 与s //s=a+b+c/2.0
    • 输入a,b,c的值
    • 若a+b>c&&b+c>a,则area=pow(​s(s−a)(s−b)(s−c),0.5),perimeter=a+b+c,输出结果;否则输出These sides do not correspond to a valid triangle

    3.本题调试过程碰到问题及解决办法

    • 判断三角形是否能成立时,采用a+b>c//a+c>b。
    • 经过调试发现无论a,b,c三个值怎么样,都可以输出结果,认真看一下代码,才发现应该把//改成&&。

    ​##4.本题PTA提交列表

    题目3:出租车计价

    1.实验代码

    {
    	int t;
    	double s,a,b,sum;
    	scanf("%lf%d",&s,&t);
    	if(s<=3){
    		a=10;
        }
    	else if(s<=10){
    	a=10+2*(s-3);
        }
        else{
    	a=24.0+3.0*(s-10);
    	}
        if(t<5){
        b=0;
    	}
    	else{
    		b=t/5*2;
    	}
    	sum=a+b;
    	printf("%.0f",sum);
    	return 0;
    }
    

    2 设计思路

    • 定义整型变量路程s,时间t,a,b,sum //a为公里的费用,b为等待时间的费用
    • 输入时间和路程
    • 若起步里程为3公里,则a=10;若超起步里程后10公里内,a=10+2(s-3);若超过10公里则 a=24.0+3.0(s-10)。若等待时间<=5则b=0,否则b=0.4*t
    • sum =a+b
    • 输出结果

    3.本题调试过程碰到问题及解决办法

    • 在输入12.5 与9时输出结果为35,与答案不一样
    • 经过调试在发现a的结果老是为整数与定义类型不一样,经过翻查课本才理解整数/整数=整数这句话。
      ​##4.本题PTA提交列表

    题目4:程序设计联考

    1.实验代码

    {
    	int first,n;
    	scanf("%d",&n);
    	first=n/100000;
    	switch(first){
    		case 1:
    			printf("Hunan Agricultural University");
    			break;
    		case 2:
    		  printf("Jishou University");
    		  break;
    		case 3:   
    		  printf("Huaihua University");
    			break; 
    		case 4:
    		 	printf("Aerospace University");
    		 	break;
    	  case 5:
    		  printf("Ocean University");
    			break;  
    	  default:
    		  printf("Other University");
    			break; 	
    	}
    	return 0;
    }
    

    2 设计思路

    • 定义两个整型变量first ,n //first表示第一个数字
    • 输出数字n
    • 若 1则输出Hunan Agricultural University,2输出Jishou University,3输出Huaihua University,4输出Aerospace University,5输出Ocean University,若不清楚学校代号是哪个学校,则输出"OtherUniversity"。

    3.本题调试过程碰到问题及解决办法

    • 本题在调试时没有发现明显错误,经过一番思考,觉的是结果错误,所以直接将题目中的结果复制黏贴到代码中,结果就正确了。

    4.本题PTA提交列表

    二、截图本周题目集的PTA最后排名。

    三、本周学习总结

    1.你学会了什么?

    • 我学会了if-else语句和switch语句
    • 学会了如何求余数的方法

    2.本周的内容,你还不会什么?

    • 基本已经会了,但是对于if-else语句中的加括号与不加括号不是很理解。

    3.你碰到什么困难,打算如何解决?

    • 有时候pta显示部分正确,我一般都会尝试自己在Dev上调试,自己解决,实在解决不了在请教室友。

    ​​

  • 相关阅读:
    快速排序
    fedora 配置
    while与do while
    switch选择结构
    if选择结构
    java有参
    java猜拳
    java类的无参方法
    java类与对象
    java数组
  • 原文地址:https://www.cnblogs.com/guobaoqing/p/7722272.html
Copyright © 2011-2022 走看看