8 判读质数

目录

① if(a%2!=0 && a%3!=0 && a%4!=0)

② count

2. (一般)让计算机判断一个正整数是否为质数

3. 打印出一个数的所有约数

4. break-优化大师

① break用来提前终止for、while或者do-while

② switch-case 语句格式

根据学生成绩的等级打印出百分制分数段


1. (特殊)让计算机判断正整数5是否为质数

① if(a%2!=0 && a%3!=0 && a%4!=0)

#include<stdio.h>
int main()
{
	int a;
	a=5;
	if(a%2!=0 && a%3!=0 && a%4!=0)
		printf("质数");
	else
		printf("合数");
	return 0;
}

② count

通过增加一个变量count来记录a的约数数量,变量count的初始值为0,当a%2成立时说明2是a的约数,此时将count值加1;若到了最后count值仍然为0,说明之前的if判断都不成立,count不能被这些数字整除,count是质数,反之为合数。

#include<stdio.h>
int main()
{
	int a,count,i;
	count=0;
	a=5;
	for(i=2;i<=4;i++)
	{
		if(a%i==0)
			count++;
	}
	if(count==0)
		printf("质数");
	else
		printf("合数");
	return 0;
}

2. (一般)让计算机判断一个正整数是否为质数

#include<stdio.h>
int main()
{
	int a,count,i;
	count=0;
	printf("请输入您需要判断的数\n");
	scanf("%d",&a);
	for(i=2;i<=a-1;i++)
	{
		if(a%i==0)
			count++;
	}
	if(count==0)
		printf("质数");
	else
		printf("合数");
	return 0;
}

3. 打印出一个数的所有约数

#include<stdio.h>
int main()
{
	int a,count,i;
	count=0;
	printf("请输入您需要判断的数\n");
	scanf("%d",&a);
	for(i=2;i<=a-1;i++)
	{
		if(a%i==0)
			{ //这里的花括号不要忘记了! 
			count++;
			printf("%d ",i); //打印出约数 
			}
	}
	if(count==0)
		printf("质数");
	else
		printf("合数");
	return 0;
}

4. break-优化大师

① break用来提前终止for、while或者do-while

#include<stdio.h>
int main()
{
	int a,count,i;
	count=0;
	printf("请输入您需要判断的数\n");
	scanf("%d",&a);
	for(i=2;i<=a-1;i++)
	{
		if(a%i==0)
			{ //这里的花括号不要忘记了! 
			count++;
			break; //跳出for循环 
			}
	}
	if(count==0)
		printf("质数");
	else
		printf("合数");
	return 0;
}

② switch-case 语句格式

switch(表达式)

{  case  常量表达式1:语句1 ;break;

   case   常量表达式2:语句2 ;break;

   … …

   case   常量表达式n:语句n ;break;

   default:  语句n+1;

}

根据学生成绩的等级打印出百分制分数段

switch(grade )
 {
  	   case   'A' : printf("85-100\n");    /*分号不可少*/
                         break;
       case  'B' : printf("70-84\n");
                         break;
       case  'C' : printf("60-69\n");
                         break;
       case  'D' : printf("<60\n");
                         break;
       default : printf("error\n");
 }

输入学生的成绩score,按分数输出其等级

#include<stdio.h>
main()
{ 
	float score;  
 	int a;
  	printf("Input score(0~100):");
 	 scanf("%f",&score);
 	 a=score/10;/*除10非常必要*/
	  switch(a )
    {   
  	case 10:
    case 9: printf("Excellent!");
	          break;
	case 8: printf("Good!");
              break;
	case 7:printf("Right!");
              break;
	case 6: printf("Pass!");
              break;
	default:printf("Failed!");
	}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值