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;
}