各界C编程考试题及答案.doc_第1页
各界C编程考试题及答案.doc_第2页
各界C编程考试题及答案.doc_第3页
各界C编程考试题及答案.doc_第4页
各界C编程考试题及答案.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

1./* 从键盘上输入若干个学生成绩(百分制整数),直到输入1结束。求平均分并保留一位小数输出 */*分析:定义score存储学生成绩,由题意知为整型数,范围0100*/* 定义平均分ave,因为需要小数输出,定义为float型*/#include stdio.hmain() int score,i=0; float sum=0,ave; printf(nPlease input scores(end of -1):n); do scanf(%d,&score); if(score=0 & score=60 & score=70 & score=80 & score=90 & score=0); printf(nexcellent=%d,good=%d,middle=%d,pass=%d,excellent,good,middle,pass);3./*从键盘上输入若干字符,直到输入结束。统计英文字母、数字、空格、其他字符的个数并输出。分析:整型变量letter,number,space,other存个数*/#include stdio.hmain() char c; int letter,number,space,other; letter=number=space=other=0; printf(nPlease input some characters:(end of #)n); while(c=getchar()!=#) if(c=a & c=A & c=0 & c10),要求:1)筛选出3N之间的素数;2)输出素数,每个数占6宽度,左对齐*/#include stdio.h#include math.hmain() int N,i,k,sqr,flag=1; printf(nN=); scanf(%d,&N); while(N=10) printf(ERROR,input again:); scanf(%d,&N); for(k=3;k=N;k+) sqr=sqrt(N); for(i=2;i1),计算该数列的前N项和*/*分析:此系列的分子和分母均为斐波那契数列,可设一个整型数组aM存该数列: a0=a1=1,ai=ai-1+ai-2, 再设实型数组bM存分数:bi=ai+1/(float)ai*/#include stdio.h#define M 100main() int N,i,aM; float bM,sum=0; printf(nN=); scanf(%d,&N); a0=a1=1; for(i=1;i=N;i+) ai+1=ai+ai-1; bi=ai+1/(float)ai; sum+=bi; printf(sum=%.2f,sum);6. /*输入33的行列式(整数构成),找出其中的最大值以及它所在的行标和列标*/#include stdio.hmain() int a33,i,j,max,l,c; printf(na33=n); for(i=0;i3;i+) for(j=0;j3;j+) scanf(%d,&aij); max=a00;l=0;c=0; for(i=0;i3;i+) for(j=0;j3;j+) if(maxaij) max=aij; l=i; c=j; printf(MAX: a%d%d=%d,l,c,max);7. /*输入33的行列式(整数构成),找出其中的最小值以及它所在的行标和列标*/#include stdio.hmain() int a33,i,j,min,l,c; printf(na33=n); for(i=0;i3;i+) for(j=0;j3;j+) scanf(%d,&aij); min=a00;l=0;c=0; for(i=0;i3;i+) for(j=0;jaij) min=aij; l=i; c=j; printf(MIN: a%d%d=%d,l,c,min);8. /*从键盘输入本班同学的程序设计课程分数保存在数组中(人数不超过45人,分数为整数),找出最高分及其所在的下标,并输出*/#include stdio.h#define N 45main() int sN,k,i; printf(nInput scores:); k=0; for(i=0;iN;i+) scanf(%d,&si); if(sksi) k=i; printf(The highest score is s%d=%d,k,sk);9. /*从键盘输入5组(每组3个)浮点数作为三条边的长度,若它们能够构成三角形,则计算出三角形的面积,否则给出“不能构成三角形”的提示。分析:三边构成三角形的条件是:两边之和大于第三边,并且两边之差小于第三边。*/#include stdio.h#include math.hmain() float a53,s,area5; int i,j; for(i=0;i5;i+) printf(nNo.%d:,i); for(j=0;jai2) & (ai0+ai2ai1) & (ai1+ai2ai0) & abs(ai0-ai1)ai2 & abs(ai0-ai2)ai1 & abs(ai1-ai2)ai0) s=(ai0+ai1+ai2)/2; areai=sqrt(s*(s-ai0)*(s-ai1)*(s-ai2); printf(AREA%d=%f,i,areai); else printf(Cant been a triangle!); 10. /*从键盘输入本班同学的程序设计课程分数保存在数组中(人数不超过45人,分数为整数),将百分制成绩转换成等级A-E(A90及以上,B80分数段,C70分数段,D60分数段,E不及格),并输出成绩及其对应的等级数据*/#include stdio.h#define N 45main() int sN,i; char gradeN; printf(nScores:); for(i=0;i=90 & si=80 & si=70 & si=60 & si=0 & si=59) gradei=E; else gradei=w; /*wrong score*/ for(i=0;iN;i+) if(i%5=0) printf(n); printf(%4d:%c,si,gradei); 11. /*计算1-1/2+1/3-1/4+.+1/99-1/100的前N项的值,N从键盘输入,N大于1,小于100。分析:第i项为:1/i,加减号交替出现,可以用flag存1和1来决定加减。 注意i需要转换为float型计算,否则结果不正确? N为题目给定的数,所以一般不自行改名。?PS:这里我没有讨论N的取值范围,可自行添加*/#include stdio.hmain() int N,i,flag=1; float sum=0; printf(nN=); scanf(%d,&N); for(i=1;i=a & si=A & c=a & c=0 & c=90 输出“优秀”,成绩=80并且成绩=70并且成绩=60并且成绩=100|score=0) printf(Date error!); else switch(int)(score/10.0) case 9: pri

温馨提示

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

评论

0/150

提交评论