C语言 DLUT 作业三

本文介绍了C语言实现的几个实用功能,包括计算n天后的星期,简化版代码,成绩转换,简单计算机的两个版本,日期验证,三角形分类及面积,以及体重指数计算。这些内容涵盖了日期逻辑、算术运算、数据转换和基础数学应用。
摘要由CSDN通过智能技术生成

C语言 DLUT 作业三

啥都不说了直接来

1、n天后的星期

#include<stdio.h>
int main()
{
	int i,n,m;
	printf("输入今日星期几(1~7):\n");
	scanf("%d",&m);
	printf("输入天数n:\n");
	scanf("%d",&n);
	while(n>=7)
	{
        if(n%7==0)
	    {
		    printf("n天后为星期%d",m);
		    break;
	    }
 	    else
	    {
		    i=n%7;
		    if(i+m<=7)
			{
				printf("n天后为星期%d",i+m);
			    break;
			}  	
			else
			{
				printf("n天后为星期%d",i+m-7);
			    break;
			}	
	    }
	}
	while(n>=0&&n<7)
	{
		if(n+m<=7)
		{
			printf("n天后为星期%d",n+m);
			break;
		}
		else
		{
			printf("n天后为星期%d",n+m-7);
			break;
		}		
	}
	while(n<=-7)
	{
		if(n%7==0)
		{
		    printf("n天后为星期%d",m);
		    break;
	    }
	    else
	    {
	    	i=n%7;
			if(m+i>0)
			{
				printf("n天后为星期%d",m+i);
				break;
			}
			else
			{
				printf("n天后为星期%d",7+m+i);
				break;
			} 
		}
	}
	while(n>-7&&n<0)
	{
		if(n+m>0)
		{
			printf("n天后为星期%d",n+m);
			break;
		}
		else
		{
			printf("n天后为星期%d",7+m+n);
			break;
		}
	}
	return 0;
}

2、n天后的星期精简版

#include<stdio.h>
int main()
{
	int i,n,m;
	printf("输入今日星期几(1~7):\n");
	scanf("%d",&m);
	printf("输入天数n:\n");
	scanf("%d",&n);
	if(n>=7)
	{
		do
		{
			n-=7;
		}while(n>=7);
		m=n+m-7;
	}
	if(n<7&&n>=0)
	{
		if(m+n>7)
		m=m+n-7;
		else
		m=m+n;
	}
	if(n<=-7)
	{
		do
		{
			n+=7;
		}while(n<-7);
		m=7+n+m;	
	}
	if(n>-7&&n<0)
	{
		if(m+n>0)
		m=m+n;
		else
		m=7+m+n;
	}
	printf("n天后为星期%d",m);
	return 0;
}

3、成绩转换

#include<stdio.h>
int main()
{
	double score;
	int i; 
	char level,c;
	printf("输入等级按1,输入分数按2\n");
	scanf("%d",&i);	
	getchar();                  /*去除回车影响*/ 
	if(i==1)
	{
		printf("输入等级(大写):\n");
		scanf("%c",&level);
		switch(level)
		{
			case'A':
				printf("分数85~100(包括端点)\n");
				break;
			case'B':
			    printf("分数70~85(包括70)\n");
				break;
			case'C':
			    printf("分数60~70(包括60)\n");
			case'D':
			    printf("分数0~60(包括0)\n");
			default:
			    printf("输入错误\n");		
		}
	}
	else if(i==2)
	{
		printf("输入分数:\n");
		scanf("%lf",&score);
		if (score>=85&&score<=100)
           printf("A\n");
        else if(score>=70)
           printf("B\n");
        else if(score>=60)
           printf("C\n");
        else if(score>=0)
           printf("D\n");
        else
           printf("输入错误"); 
	}
	else
	{
		printf("输入错误"); 
	}
	return 0;
}

4、简单计算机1

#include<stdio.h>
int main()
{
	float a,b,d,e;
	char c,p,q;
	e=1;
while(e==1)
{
	printf("输入a,c,b:\n");
	scanf("%f%c%f",&a,&c,&b);
	if(c=='+')
	{
		d=a+b;
		printf("d=%f",d);
	}
	else if(c=='-')
	{
		d=a-b;
		printf("d=%f",d);
	}   
	else if(c=='*')
	{
		d=a*b;
		printf("d=%f",d);
	}       
	else if(c=='/')
	{
		d=a/b;
		printf("d=%f",d);
	}      
	else
	{
	    printf("输入运算符错误");
	}
	printf("\nDo you want to continue(Y/N or y/n)?\n");
	q=getchar();
	scanf("%c",&p);
	//printf("p=%c",p);
	if(p=='Y'||p=='y')
	{
		e=1;
	} 
	else
	{
		e=0;
	}  
}		    
  return 0;	   
}

