C语言练习第3天---期末练习题

1.输入三角形边长,求三角形面积。

三角形面积:(海伦公式)(p=(a+b+c)/2)
s=sqrt[p(p-a)(p-b)(p-c)]

#include<stdio.h>
int main() 
{
	float a,b,c;
	float s,p;
	printf("请输入三角形三边长:");
	scanf("%f%f%f",&a,&b,&c);
	 p=(a+b+c)*0.5;
	 s=sqrt(p*(p-a)*(p-b)*(p-c));//开根
	 printf("三角形的面积为:%f",s);	
	 
return 0;
}

sqrt()用来求给定值的平方根

sqrt()的返回值为double类型

2.编写一个整数,按如下分段函数求对应的值 。

#include<stdio.h>
int main() 
{
	int x,y;
	printf("请输入x的值:"); 
	scanf("%d",&x);
	if(x>=5)
	{
	y=3*x+1;
	printf("%d",y);	
	}
	if(x>=0&&x<5)
	{
		y=x*x*x-1;
		printf("%d",y);	
	}
	if(x<0)
	{
		y=x*x-1;
		printf("%d",y);	
	}
	
	 
return 0;
}
#include<stdio.h>
int main() 
{
	int x,y;
	printf("请输入x的值:"); 
	scanf("%d",&x);
	if(x>=5)
	{
	y=3*x+1;
	printf("%d",y);	
	}
	else if(x>=0&&x<5)
	{
		y=x*x*x-1;
		printf("%d",y);	
	}
	else 
	{
		y=x*x-1;
		printf("%d",y);	
	}
	
	 
return 0;
}

3.输入一个字符,如果是大写字母转换为对应的小写字母输出;如果是小写字母,则转换为对应的大写字母输出;若是其他字符则保持不变输出 。

#include<stdio.h>
int main() 
{
	char ch;
	printf("请输入一个字符:");
	scanf("%c",&ch);
	if(ch>='a'&&ch<='z')
	{
		printf("%c",ch-32);
	 } 
	 else if(ch>='A'&&ch<='Z')
	 {
	 	printf("%c",ch+32);
	 }
	 else
	 {
	 	printf("%c",ch);
	 }
	
	 
return 0;
}

大写字母和小写字母的ASCII码值相差32(小写字母ASCII码值大)。

4.假如某月的1日是星期三,那么输入该月中的日期(设该月有30天),要求输入对应的星期,如输入3,则输出Friday 。

#include<stdio.h>
int main() 
{
int x;
printf("请输入一个日期:");
scanf("%d",&x);
 if(x<0||x>30)
 {
 	printf("输入有误!\n");
  } 
  if(x%7==1)
  {
  	printf("Wednesday\n");
  }
  if(x%7==2)
  {
  	printf("Thursday\n");
  }
  if(x%7==3)
  {
  	printf("Friday\n");
  }
  if(x%7==4)
  {
  	printf("Saturday\n");
  }
  if(x%7==5)
  {
  	printf("Sunday\n");
  }
  if(x%7==6)
  {
  	printf("Monday\n");
  }
  if(x%7==0)
  {
  	printf("Tuesday\n");
  }
	 
return 0;
}

以此类推,找到规律,对7取余,余数不同,星期不同。

 5.编写程序输出半径为1--15的圆的面积,若面积在30--100之间则予以输出,否则,不输出。

#include<stdio.h>
int main() 
{
  int r;
  double s;
  for(r=1;r<=15;r++)//依次输入半径1--15
  {
  	s=3.14*r*r;//圆的面积
       if(s>=30&&s<=100)//判断圆面积是否在规定范围内
	   {
	   	printf("%lf  ",s);
		 }  
  }
   
	 
return 0;
}

 6.输出2000--2400之间的闰年。

#include<stdio.h>
int main()
{
	int i;
	for(i=2001;i<2400;i++)
	{
		if(i%4==0&&(i%100!=0)||i%400==0){
			printf("%d  ",i);
		}
	}
	return 0;
	
 }

 7.输入一个整数n,实现n的阶乘。

#include<stdio.h>
int main()
{
	int n,i,sum;
	scanf("%d",&n);
for(i=1;i<=n;i++)
{
	sum=sum*i;
}
printf("%d\n",sum);
return 0;	
	
 } 

8.从键盘获取三个整数,从大到小输出这3个数字 。

#include<stdio.h>
int main()
{
	int a,b,c,n,t,i;
	printf("请输入三个整数:"); 
	scanf("%d%d%d",&a,&b,&c);
	if(a>b)
	{
		n=a;
		i=b;
	}
	else
	{
		n=b;
		i=a;
	}
	if(n>c)
	{
		t=n;
	}
	else
	{
		t=c;
	}
	printf("%d %d %d",t,n,i);
	return 0;
}

 比较a,b的大小,得到较大的一个数,并将其赋值给n,再比较n,c的大小,将较大的一个数赋值给t.

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

万能的憨憨^

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值