c语言第二次作业

一,PTA实验作业

题目一:计算分段函数【2】

1.实验代码

double x,result;
	
	scanf("%lf",&x);
	if(x>=0){
		result=sqrt(x);
	}
	else{
		result=pow(x+1,2)+2*x+1/x;
	}
	printf("f(%.2f) = %.2f\n",x,result);
	
	return 0;

2.设计思路

  • 1.定义变量x,result。
  • 2.使用if-else语句来描述表达式。
  • 3.按题目要求输出。

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

这道题没遇到大问题,是最基本的输出语句没按题目要求,导致错误,及时发现改正了。

4.本题PTA提交列表

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

1.实验代码

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

2.设计思路

  • 1.定义变量area,s,perimeter。
  • 2.写出能构成三角形的三条边长度条件,作为if语句的条件。
  • 3.写出三个变量对应的三条表达式,输出答案。
  • 4.不满足if条件的输出题目要求语句。

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

不懂的如何将三角形的构成条件写成表达式,靠自己思考得到答案,同时上网求证,其次都是一些小错误,因为最后的那条语句没写对,所以在这题停滞了很久。

4.本题PTA提交列表

三:出租车计价

1.实验代码

        int minute,m;
	double x,money;
	
	scanf("%lf%d",&x,&minute);
	m=minute/5*2;
	if(x>10){
		money=24+3*(x-10)+m;
	}
	else if(x>=3&&x<=10){
		money=10+2*(x-3)+m;
	}
	else 
		money=10+m;
	printf("%.f\n",money);
	
	return 0;

2.设计思路

  • 1.定义整形变量minute表示乘客停车时间,定义浮点型变量x,money分别表示里程和费用。
  • 2.用if-else语句分别写出三种条件下的三个表达式。
  • 3.输出答案

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

一开始用了表达式写的很杂糅,所以总写错,后来我提炼出了一个m,又把输出语句统一到了最后,将表达式变得简单了点,还有if语句内的条件没写对,把x=3这个点给编到了最后一个else里。

4.本题PTA提交列表

题目四:程序设计联考

1.实验代码

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

2.设计思路

  • 1.定义整形变量account,m。
  • 2.用m将account的十万位数字提炼出来
  • 3.使用switch语句,判断m的值,按题目要求输出答案

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

这道题没有大错误,都是输错符号的小错误。

4.本题PTA提交列表

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

PTA排名

三:本周学习总结

1.我学会了什么?

  • 1.学会了一个新的标识符char,以及一些新的逻辑运算符如&&,||等。
  • 2.学会了一个新的switch语句,同时已经能够较熟练的运用它。
  • 3.注意设置一些更好一点的自定义变量名,在表达式描写方面应该也多了一些熟练。

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

不是非常理解char这个标识符,书上说表示变量接受从键盘输入的一个字符,似懂非懂。

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

我目前面对的困难一是面对一道题的时候,反应太慢,无法快速想到很好很有效的编程;二是当我写出了编程后,我总发现自己的编程太过杂糅,类似定义的变量名太多,表达式太多之类,会比别人复杂了点;三是犯的小错误太多,学艺不精或者比较粗心。解决办法我觉得依然要多做题,并且还应该多看看语法书,避开小错误。

posted @ 2017-10-25 20:12  一叶落而秋将至  阅读(283)  评论(4编辑  收藏  举报