5、简单计算机2

#include<stdio.h>
int main()
{
	float f;
	int a,b,d;
	char c;
	printf("输入操作数1(不超过10000):\n");
	scanf("%d",&a);
	printf("输入运算符(+、-、*、/):\n");
	scanf("%c",&c);
	c=getchar();
	printf("输入操作数2(不超过10000):\n");
	scanf("%d",&b);
	if(a>10000||b>10000)
	{
		printf("输入操作数大于10000");
		return 0;
	} 
	switch(c)
	{
		case'+':
			f=a+b;
			break;
		case'-':
			f=a-b;
			break;
		case'*':
			f=a*b;
			break;
		case'/':
		    f=a/b;
		    break;
		default:
		   printf("输入运算符错误");
		   break; 
	}
	printf("f=%f",f);
return 0;	
}

6、年月日

#include<stdio.h>
int main()
{
	int year,month,day;
	printf("输入年,月,日\n");
	scanf("%d%d%d",&year,&month,&day);
	if(year<=0)
	{
		printf("输入年错误\n");
	}
	else
	{
		printf("输入年有效");
		printf("%d\n",year);
	}
	if(month<=0||month>12)
	{
		printf("输入月错误\n");
	}
	else
	{
		printf("输入月有效");
		printf("%d\n",month);
	}
	if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)
	{
		if(day<=0||day>31)
		{
		 	printf("输入日错误\n"); 
		}
		else
		{
			printf("输入日有效");
			printf("%d\n",day);
		}
	}
	else if(month==4||month==6||month==9||month==11)
	{
		if(day<=0||day>30)
		{ 
			printf("输入日错误\n");			     
		}
		else
		{
			printf("输入日有效");
			printf("%d\n",day);
		}
	}
	else if(month==2)
	{
		if(year%4==0&&year%100!=0||year%400==0)
		{
			if(day<=0||day>29)
			{
				printf("输入日错误\n");				 
			}
			else
		    {
			    printf("输入日有效",day);
			    printf("%d\n",day);
		    }
		}
	    else
	    {
			if(day<=0||day>28)
			{
				printf("输入日错误\n");				     
			}
			else
		    {
			    printf("输入日有效",day);
			    printf("%d\n",day);
		    }
		}
		
		
	}
	return 0;
}

7、三角形面积与类型

#include<stdio.h>
#include<math.h>
int main()
{
	int i;
	double t,a[3],max,mid,min;
	printf("输入三角形边长:\n");
	for(i=0;i<3;i++)
    {
     	scanf("%lf",&a[i]);
    }
    for(i=0;i<2;i++)
    {
	    if(a[i]>a[i+1])
	    {
	    	t=a[i];
		    a[i]=a[i+1];
		    a[i+1]=t;
	    }
    }
    max=a[2];
    mid=a[1];
    min=a[0];
	float q,p,s;
	if(min+mid<=max)
	{
		printf("三角形不存在\n"); 
	}
	else
	{
	    if(max==min&&max==mid)
	    {
			printf("该三角形为等边三角形\n"); 
        }
		    
		if(max==mid||min==mid)    
		{
		    printf("该三角形为等腰三角形\n"); 
		}   
	    q=min*min+mid*mid-max*max;
	    if(q>0)
	    {
     	    printf("该三角形为锐角三角形\n"); 
	    }
		else if(q==0)
		{
			printf("该三角形为直角三角形\n");
		}
		else
		{
			printf("该三角形为钝角三角形\n"); 
		}
	    p=(max+mid+min)/2;
	    s=sqrt(p*(p-max)*(p-mid)*(p-min));
	    printf("三角形面积为:\n%lf",s);
	}
	return 0;
}

8、体脂数

#include<stdio.h>
int main()
{
	double k,l,t;
	printf("输入您的身高(m):\n");
	scanf("%lf",&l);
	printf("输入您的体重(kg)\n");
	scanf("%lf",&k);
	t=k/(l*l);
	printf("您的体脂数为:\n%lf\n",l);
	if(t<=0)
	{
		printf("输入有误"); 
	}
	else if(t<18&&t>0)
	{
		printf("偏瘦,使劲吃"); 
	}
	else if(t>=18&&t<=25)
	{
		printf("标准身材,不错呦");
	}
	else if(t>25&&t<27)
	{
		printf("超重体重");
	}
	else
	{
		printf("肥胖,别再吃了");
	}
	return 0;	
} 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

残夜.寒

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

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

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

打赏作者

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

抵扣说明:

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

余额充值