课程主页在:http://blog.csdn.net/sxhelijian/article/details/13705597
编程练习1:输出1000以内的所有素数。
参考解答:
#include<stdio.h>
#include<math.h>
int main()
{
int m,i,k,prime;
for(m=2;m<=200;m++)
{
prime=1;
k=sqrt(m);
for(i=2; i<=k; i++) //最多循环至……
if(m%i==0)
{
prime=0;
break;
}
if(prime==1)
printf("%d ",m);
}
return 0;
}
编程练习2:求满足条件n=a!+b!+c!的所有三位数n并输出,其中a,b,c分别为n的百、十、个位数。
参考解答:
#include<stdio.h>
int main()
{
int n,a,b,c,sum;
int i,f;
n=100;
while(n<1000)
{
sum=0;
c=n%10; //个位数,
b=(n/10)%10; //十位数
a=n/100; //百位数
for(f=1,i=1; i<=a; ++i) f=f*i; //求 a!
sum += f;
for(f=1,i=1; i<=b; ++i) f=f*i; //求 b!
sum += f;
for(f=1,i=1; i<=c; ++i) f=f*i; //求 c!
sum += f; //此时sum的值为a!+b!+c!
if(sum==n) //若条件成立,则 n 就是要找的数。
printf("%d ",n);
++n; //考察下一个n
}
return 0;
}
解2:
#include<stdio.h>
int main()
{
int n,a,b,c,sum;
int i,f;
for(n=100;n<1000;n++)
{
sum=0;
c=n%10; //个位数,
b=(n/10)%10; //十位数
a=n/100; //百位数
for(f=1,i=1; i<=a; ++i) f=f*i; //求 a!
sum += f;
for(f=1,i=1; i<=b; ++i) f=f*i; //求 b!
sum += f;
for(f=1,i=1; i<=c; ++i) f=f*i; //求 c!
sum += f; //此时sum的值为a!+b!+c!
if(sum==n) //若条件成立,则 n 就是要找的数。
printf("%d ",n);
}
return 0;
}
编程练习3:输入一个正整数,判断其是否为一个回文数(例1221、12321都是回文数)。提示:输入一个正整数n(例1234)后,构造出其反序数m(对应4321),若这两个数相等,则n是回文数(1234就不是回文数)。算法流程图如右图所示。
参考解答:
#include<stdio.h>
int main()
{
int m,n,k;
scanf("%d",&n);
k=n;
m=0;
while(k>0)
{
m=m*10+k%10;
k=k/10;
}
if(m==n)
printf("%d是回文数\n",n);
else
printf("%d不是回文数\n",n);
return 0;
}
编程练习4:输出1000以内的所有回文数。
参考解答:
#include<stdio.h>
int main()
{
int m,n,k;
for(n=0; n<1000; n++)
{
k=n;
m=0;
while(k>0)
{
m=m*10+k%10;
k=k/10;
}
if(m==n)
printf("%d ",n);
}
return 0;
}
编程练习5:一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3,1、2、3是6的因子,所以6是完数。编程序,输入n,判断n是否是完数。
参考解答:
#include<stdio.h>
int main( )
{
int i,n,s;
scanf("%d",&n);
s=1; //s表示因子和。1是任何数的因子,所以s=1,也使下一句可以从2开始尝试
for(i=2; i<n; i++) //从2开始到n-1,逐个去试
{
if(n%i==0)
s+=i; //如果i是n的因子,则累加
}
if(n==s)
printf("%d是完数\n",n);
else
printf("%d不是完数\n",n);
return 0;
}
编程练习6:找出1000内的所有完数。
参考解答:
#include<stdio.h>
int main( )
{
int i,n,s;
for(n=2; n<1000; n++)
{
s=1; //s表示因子和。1是任何数的因子,所以s=1,也使下一句可以从2开始尝试
for(i=2; i<n; i++) //从2开始到n-1,逐个去试
{
if(n%i==0)
s+=i; //如果i是n的因子,则累加
}
if(n==s)
printf("%d ",n);
}
return 0;
}
分享到:
相关推荐
(整理)年山东管理学院计算机科学与技术毕业设计题目参考表..pdf(整理)年山东管理学院计算机科学与技术毕业设计题目参考表..pdf(整理)年山东管理学院计算机科学与技术毕业设计题目参考表..pdf(整理)年山东管理学院...
Java语言程序设计_第2,3周实验题目及参考解答 第2实验题目 第3周实验题目及参考解答
Java语言程序设计_第4周实验题目及参考解答 带参数的main()方法,构造方法,重载
第3章 类的方法课件及源代码, 第5周实验题目及参考解答
自考华南理工 计算机科学与技术实践真题
计算机科学与技术专业毕业设计题目参考2
四川大学计算机科学与技术专业论文参考题目.docx四川大学计算机科学与技术专业论文参考题目.docx四川大学计算机科学与技术专业论文参考题目.docx四川大学计算机科学与技术专业论文参考题目.docx四川大学计算机科学与...
(整理)年山东管理学院计算机科学与技术毕业设计题目参考表..docx(整理)年山东管理学院计算机科学与技术毕业设计题目参考表..docx(整理)年山东管理学院计算机科学与技术毕业设计题目参考表..docx(整理)年山东管理学院...
本科计算机科学与技术论文题目选题参考 如学校综合管理系统 2、 企业管理信息系统 3、 机关办公自动化系统 4、 物资的购、销、存管理 5、 电子商务管理系统 6、 库存与成本核算管理 7、 人事综合管理系统 8、...
计算机科学与技术毕业论文参考题目.pdf计算机科学与技术毕业论文参考题目.pdf计算机科学与技术毕业论文参考题目.pdf计算机科学与技术毕业论文参考题目.pdf计算机科学与技术毕业论文参考题目.pdf计算机科学与技术毕业...
计算机科学与技术专业毕业论文选题与写作要求及参考题目一、选题与写作要求.docx计算机科学与技术专业毕业论文选题与写作要求及参考题目一、选题与写作要求.docx计算机科学与技术专业毕业论文选题与写作要求及参考...
计算机科学与技术毕业设计题目计算机科学与技术毕业设计题目
《计算机网络系统实践》题目及选题要求.docx《计算机网络系统实践》题目及选题要求.docx《计算机网络系统实践》题目及选题要求.docx《计算机网络系统实践》题目及选题要求.docx《计算机网络系统实践》题目及选题要求...
计算机科学与技术专业毕业论文参考题目.docx计算机科学与技术专业毕业论文参考题目.docx计算机科学与技术专业毕业论文参考题目.docx计算机科学与技术专业毕业论文参考题目.docx计算机科学与技术专业毕业论文参考题目...
四川大学计算机科学与技术专业论文参考题目.pdf四川大学计算机科学与技术专业论文参考题目.pdf四川大学计算机科学与技术专业论文参考题目.pdf四川大学计算机科学与技术专业论文参考题目.pdf四川大学计算机科学与技术...
《计算机网络系统实践》题目及选题要求.pdf《计算机网络系统实践》题目及选题要求.pdf《计算机网络系统实践》题目及选题要求.pdf《计算机网络系统实践》题目及选题要求.pdf《计算机网络系统实践》题目及选题要求.pdf...
2011届计算机科学与技术专业毕业论文题目一览表.docx2011届计算机科学与技术专业毕业论文题目一览表.docx2011届计算机科学与技术专业毕业论文题目一览表.docx2011届计算机科学与技术专业毕业论文题目一览表.docx2011...