好文档 - 专业文书写作范文服务资料分享网站

C语言100个经典的算法

天下 分享 时间: 加入收藏 我要投稿 点赞

90=2*3*3*5。

__________________________________________________________________

程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完 成:

(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。

(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正 整数你n,重复执行第一步。

(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。

___________________________________________________________________

程序源代码:

/* zheng int is divided yinshu*/ main()

{ int n,i;

printf(\number:\\n\scanf(\printf(\for(i=2;i<=n;i++) {

while(n!=i) {

if(n%i==0) { printf(\ n=n/i; } else break; } }

printf(\

}题目:利用条件运算符的嵌套来完成此题:学习成绩>=90

分的同学用A表示,60

-89分之间的用B表示,60分以下的用C表示。

__________________________________________________________________

程序分析:(a>b)?a:b这是条件运算符的基本例子。

___________________________________________________________________

程序源代码: main() {

int score; char grade; printf(\input a score\\n\

scanf(\

grade=score>=90?'A'score>=60?'B':'C'); printf(\

belongs to %c\}

题目:输入两个正整数m和n,求其最大公约数和最小公倍数。

__________________________________________________________________

程序分析:利用辗除法。

___________________________________________________________________

程序源代码: main() {

int a,b,num1,num2,temp; printf(\input two numbers:\\n\

scanf(\ if(num1 {

temp=num1; num1=num2; num2=temp; }

a=num1;b=num2;

while(b!=0)/*利用辗除法,直到b为0为止*/ {

temp=a%b; a=b; b=temp; }

printf(\

printf(\

}题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数 。

__________________________________________________________________

程序分析:利用while语句,条件为输入的字符不为'\\n'.

C语言100个经典的算法

90=2*3*3*5。__________________________________________________________________程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。(2)如果n<
推荐度:
点击下载文档文档为doc格式
4b7o64f7k102tjb2ixwe3xy6q955i0014qp
领取福利

微信扫码领取福利

微信扫码分享