C语言编程题目~1

1、打印100~200之间的素数

这里推荐一篇文章,《素数求解的n种境界》,建议查看!

下面用 “试除法”来解决这道题目:

int main(){
	int i = 0;
	int count = 0;
	for (i = 100; i <= 200; i++){
		//优化1:将条件改为 i+=2,因为偶数不可能为素数,提高效率
		int j = 0;
		for (j = 2; j <= i; j++){	
			//优化2:将条件改为 j<i/2,最常用
			//优化3:将条件改为 j<sqrt(i),此函数是对i开平方
			//注意:此处改的条件在下面判断中也要改
			if (i%j == 0){
				break;
			}
			if (j > i){
				printf("%d", i);
				count++;
			}
		}
		printf("\n count = %d\n", count);
	}
	return 0;
}
2、打印九九乘法口诀表
int main(){
	int i = 0;
	for (i = 0; i < 9; i++){
		int j = 0;
		for (j = 0; j <= i; j++){
			printf("%d*%d=%-2d", i, j, i*j);
			// 2d右对齐   -2d左对齐
		}
		printf("\n");
	}
}
3、打印出1000~2000间所有的闰年
int main(){
	int year = 0;
	int count = 0;
	for (year = 1000; year <= 2000; year++){
		if ((year % 4 == 0 && year % 100 != 0)||(year % 400 == 0){
		// 使用逻辑运算符以缩短代码长度
			printf("%d ", year);
			count++;
		}
	}
	printf("\ncount = %d\n", count);
	return 0;
}

猜你喜欢

转载自blog.csdn.net/Hannah_Hsq/article/details/84555187
今日推荐