Exercise 1

1求一元二次方程的解。
2打印出1000年到2000年之间的润年。
3打印出九九乘法表。
4求出100到200之间的素数。
//求一元二次方程的解,涉及知识点浮点数与0的比较方法
#include<stdio.h>
#include<Windows.h>
#include<math.h>
#define EXP 0.0000000001//精度
#pragma warning(disable:4996)//禁止报错

int main()
{
	float a, b, c;
	printf("Please Enter<a*x^2+b*x+c=0的三个系数a,b,c>:\n");
	scanf("%f%f%f", &a, &b, &c);
	if (a < EXP && a>-EXP)//浮点数的判别方法相当于 0==a
	{
		printf("不是一元二次方程!\n");
	}
	else
	{
		float d = b*b - 4 * a*c;
		if (d<EXP && d>-EXP)//0==d
		{
			printf("%f%f\n", -b / (2 * a), -b / (2 * a));
		}
		else if (d > EXP)//d>0
		{
			printf("%f%f\n", (-b + sqrt(d)) / (2 * a), \
				(-b - sqrt(d)) / (2 * a));
		}
		else
		{
			printf("无解\n");
		}

	}
	system("pause");
	return 0;
}
/*
//求1000年到2000年之间的闰年
#include<stdio.h>
#include<Windows.h>

int main()
{
	int i;
	// int c=0;
	for (i = 1000; i <= 2000; i++)
	{
		if ((i % 4 == 0) && (i % 100 != 0) || (i % 400 == 0))
		{
			//c++;
			printf("%5d", i);
		}
		// if (0 == c % 10)
		//{
		//printf("\n");
		//}
	}
	system("pause");
	return 0;
}/*
//打印出九九乘法表
#include<stdio.h>
#include<Windows.h>
int main()
{
	int i, j;
	for (i = 1; i <= 9; i++)
	{
		for (j = 1; j <= i; j++)
			printf("%d*%d = %-4d", i, j, i*j);
		printf("\n");
	}
	system("pause");
	return 0;
}

//100-200的素数四种方法
/*#include<stdio.h>
#include<Windows.h>
#include<math.h>

int is_sushu(int d)
{
	//1
	int i;
	for (i = 2; i <= d - 1; i++)
	//{
	//	if (0 ==d%i)
	//	{
	//		return 0;
	//	}
	//}
	//2
	//for (i = 2; i <= d / 2; i++)
	//{
	//	if (0 == d%i)
	//	{
	//		return 0;
	//	}
	//}
	//3
	for (i = 2; i <= sqrt(d); i++)
	{
		if (0 == d%i)
		{
			return 0;
		}
	}
	return 1;
}

int main()
{
	int i;
	for (i = 101; i <= 200; i += 2)
	{
		if (is_sushu(i) == 1)
		{
			printf("%4d\n", i);
		}
	}
	system("pause");
	return 0;
}
*/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值