求一个100到150条的C语言程序

求一个100到150条的C语言程序,第1张

#include<stdioh>

int main()

{

int i=0;

int count=0;

for(i=0;i<=100;i++)

{

int j=0;

for(j=2;j<=i;j++)

{

if(i%j==0)

{

break;

}

}

if(i==j)

{

count++;

printf("%d ",i);

}

}

printf("\ncount=%d\n",count);

return 0;

}

解题思路:

素数,就是除了1和他本身,不能被其他数整除的数字。答案就是用100到200之间的每个数字,除以2到其本身前面的那一个数字,如果此过程中出现整除的现象,则该数不是素数。如果没有整除的现象,则该数为素数输出。

扩展资料:

质数又称素数。一个大于1的自然数,除了1和它自身外,不能整除其他自然数的数叫做质数;否则称为合数。

质数的个数是无穷的。欧几里得的《几何原本》中有一个经典的证明。它使用了证明常用的方法:反证法。具体证明如下:假设质数只有有限的n个,从小到大依次排列为p1,p2,……,pn,设N=p1×p2×……×pn,那么,  是素数或者不是素数。

如果 为素数,则 要大于p1,p2,……,pn,所以它不在那些假设的素数集合中。

参考资料:

百科-素数质数

#include<stdioh>

#include<mathh>

int shu(long unsigned num) //判断一个数是否素数

{

int t,i;

t=sqrt(num)+1;

for(i=2;i<t;i++)

{

if(num%i==0)

break;

}

return i==t;

}

int main()

{

int i,k=0,n=100; //求3至100间的素数

for(i=3;i<n;i++)

if(shu(i))

{

k++;

printf("%3d ",i); //是的话,计数器加1,并按三位数形式打印输出

if(k%5==0)printf("\n"); //5个数一行

}

printf("\nsum:%d\n",k);

}

附输出结果:

003 005 007 011 013

017 019 023 029 031

037 041 043 047 053

059 061 067 071 073

079 083 089 097

sum:24

一元多项式的表示和相加

#include <stdioh>

#include <stdlibh>

typedef struct LNode{

int coef;

int expn;

struct LNode next;

}Polynomial;

void CreatePolyn(Polynomial& p,int n);

void AddPolyn(Polynomial pa,Polynomial pb,Polynomial& pc);

void SubPolyn(Polynomial pa,Polynomial pb,Polynomial& pc);

void PrintPolyn(Polynomial p);

int main()

{

Polynomial pa,pb,pc;

int n;

scanf("%d",&n);

CreatePolyn(pa,n);

scanf("%d",&n);

CreatePolyn(pb,n);

//PrintPolyn(pa);

//PrintPolyn(pb);

AddPolyn(pa,pb,pc);

PrintPolyn(pc);

return 0;

}

void CreatePolyn(Polynomial& p,int n)

{

p=(Polynomial)malloc(sizeof(struct LNode));//头节点

p->next=NULL;

for(;n>0;n--)

{

Polynomial s=(Polynomial)malloc(sizeof(struct LNode));

scanf("%d %d",&s->coef,&s->expn);

//寻找插入位置

Polynomial pi=p;

while(pi->next&&pi->next->expn>s->expn)pi=pi->next;

//插入新节点

s->next=pi->next;

pi->next=s;

}

}

void AddPolyn(Polynomial la,Polynomial lb,Polynomial& lc)

{

lc=(Polynomial)malloc(sizeof(struct LNode));

lc->next=NULL;

Polynomial pa=la->next;

Polynomial pb=lb->next;

Polynomial pc=lc;

while(pa&&pb)

{

Polynomial s=(Polynomial)malloc(sizeof(struct LNode));

if(pa->expn>pb->expn)

{

s->coef=pa->coef;

s->expn=pa->expn;

pa=pa->next;

}

else if(pa->expn<pb->expn)

{

s->coef=pb->coef;

s->expn=pb->expn;

pb=pb->next;

}

else

{

s->coef=pa->coef+pb->coef;

s->expn=pa->expn;

pa=pa->next;

pb=pb->next;

}

pc->next=s;

pc=s;

}

Polynomial p=papa:pb;

while(p)

{

Polynomial s=(Polynomial)malloc(sizeof(struct LNode));

s->coef=p->coef;

s->expn=p->expn;

pc->next=s;

pc=s;

p=p->next;

}

pc->next=NULL;

}

void PrintPolyn(Polynomial p)

{

Polynomial s=p->next;

int first=1;

while(s)

{

if(s->coef)

{

if(first)

{

if(s->coef>1||s->coef<-1)

printf("%d",s->coef);

else

if(s->coef<0)printf("-");

/

switch(s->expn)

{

case 0:

break;

case 1:

printf("x");

break;

default:

printf("x^%d",s->expn);

}

/

}

else

{

if(s->coef>1||s->coef<-1)

printf("%+d",s->coef);

else

printf("%c",s->coef>0'+':'-');

/

switch(s->expn)

{

case 0:

break;

case 1:

printf("x");

break;

default:

printf("x^%d",s->expn);

}

/

}

switch(s->expn)

{

case 0:

break;

case 1:

printf("x");

break;

default:

printf("x^%d",s->expn);

}

}

if(first)first=0;

s=s->next;

/

if(s)

{

if(s->coef)

{

printf("+");

}

}

/

}

printf("\n");

}

以上就是关于求一个100到150条的C语言程序全部的内容,包括:求一个100到150条的C语言程序、求一些C语言入门简单的数学题目,练习一下,顺便附上答案哈、C语言求100以内素数的问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10637053.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存