C语言程序设计题目及解答-05.doc_第1页
C语言程序设计题目及解答-05.doc_第2页
C语言程序设计题目及解答-05.doc_第3页
C语言程序设计题目及解答-05.doc_第4页
C语言程序设计题目及解答-05.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一、判断题(6分)1. 在多重循环结构中,使用break语句,可以跳出整个循环。2分 2. 多重循环是指循环语句的循环体中,又嵌套了另一个或多个循环语句,多个内层循环可以相互交叉嵌套。2分 3. continue语句用在循环体中,可使整个循环不结束。2分 二、选择题(16分)1.在C语言的循环语句for,while,do-while语句中,用于直接中断最内层循环的语句是:C A. switchB. continueC. breakD. if 2.请读程序: #include main() int a, b ; for(a = 1 , b = 1 ; a = 20) break ; if (b%3 = 1) b += 3 ; continue ; b -= 5 ; printf(%d, a) ; 上面程序的输出结果是_。B 2分 A. 7B. 8C. 9D. 10 3.以下程序中,while循环的循环次数是_。D 2分 main()int i=0; while(i10) if(i1) continue; if(i=5)break; i+; .A. 1B. 10C. 6D. 死循环,不能确定次数 4.#include main() int i=0,a=0; while(i20) for(;) if(i%10)=0) break; else i-; i+=11; a+=i; printf(%d,a);B 2分 A. 21B. 32C. 33D. 11 5.以下程序的功能是:按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下:main() int n,k; float score,sum,ave; sum=0.0; for(n=1;n=10;n+) for(k=1;kbc) printf(%dn,d); else if(c-1=d)=1) printf(%dn,d+1); else printf(%dn,d+2);执行后输出的结果是_。B 2分 A. 2B. 3C. 4D. 编译时有错,无结果 7.有以下程序main() int i=0,s=0; do if(i%2)i+;continue; i+; s+=i; while(i7); printf(%dn,s);执行后输出的结果是_。A 2分 A. 16B. 12C. 28D. 21 8.下列语句中,哪个可以输出26个大写英文字母()。C 2分 A. for(a=A; a=Z; printf(%c,+a);B. for(a=A; aZ; a+=printf(%c,a);C. for(a=A; a=Z; printf(%c,a+);D. for(a=A; aZ; printf(%c,+a);三、程序填空题(48分)1. 功能:输出9*9口诀。 9分 #includevoid main() int i,j,_(1)_; printf(n); for (i=1;_(2)_;i+) for(j=1;j10;_(3)_) result=i*j; printf(%d*%d=%-3d,i,j,result); printf(n); (1)答案 3分 result (2)答案 3分 i 10 (3)答案 3分 j=j+1 2. 功能:如果整数的全部因子(包括,不包括本身)之和等 于;且整数的全部因子 ( 包括,不包括本身 ) 之和等于,则将整数和称为亲密数。求 3000 以内 的全部亲密数。 9分 #include void main( ) int a, i, b, n ; printf(Friendly-numbers pair samller than 3000:n) ; for(a=1 ; a3000 ; a+) for(b=0,i=1 ; _(1)_ ; i+ ) if(!(a%i) b=b+i ; for(n=0,i=1 ; i=b/2 ; i+) if(_(2)_) n=n+i; if(n = a & _(3)_) printf(%4d%4dn,a,b) ; (1)答案 3分 i=a/2 (2)答案 3分 !(b%i) (3)答案 3分 a!=b 3. 功能:下面的程序是求1!+3!+5!+n!的和。 12分 #includeint main() long f,s; int i,j,n; _(1)_; scanf(%d,&n); for(i=1;i=n; _(2)_) f=1; for(j=1;_(3)_;j+) _(4)_; s=s+f; printf(n=%d,s=%ldn,n,s); (1)答案 3分 s=0 (2)答案 3分 i+=2 (3)答案 3分 j=i (4)答案 3分 f= f * j 4. 功能:百鸡问题:100元买100只鸡,公鸡一只5元钱,母鸡一只3元钱,小鸡一元钱三只,求100元钱能买公鸡、母鸡、小鸡各多少只? 12分 #include int main() int cocks,hens,chicks; cocks=0; while(cocks=19) _(1)_=0; while(hens=_(2)_) chicks=100.0-cocks-hens; if(5.0*cocks+3.0*hens+chicks/3.0=100.0) printf(%d,%d,%dn,cocks,hens,chicks); _(3)_; _(4)_; (1)答案 3分 hens (2)答案 3分 33 (3)答案 3分 hens+ (4)答案 3分 cocks+ 5. 取1分、2分、5分的硬币共十枚,付一角八分钱,有几种不同的取法?怎样取?(提示:某一种硬币可以取零枚。先确定取值范围,再验证满足条件。) 6分 #includevoid main() int i,j,k,n=0; for(i=0;i %d,%d,%dn,+n,i,j,k); (1)答案 3分 i+j=10 (2)答案 3分 i+2*j+5*k=18 四、程序设计题(30分)1. 九九乘法表 10分 题目描述小时候学过的九九乘法表也许将会扎根于我们一生的记忆,现在让我们重温那些温暖的记忆,请编程输出九九乘法表. 输入描述输入数据只包含一个正整数N(1=N=9); 输出描述请根据要求输出乘法表的前N行,具体格式参见输入输出样例. 样例输入2 样例输出1*1=11*2=2 2*2=4 #includestdio.hvoid main() int i,j,n; scanf(%d,&n); for(i=1;i=n;i+) for(j=1;j=i;j+) printf(%d*%d=%d ,j,i,i*j); printf(n); 2. 素数统计(2) 10分 题目描述给定一段连续的正整数,请判断其中素数的个数; 输入描述输入数据包含2个正整数A和B(0AB=100000),分别表示连续整数段的2端; 输出描述请判断并输出A,B范围内一共有多少个素数。 样例输入2 8 样例输出4答案1:#includevoid main()int a,b,i,n,c=0,f=1;scanf(%d%d,&a,&b);for(n=a;n=b;n+)for(i=2,f=1;i=n/2;i+) if(n%i=0) f=0; break; if(f=1)c+;if(a=1)c-;printf(%dn,c);答案2:#include void main() int a,b,i,j,k=0; scanf(%d %d,&a,&b); for(i=a;i=b;i+) for(j=2;ji;j+) if(i%j=0) k+; break; if(a=1) k+; printf(%dn,b-a+1-k); 3. 1到n求和 10分 题目描述给定一个正整数n,请计算从1加到n的和,即求SUM(n) = 1 + 2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论