C语言基础编程
将所有大于1小于m(m小于100)的非素数存入指定数组中,非素数的个数通过k传回。
[解决办法]
- C/C++ code
int sushu(int a[], int m){ int i,j,k=0; for(i=2;i<=m;i++) { for(j=2;j<=i/2;j++) if(i%j==0) break; if(j>i/2) { a[k++] = i; } } return k;}
[解决办法]
- C/C++ code
int sushu(int a[], int m){ int i,j,k=0; for(i=2;i<=m;i++) { for(j=2;j<=i/2;j++) if(i%j==0) break; if(j>i/2) { a[k++] = i; } } return k+1;}
[解决办法]
- C/C++ code
#include "stdafx.h"#include<stdio.h>#include <iostream> using namespace std;int getCompositeNumber(int result[100]){ int m, k=0; printf("Input a number less than 100: "); scanf("%d", &m); for(int i=2; i<=m; i++) { for(int j=2; j<i; j++) { if(i%j==0) { result[k++]=i; break; } } } return k;} int main(){ int i,value[100]; i=getCompositeNumber(value); for(int j=0; j<i; j++) cout << value[j] << endl; system("pause"); return 0;}
[解决办法]
- C/C++ code
#include <stdio.h>int isprime(int n){ int i; for(i=2;i*i<=n;++i) { if(n%i==0) { return 0; } } return 1;}int input(int prime[],int m){ int i,k; for(i=2,k=0;i<m;++i) { if(isprime(i)==0) { prime[k++]=i; } } return k;}int main(){ int m,k,i,prime[100]; scanf("%d",&m); k=input(prime,m); for(i=0;i<k;++i) { printf("%d\n",prime[i]); } return 0;}