- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
测试题目答案
1:(C语言实例解析-实例171)小孩吃梨。小孩买了一些梨,当即吃了一半,
还不过瘾,又多吃了一个;第二天早上又将剩下的梨吃掉一半,又多吃了一个。
以后每天早上都吃了前一天剩下的一半,并又多吃一个。到第18天只剩下一个梨
了,问小孩共买了多少梨?
#include stdio.h
main()
{
long x=1,y=18;
puts(小孩吃梨的问题:\n);
while(y0)
{
x=2*(x+1);
y--;
}
printf(第一天小孩共买了 %ld 个梨.\n,x);
return 0;
2:(C语言实例解析-实例80)亲密数。如果整数A的全部因子(包括1,不包括A本身)之和等于B;且整数B的全部因子(包括1,并不包括B本身)之和等于A,则将整数A和B称为亲密数。求3000以内的全部亲密数。
#includestdio.h
int main()
{
int a,i,b,n;
printf(There are following friendly--numbers pair smaller than 3000:\n);
for(a=1;a3000;a++) /*穷举1000以内的全部整数*/
{
for(b=0,i=1;i=a/2;i++) /*计算数a的各因子,各因子之和存放于b*/
if(!(a%i))b+=i; /*计算b的各因子,各因子之和存于n*/
for(n=0,i=1;i=b/2;i++)
if(!(b%i))n+=i;
if(n==aab)
printf(%4d..%4d ,a,b); /*若n=a,则a和b是一对亲密数,输出*/
}
}
3:(ACM百练2685)打印出所有“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字的立方和等于该数本身,例如,152是水仙花数,因为153=1×1×1+5×5×5+3×3×3。#include stdio.h
#include stdlib.h
int main()
{
int i,j,k;
for(i=1;i=9;i++){
for(j=0;j=9;j++){
for(k=0;k=9;k++)
if(100*i+10*j+k==i*i*i+j*j*j+k*k*k)
printf(%d\n,100*i+10*j+k);}}
return 0;
}
题目4:(C语言实例解析-实例17)无符号整数的任意进制数转换。将一个无符号整数转换为任意d进制数(2≤d≤16),并输出改正整数的2~16进制数转换结果。
要求:◆ 由键盘输入待转换的正整数为num;
◆trans()为进制转换函数;
rest ( int a[], int n)
{
int i,low,high,t;
for(i=0,low=0,high=n-1;i=high;)
{
if(a[i]0)
{
t=a[i];
a[i]=a[high];
a[high]=t;
high--;
}
else if (a[i]==0)
i++;
else
{
t=a[i];
a[i]=a[low];
a[low]=t;
low++;
i++;
}
}
}
int s[]={8,8,0,-1,6,0,-5};
main()
{
int i;
printf(排序前的数组:\n);
for(i=0;isizeof(s)/sizeof(s[0]);i++)
printf(%4d,s[i]);
rest(s,sizeof(s)/sizeof(s[0]));
printf(\n排序后的数组:\n);
for(i=0;isizeof(s)/sizeof(s[0]);i++)
printf(%4d,s[i]);
printf(\n\n);
return 0;
}
5:(C语言实例解析-实例14)在n行n列的二维整数数组中,按以下要求选出两个数。
首先从每行选出最大数,再从选出的n个大数中选出最小数;其次,从每行选出最小数,再
从选出的n个小数中选出最大数。
要求:◆ 由键盘输入n行n列存入二维数组a[ ][ ];
#define MAXN 20
int a[MAXN][MAXN];
main()
{
int min; //存最小值
int max; //存最大值
int row,col,n;
printf(输入方阵的阶次:\n);
scanf(%d,n);
printf(输入方阵的元素,从a[0][0]到a[%d][%
文档评论(0)