《算法竞赛入门经典》第1章 习题
1 表达式11111*11111的值是多少?把5个1换成6个1呢?9个1呢?
习题1-1 平均数(average)
输入3个整数,输出它们的平均值,保留3位小数。
1 #include <stdio.h> 2 3 int main() 4 { 5 int a1, a2, a3; 6 7 scanf("%d%d%d", &a1, &a2, &a3); 8 printf("%.3f\n", (a1 + a2 + a3) / 3.0f); 9 10 return 0; 11 }
习题1-2 温度(temperature)
输入华氏温度f,输出对应的摄氏温度c,保留3位小数。提示:c=5(f-32)/9。
1 #include <stdio.h> 2 3 int main() 4 { 5 float f; 6 7 scanf("%f", &f); 8 printf("%.3f\n", 5.0*(f-32)/9.0); 9 return 0; 10 }
习题1-3 连续和(sum)
输入正整数n,输出1+2+...+n的值。提示:目标是解决问题,而不是练习编程。
1 #include <stdio.h> 2 3 int main() 4 { 5 int n; 6 7 scanf("%d", &n); 8 printf("%d\n", n*(n+1)/2); 9 10 return 0; 11 }
习题1-6 偶数(odd)
输入一个整数,判断它是否为偶数。如果是,则输出“yes”,否则输出“no”。提示:可以用多种方法判断。
1 #include <stdio.h> 2 3 int main() 4 { 5 int n; 6 7 scanf("%d", &n); 8 (n % 2) ? printf("no\n") : printf("yes\n"); 9 10 return 0; 11 }
习题1-8 绝对值(abs)
输入一个浮点数,输出它的绝对值,保留两位小数。
习题1-10 年份(year)
输入年份,判断是否为闰年。如果是,则输出“yes”,否则输出“no”。提示:简单的判断除以4的余数是不够的。