给定三条边,请你判断一下能不能组成一个三角形。
#include<stdio.h>int main() {
int n;
float a, b, c; *边不一定为整形!!!*
scanf("%d", &n);
while (n--) {
scanf("%f%f%f", &a, &b, &c);
if (b + c > a&&a + b > c&&a + c > b) {
printf("YES\n");
}
else {
printf("NO\n");
}
}
return 0;
}
**输入一个英文句子,将每个单词的第一个字母改成大写字母。
**
#include<stdio.h>
int main() {
char a[100];
while (gets(a) != NULL) {
int i = 0;
a[0] = a[0] - 32;
while (a[i] != '\0') {
if (a[i] == ' ') {
a[i + 1] = a[i + 1] - 32;
}
i++;
}
puts(a);
}
return 0;
}
**给定两个正整数,计算这两个数的最小公倍数。 **
#include<stdio.h>int main() {
int m, n, t;
int x, y, p;
while (scanf("%d%d", &m, &n) != EOF) {
x = m;
y = n;
if (m < n) {
t = m;
m = n;
n = t;
}
while (n != 0) {
t = n;
n = m % n;
m = t;
}
p = x * y / m;
printf("%d\n", p);
}
return 0;
}
**在一个国家仅有1分,2分,3分硬币,将钱N兑换成硬币有很多种兑法。请你编程序计算出共有多少种兑法。 **
#include <stdio.h>
int main() {
int n;
int sum, i, t;
while (scanf("%d", &n) != EOF) {
sum = n / 3 + 1; *n / 3个3可换成1,就有n / 3种方法,加一种全为3的方法*
for (i = 0; i <= n / 3; i++) {
t = (n - 3 * i) / 2; *有0个3时,有几个2就有几种方法;有1个3时有几个2...依次累加*
sum = sum + t;
}
printf("%d\n", sum);
}
return 0;
}
Sample Input
青菜 1 2
罗卜 2 1.5
鸡腿 2 4.2
Sample Output
13.4
#include<stdio.h>
int main()
{
char s[100];
double n, m, sum = 0;
while (scanf("%s%lf%lf", s, &n, &m) != EOF) {
sum += n * m;
}
printf("%.1lf\n", sum);
return 0;
}
输入数据的第一行是一个整数C, 表示测试实例的个数,然后是C 行数据,每行包含一个整数n(1 < n <= 20), 表示参加抽奖的人数。
Output
对于每个测试实例,请输出发生这种情况的百分比,每个实例的输出占一行, 结果保留两位小数(四舍五入),具体格式请参照sample output。
Sample Input
1
2
Sample Output
50.00%
#include<stdio.h>
int main()
{
int c, n, j;
double sum, i, b;
long long a[21];
a[1] = 0;
a[2] = 1;
for (j = 3; j < 21; j++) {
a[j] = (j - 1)*(a[j - 1] + a[j - 2]);
}
scanf("%d", &c);
while (c--){
sum = 1;
scanf("%d", &n); *不太懂*
for (i = 1; i <= n; i++) {
sum = sum * i;
}
b = a[n] / sum * 100;
printf("%.2lf", b);
printf("%%\n"); *%%输出为%*
}
return 0;
}
(上网搜的) 装错信封问题(错排): 用A、B、C……表示写着n位友人名字的信封,a、b、c……表示n份相应的写好的信纸。把错装的总数为记作D(n)。假设把a错装进B里了,包含着这个错误的一切错装法分两类:
(1)b装入A里,这时每种错装的其余部分都与A、B、a、b无关,应有D(n-2)种错装法。
(2)b装入A、B之外的一个信封,这时的装信工作实际是把(除a之外的)n-1份信纸b、c……装入(除B以外的)n-1个信封A、C……,显然这时装错的方法有D(n-1)种。总之在a装入B的错误之下,共有错装法D(n-2)+D(n-1)种。a装入C,装入D……的n-2种错误之下,同样都有D(n-1)+D(n-2)种错装法,因此D(n)=(n-1)[D(n-1)+D(n-2)]