栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言实例(五)素数

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言实例(五)素数

C语言实例(36~40)
    • 36.计算一个数是否可为两个素数之和
      • (1)代码
      • (2)运行结果
    • 37.实现简单的计算器
      • (1)代码
      • (2)运行结果
    • 38.将 1~100 的数据以 10x10 矩阵格式输出(表格形式输出数据)
      • (1)代码
      • (2)运行结果
    • 39.等差数列输出 10x10 矩阵格式
      • (1)代码
      • (2)运行结果
    • 40.乘法运算格式输出数据
      • (1)代码
      • (2)运行结果

36.计算一个数是否可为两个素数之和 (1)代码
#if 0
#include 
#include 
// 判断素数(大于1的自然数中除了1和它本身,在没有其他的因数)
int checkPrime(int n)
{
	int i, isPrime = 1;
 
    for(i = 2; i <= n/2; ++i)
	{
		if(n % i == 0)//n不能被2-n/2之间的数给整除
		{
			isPrime = 0;//不是素数就置为0
			break;
		}
	}
	return isPrime;
}

int main()
{
	int n, i, flag = 0;
 
    printf("输入正整数: ");
    scanf("%d", &n);
 
    for(i = 2; i <= n/2; ++i)
	{
		// 检测判断
		if (checkPrime(i) == 1)//i + (n-i) = n,因为计算的是一个数是否可为两个素数之和
		{
			if (checkPrime(n-i) == 1)
			{
				printf("%d = %d + %dn", n, i, n - i);
				flag = 1;//可以分为两个素数的和时,将flag置为1.
			}
		}
	}
	if (flag == 0)
		printf("%d 不能分解为两个素数。", n);
	system("pause");
	return 0;
}
#endif
(2)运行结果

37.实现简单的计算器 (1)代码
#if 0
#include 
#include 
int main() 
{
	char operat;
    double firstNumber,secondNumber;
 
    printf("输入操作符 (+, -, *,/): ");
    scanf("%c", &operat);
 
    printf("输入两个数字: ");
    scanf("%lf %lf",&firstNumber, &secondNumber);
 
    switch(operat)
	{
		case '+':
            printf("%.1lf + %.1lf = %.1lfn",firstNumber, secondNumber, firstNumber + secondNumber);
            break;
 
        case '-':
            printf("%.1lf - %.1lf = %.1lfn",firstNumber, secondNumber, firstNumber - secondNumber);
            break;
 
        case '*':
            printf("%.1lf * %.1lf = %.1lfn",firstNumber, secondNumber, firstNumber * secondNumber);
            break;
 
        case '/':
            printf("%.1lf / %.1lf = %.1lfn",firstNumber, secondNumber, firstNumber / secondNumber);
            break;
 
        //操作符不是+, -, *, /
		default:
            printf("Error! operator is not correct");
    }
	system("pause");
	return 0;
}
#endif
(2)运行结果

38.将 1~100 的数据以 10x10 矩阵格式输出(表格形式输出数据) (1)代码
#if 0
#include 
#include 
int main() 
{
	int i, j, count;
	//确定行数
	for(i = 1; i <= 10; i++) 
	{
		//打印列的数据,一列一列打印
		for(j = i; j <=100; j += 10 )
			printf(" %3d", j);
		printf("n");
	}
	system("pause");
	return 0;
}
#endif
(2)运行结果

39.等差数列输出 10x10 矩阵格式 (1)代码
#if 0
#include 
#include 
int main() 
{
	int i, j, count;
	int start, end;
 
	start = 2, end = 10;
	
	//确定行数,和每一行第一个数据
	for(i = start; i <= end; i++) 
	{
		count = i;
		//一行10个数
		for(j = 1; j <= 10; j++) 
		{
			//数为count*j,count是每一行第一个数,j是第几列。
			printf(" %3d", count*j);
		}
		printf("n");
	}
	system("pause");
	return 0;
}
#endif
(2)运行结果

40.乘法运算格式输出数据 (1)代码
#if 1
#include 
#include 
int main() 
{
	int i, j, n;
	n = 3;
	j = 1;
   
	//i+=n <--> i=i+n  <--> 上次的结果+3(3,6,9,...)
	for(i = n; i <= (n*10); i+=n) 
	{
		printf("%3d  x %2d  =  %3dn", n, j, i);
		j++;
	}

	
	system("pause");
	return 0;
}
#endif
(2)运行结果

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/847022.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号