目录
1、筛选法求素数
代码:
#include<stdio.h> #include<malloc.h> int main() { //存储数字 int n = 0; while (scanf("%d", &n) != EOF) { int *p = (int *)malloc(sizeof(int)*n); for(int i = 0;i<n;i++) { p[i] = i+1; } //前面的i为列举的除数 for(int i = 2;i<n;i++) { for(int j = i;j<n;j++) { if(p[j]%i==0) { p[j] = 0; } } } int count = 0; for (int i = 1; i < n; i++) { if (p[i] != 0) { printf("%d ", p[i]); } else { count++; } } printf("\n%d",count); } return 0; }
2、包含数字9的数
代码:
要充分考虑包含数字9的数,包含数字9的数是指某一位是9的数!
#include<stdio.h> int main() { int i = 0; int count = 0; for(i = 1;i<2020;i++) { int m = i; while(m) { if(m%10==9) { count++; break; } m/=10; } } printf("%d",count); return 0; }
3、有序序列判断
代码:
#include<stdio.h> int main() { int n = 0; scanf("%d",&n); int arr[50]= {0}; int flag1=0;//升序 int flag2=0;//降序 for(int i = 0;i<n;i++) { scanf("%d",&arr[i]); if(i>0) { if(arr[i]>arr[i-1]) flag1 = 1; else flag2 = 1; } } if((flag1+flag2)==1) { printf("sorted\n"); } else { printf("unsorted\n"); } }