2003 求绝对值
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Problem Description
求实数的绝对值。
Input
输入数据有多组,每组占一行,每行包含一个实数。
Output
对于每组输入数据,输出它的绝对值,要求每组数据输出一行,结果保留两位小数。
Sample Intput
123
-234.00
Sample Output
123.00
234.00
Submit
#include<stdio.h>
#include<math.h>
int main()
{
double a ,b;
while(scanf("%lf", &a) != EOF)
{
b = fabs(a);
printf("%.2lf\n", b);
}
return 0;
}
2004 成绩转换
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Problem Description
输入一个百分制的成绩t,将其转换成对应的等级,具体转换规则如下:
90~100为A;
80~89为B;
70~79为C;
60~69为D;
0~59为E;
Intput
输入数据有多组,每组占一行,由一个整数组成。
Output
对于每组输入数据,输出一行。如果输入数据不在0~100范围内,请输出一行:“Score is error!”。
Sample Intput
56
67
100
123
Sample Output
E
D
A
Score is error!
Submit
#include<stdio.h>
int main()
{
double grade;
while(~scanf("%lf", &grade))
{
if(grade < 0 || grade > 100)
printf("Score is error!\n");
else if(grade >= 0 && grade < 60)
printf("E\n");
else if(grade >= 60 && grade < 70)
printf("D\n");
else if(grade >= 70 && grade < 80)
printf("C\n");
else if(grade >= 80 && grade < 90)
printf("B\n");
else if(grade >= 90 && grade <= 100)
printf("A\n");
}
return 0;
}
2005 第几天?
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Problem Description
给定一个日期,输出这个日期是该年的第几天。
Intput
输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的。
Output
对于每组输入数据,输出一行,表示该日期是该年的第几天。
Sample Input
1985/1/20
2006/3/12
Sample Output
20
71
Submit
#include<stdio.h>
int is_rui(int year)
{
if(year % 4 == 0 && year % 100 != 0)
return 1;
else if(year % 400 == 0)
return 1;
else
return 0;
}
int days(int year, int month)
{
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
return 31;
break;
case 2:
if(is_rui(year)) return 29;
else return 28;
break;
case 4:
case 6:
case 9:
case 11:
return 30;
break;
default:
return -1;
}
}
int main()
{
int year, month, day;
int i;
while(~scanf("%d/%d/%d", &year, &month, &day))
{
int count = 0;
for(i = 1; i < month; ++i)
{
count += days(year, i);
}
count += day;
printf("%d\n", count);
}
return 0;
}
2006 求奇数的乘积
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Problem Description
给你n个整数,求他们中所有奇数的乘积。
Intput
输入数据包含多个测试实例,每个测试实例占一行,每行的第一个数为n,表示本组数据一共有n个,接着是n个整数,你可以假设每组数据必定至少存在一个奇数。
Output
输出每组数中的所有奇数的乘积,对于测试实例,输出一行。
Sample Intput
3 1 2 3
4 2 3 4 5
Sample Output
3
15
submit
#include<stdio.h>
int main()
{
int n, a;
while(~scanf("%d", &n)){
int count = 1;
while(n--){
scanf("%d", &a);
if(a % 2 == 1)
count = count * a;
}
printf("%d\n", count);
}
return 0;
}