C语言练习-if语句

练习1:三角形判断

描述:

KiKi想知道已经给出的三条边a,b,c能否构成三角形,如果能构成三角形,判断三角形的类型(等边三角形、等腰三角形或普通三角形)。

输入描述:

题目有多组输入数据,每一行输入三个a,b,c(0<a,b,c<1000),作为三角形的三个边,用空格分隔。

输出描述:

针对每组输入数据,输出占一行,如果能构成三角形,等边三角形则输出“Equilateral triangle!”,等腰三角形则输出“Isosceles triangle!”,其余的三角形则输出“Ordinary triangle!”,反之输出“Not a triangle!”。

#include <stdio.h>

int main() {
    int a, b, c;
    while (scanf("%d %d %d", &a, &b, &c) != EOF) {
        if(a+b>c && a+c>b && b+c>a){
            if(a==b && a==c && b==c){
                printf("Equilateral triangle!\n");
            }
            else if(a==b || b==c || a==c){
                printf("Isosceles triangle!\n");
            }
            else {
                printf("Ordinary triangle!\n");
            }
        }
        else{
            printf("Not a triangle!\n");
        }
    }
    return 0;
}

练习2: 

题目名称:分数求和

题目内容:计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值,打印出结果

int main()
{
	double sum = 0;
	int flag = 1;
	for (int i = 1; i <= 100; i++)
	{
		sum = sum + 1.0*flag / i;
		flag = -flag;

	}
	printf("%lf\n", sum);
	return 0;
}

注意点: 为了获得小数,需要注意定义类型、输出类型。要1.0 / i 才能除出小数

练习3:  

题目名称:数9的个数

题目内容:编写程序数一下 1到 100 的所有整数中出现多少个数字9

int main()
{
	int count = 0;
	for (int i = 1; i <= 100; i++) 
	{
		if (i % 10 == 9)
		{
			count++;
		}
		if (i / 10 == 9)
		{
			count++;
		}
	}
	printf("%d\n", count);

}

 需要注意的是两个 if 的使用,本题是计算有多少个9,所以99的情况需要计算两次,不能使用 else if

练习4:  

题目名称:打印闰年

题目内容:打印1000年到2000年之间的闰年

闰年判断的规则:

1.能被4整除并且不能被100整除是闰年

2.能被400整除是闰年

int main()
{
	int year = 0;
	scanf("%d", &year);
	if ((year % 4 == 0) && (year % 100 != 0) || (year%400 == 0))
	{
		printf("闰年");
	}
	else printf("no闰年");

}

练习5:  

题目名称:求最大值

题目内容:求10 个整数中最大值

int main()
{
	int arr[10] = { 1,3,5,7,2,4,9,10,8,3 };
	int max = arr[0];
	int length = sizeof(arr) / sizeof(arr[0]) - 1;
	for (int i = 1; i < length; i++) 
	{
		if (max < arr[i])
		{
			max = arr[i];
		}

	}
	printf("max = %d\n", max);

}

主要用的是遍历思想 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值