c语言程序填空终结者.docx
- 文档编号:24029993
- 上传时间:2023-05-23
- 格式:DOCX
- 页数:66
- 大小:23.73KB
c语言程序填空终结者.docx
《c语言程序填空终结者.docx》由会员分享,可在线阅读,更多相关《c语言程序填空终结者.docx(66页珍藏版)》请在冰豆网上搜索。
c语言程序填空终结者
四、程序填空共4题(共计24分)
第1题(6.0分)题号:
24
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
以下程序的功能是对任一整数N(N≠0),它都可以分解成1
(或-1)和一些质数(素数)因子的形式。
如N=150时,可分
解成1×2×3×5×5;N=-150时,可分解为-1×2×3×5×5。
下边程序能实现这种分解过程。
当N=150,输出以下分解结
果:
N=1*2*3*5*5
-------------------------------------------------------*/
main()
{
intn,i,j,r;
scanf("%d",&n);
if(n==0)
{
printf("dataerror\n");
exit(0);
}
/***********SPACE***********/
elseif(【?
】)
printf("n=1");
else
{
printf("n=-1");
n=-n;
}
/***********SPACE***********/
for(【?
】;i<=n;i++)
{
/***********SPACE***********/
【?
】;
while(r==0)
{
printf("*%d",i);
/***********SPACE***********/
【?
】;
r=n%i;
}
}
printf("\n");
}
答案:
=======(答案1)=======
n>0
=========或=========
0 =======(答案2)======= i=2 =======(答案3)======= r=n%i =======(答案4)======= n=n/i =========或========= n/=i 第2题(6.0分)题号: 14 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 题目: 输出100到1000之间的各位数字之和能被15整除的所有数, 输出时每10个一行。 -------------------------------------------------------*/ main() { intm,n,k,i=0; for(m=100;m<=1000;m++) { /***********SPACE***********/ 【? 】; n=m; do { /***********SPACE***********/ k=k+【? 】; n=n/10; /***********SPACE***********/ }【? 】; if(k%15==0) { printf("%5d",m);i++; /***********SPACE***********/ if(i%10==0)【? 】; } } } 答案: =======(答案1)======= k=0 =======(答案2)======= n%10 =========或========= n-n/10*10 =========或========= n-10*(n/10) =======(答案3)======= while(n>0) =========或========= while(0 =========或========= while(n! =0) =========或========= while(0! =n) =======(答案4)======= printf("\n") 第3题(6.0分)题号: 21 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 题目: 以下程序的功能是将一个字符串中的前N个字符复制到 一个字符数组中去,不许使用strcpy函数。 -------------------------------------------------------*/ main() { charstr1[80],str2[80]; inti,n; /***********SPACE***********/ gets(【? 】); scanf("%d",&n); /***********SPACE***********/ for(i=0;【? 】;i++) /***********SPACE***********/ {【? 】;} /***********SPACE***********/ 【? 】; printf("%s\n",str2); } 答案: =======(答案1)======= str1 =======(答案2)======= i =========或========= n>i =========或========= i<=n-1 =========或========= n-1>=i =======(答案3)======= str2[i]=str1[i] =========或========= *(str2+i)=*(str1+i) =========或========= *(str2+i)=str1[i] =========或========= str2[i]=*(str1+i) =======(答案4)======= str2[n]='\0' =========或========= str2[i]='\0' =========或========= str2[n]=0 =========或========= str2[i]=0 =========或========= *(str2+n)='\0' =========或========= *(str2+i)='\0' =========或========= *(str+n)=0 =========或========= *(str2+i)=0 第4题(6.0分)题号: 23 /*------------------------------------------------------- 【程序填空】 --------------------------------------------------------- 题目: 以下程序的功能是求一个二维数组中每行的最大值和每行 的和。 -------------------------------------------------------*/ #include"stdlib.h" main() { inta[5][5],b[5],c[5],i,j,k,s=0; for(i=0;i<5;i++) for(j=0;j<5;j++) a[i][j]=random(40)+20; for(i=0;i<5;i++) { /***********SPACE***********/ k=a[i][0];【? 】; for(j=0;j<5;j++) { /***********SPACE***********/
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 程序 填空 终结