1、计算分段函数的值
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <math.h>
int main()
{
double x,y=0;
scanf("%lf",&x);
if(x<=0)
{
printf("error!\n");
return 0;
}
if(0<x&&x<1)
{
y=log10(x);
}
else if(1<=x&&x<6)
{
y=sqrt(2*x+3);
}
else if(x>=6)
{
y=pow(x,5)+3*pow(x,3);
}
printf("y=%.4f\n",y);
return 0;
}
2、三个整数排序
【问题描述】从键盘输入3个整数,要求按由小到大输出
【输入形式】三个整数
【输出形式】由小到大排列的三个整数
【样例输入】47,109,78
【样例输出】47,78,109
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <math.h>
int main()
{
int a,b,c,t;
scanf("%d,%d,%d",&a,&b,&c);
if(a>b)
{
t=a;
a=b;
b=t;
}
if(a>c)
{
t=a;
a=c;
c=t;
}
if(b>c)
{
t=b;
b=c;
c=t;
}
printf("%d,%d,%d\n",a,b,c);
return 0;
}
3、判断闰年
【问题描述】输入年份,判断并输出该年是否为闰年。
【输入形式】从键盘输入年份
【输出形式】输出该年份是否为闰年
【样例输入】1990
【样例输出】1990 is not leap year
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <math.h>
int main()
{
int year;
scanf("%d",&year);
if((year%400==0)||(year%4==0&&year%100!=0))
{
printf("%d is leap year\n",year);
}
else
{
printf("%d is not leap year\n",year);
}
return 0;
}
4、判断是星期几
【问题描述】
从键盘输入一个天数(正整数),根据这个正整数与7的余数来判断属于星期几。余数1为星期一,2为星期二,3为星期三,4为星期四,5为星期五,6为星期六,0为星期日,当输入的数字非法时提示“error!”。
【输入形式】一个正整数:天数
【输出形式】星期几
【样例输入】8
【样例输出】Monday
【样例说明】样例2
输入:-1
输出:error!
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <math.h>
int main()
{
int day,a;
scanf("%d",&day);
if(day<=0)
{
printf("error!");
}
else
{
a=day%7;
switch(a)
{
case 1: printf("Monday\n");break;
case 2: printf("Tuesday\n");break;
case 3: printf("Wednesday\n");break;
case 4: printf("Thursday\n");break;
case 5: printf("Friday\n");break;
case 6: printf("Saturday\n");break;
case 0: printf("Sunday\n");break;
}
}
return 0;
}
5、简单计算器程序
【问题描述】
简单计算器程序。要求根据用户从键盘输入的表达式:
操作数1 运算符OP 操作数2
计算表达式的值,指定的算术运算符OP为加(+)、减(-)、乘(*)、除(/),
输出计算结果。要求 用switch语句实现以上功能。
如,输入:3+2↙
输出:3.00+2.00=5.0000
提示:操作数定义为实型数据
【输入形式】
操作数1 运算符OP 操作数2
指定的算术运算符为加(+)、减(-)、乘(*)、除(/)
如输入:3+2↙
【输出形式】
表达式及值,如输出:3.00+2.00=5.0000
【样例输入】4+90
【样例输出】4.00+90.00=94.0000
【样例说明】
样例2:
输入:50/0
输出:error,devide by zero?
样例3:
输入:3a4
输出:Not four formulas
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <math.h>
int main()
{
double a,b;
char c;
scanf("%lf%c%lf",&a,&c,&b);
if(b==0)
{
printf("error,devide by zero?");
}
else
{
switch(c)
{
case('+'):printf("%.2f+%.2f=%.4f\n",a,b,a+b);break;
case('-'):printf("%.2f-%.2f=%.4f\n",a,b,a-b);break;
case('*'):printf("%.2f*%.2f=%.4f\n",a,b,a*b);break;
case('/'):printf("%.2f/%.2f=%.4f\n",a,b,a/b);break;
default:printf("Not four formulas\n");break;
}
}
6、高速公路超速处罚
【问题描述】
按照规定,在高速公路上行驶的小型车,超出本车道限速10%以下的(不包括10%,下同),处警告; 超速10%低于20%的,罚款200元,扣3分; 超速20%低于50%的,罚款500元,扣6分; 超速50%的,罚款1000元,一律吊销机动车驾驶证。
请编程判断如何对驾驶员进行处罚。
输入高速公路上机动车车速与车道限速值,根据超速情况输出以下信息:
Normal speed
Warning,you have overspeeded
Overspeed,fine 200 yuan,received 3 points
Overspeed,fine 500 yuan,received 6 points
Overspeed,fine 1000 yuan,revoking the driving license”
提示:超速百分比=(车速-限速值)/限速值×100
【输入形式】高速公路上机动车车速与车道限速值
【输出形式】根据超速情况输出相应的处理结果
【样例输入】100,80
【样例输出】Overspeed,fine 500 yuan,received 6 points
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <math.h>
int main()
{
double x,y,z;
scanf("%lf,%lf",&x,&y);
z=(x-y)/y*100;
if(x<=y)
{
printf("Normal speed\n");
}
else if(z<10)
{
printf("Warning,you have overspeeded\n");
}
else if(10<=z&&z<20)
{
printf("Overspeed,fine 200 yuan,received 3 points\n");
}
else if(20<=z&&z<50)
{
printf("Overspeed,fine 500 yuan,received 6 points\n");
}
else
{
printf("Overspeed,fine 1000 yuan,revoking the driving license\n");
}
return 0;
}