版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选文库 复习题 C程序设计编程题 1. 输入2个整数,求两数的平方和并输出。 #in elude void mai n() intt a ,b,s; printfCpl ease input a,b:n); scanf(%d%d ”, s=a*a+b*b; prin tf(the result is %dn,s); 2. 输入一个圆半径(r),当r = 0时,计算并输出圆的面积和周长,否则,输出 提示信息。 #in clude #define PI 3.14 void mai n() float r ,s , l; printfCpl ease input r:n ”); scanf(%f
2、”, if (r=0) s=p i*r*r; l=2*i*r ; prin tf(the area is %fn,s); prin tf(the circumfere nee is %fn ,l); else prin tf(i np ut error! n); 3、函数y=f(x)可表示为: 2x+1 (xp) 编程实现输入一个 x值,输出y值。 #in clude void mai n() int x,y; scanf( “ %d, if(x0) y=2*x-1; else y=0; printf( “%d ,y); 4、编写一个程序,从4个整数中找出最小的数,并显示此数。 #in clu
3、de void mai n() int a,b,c,d,t; scanf (“ d,%d,%d,%d ”, if (ab) t=a; a=b; b=t; if (ac) t=a; a=c; c=t; if (ad) t=a; a=d; d=t; printf (“ min = %d n ” ,a); 5 .有一函数当 x0时,y=3,当x=0时y=5,编程,从键盘输入一个 x值,输出y值。 #i nclude void mai n() int x,y; scan f(%d, if (x0) y=1; else if(x=0) y=5; else y=3; prin tf(x=%d,y=%dn,
4、x,y); 6.从键盘输入两个数,求出其最大值(要求使用函数完成求最大值,并在主函数中 调用该函数) #in elude float max(float x,float y); void mai n() float a,b,m; scan f(%f,%f, m=max(a,b); prin tf(Max is %fn ”,m); float max(float x,float y) float temp; if (xy) te mp=x; x=y; y=te mp; return(x); 7、从键盘输入你和你朋友的年龄,编成判断谁的年龄最大,并打印最大者的年龄。 #i nclude void
5、mai n() int yourAge, hisAge; printfCP lease en ter your age:); scan f(%d, /*输入你的年龄 yourAge*/ printfCP lease en ter your frien ds age:); scan f(%d, /*输入你朋友的年龄hisAge*/ if (yourAge = hisAge) prin tf(You are older! Your age is = %dn, yourAge); if (hisAge yourAge) prin tf(Your friend is older! HisAge age
6、 is = %dn, hisAge); prints“ please input a and bn ” ); scanf (%d,%d ”, printf( sca nf (%d “ P lease input the an swer for a+bn ”, ”); if (c=a+b) printf( else printf( “rightn ”); “errorn ” ); 9.编一程序每个月根据每个月上网时间计算上网费用, 计算方法如下: 费用 30元 每小时3元 每小时2.5元 10小时 10 50小时 50小时 要求当输入每月上网小时数 ,显示该月总的上网费用(6分) #i nclu
7、de void mai n() int hour; float fee; pnntf(“ pl ease input hour:n scanf( “ %d , if(hour=10 else fee=hour*2.5; printf( “ The total fee is %f 10.神州行用户无月租费,话费每分钟 钟0. 4元。输入一个月的通话时间, #in clude ”); ” ,fee); 0.6元,全球通用户月租费 50元,话费每分 分别计算出两种方式的费用,判断哪一种合适。 void main() float a,x,y; printf( scanf( “n请输入您的话费:”);
8、“f, ”, x= 0.6*a; y=50+0.4*a; printf ( printf (“ if (x=y) printf( else prints “神州行话费为 “全球通话费为 n”,x); ,y); 11.个人所得税计算, “建议使用全球通” “建议使用神州行 ); ); 应纳税款的计算公式如下: 输入某人的收入,计算出应纳税额及实际得到的报酬。 收入 税率 收入=1000元部分 0 % 2000元 =收入1000元的部分 5 % 3000元 =收入2000元的部分 10% 6000元 =收入3000元的部分 15% 收入6000元的部分 20% (7 分) (如需连续计算多个人的纳
9、税情况,直到输入负数为止,程序应如何改进?试写出 程序) #i nclude“ stdio.h ” void mai n() int grade; float in come,tax,m on ey; ”); prints “ pl ease input your in comen sca nf (“ f, if (in come 90,等级 为 A 80 score90,等级为 B; 70w score80,等级为 C; 60 score70,等级为 D; score60,等级为 E。 #in clude void mai n() int data; char grade; printf(P
10、I ease en ter the score:); scanf(%d ” , switch(data/10) case 10: case 9 : grade= A ; break; case 8: grade= B; break; case 7: grade= C; break; case 6: grade= D ; break; default: grade= E; prin tf(the grade is %c *13.编程设计一个简单的计算器程序。从键盘输入2个操作数,1个运算符,当运 算符为加(+)、减(-)、乘(*)、除(/)时,输出计算结果 #in clude void mai
11、n() int data1, data2; char op; /* /* ,grade); 定义两个操作符*/ 定义运算符*/ 输入运算表达式*/ printfCP lease en ter the exp ressi on:”); scan f(%d%c%d, /* switch( op) case +: /*根据输入的运算符确定要执行的运算 /*处理加法*/ prin tf(%d + %d = %d n, data1, data2, data1 + data2); break; */ case -: /*处理减法*/ prin tf(%d - %d = %d n, data1, data2
12、, data1 - data2); break; case 知 /*处理乘法*/ prin tf(%d * %d = %d n, data1, data2, data1 * data2); break; case /: /*处理除法*/ if (0 = data2) /* 为避免出现溢出错误,检验除数是否为 prin tf(Division by zero!n); 0*1 default: else prin tf(%d / %d = %d n, data1, data2, data1 / data2); break; 14. printf(Unknown op erator! n ”); 从
13、键盘输入10个整数,统计其中正数、负数和零的个数,并在屏幕上输出。 #i nclude void mai n() int a10, i, p=0, n=0,z=0; printf(“ pl ease input nu mber ” ); for(i=0;i0) p+; else if (ai0) n+; n”,p,n,z); else z+ printf( “正数:%5d,负数:%5d,零: 15、编程序实现求1-10之间的所有数的乘积并输出。 #in clude void mai n() int i ; long sum=1; for(i=1; i=10; i=i+1) sum=sum*i;
14、 pnntf(“the sum of odd is :% l d” ,sum); 16. 从键盘上输入10个数,求其平均值。 #in elude void mai n() int a10,i,s=0; float ave; for(i=0;i10;i+) seanf(“d , for(i=0;i10;i+) sum+=ai; ave=(float)sum/10; prin tf(ave = %fn, ave); 17、编程序实现求1-1000之间的所有奇数的和并输出。 #i nclude void mai n() int i, sum=0; for(i=1; i1000; i=i+2) sum
15、=sum+i; pnntf(“the sum of odd is :%d ” ,sum); 18.有一个分数序列:2/1 , 3/2 , 5/3 , 8/5 , 13/8 , 21/13 编程求这个序列的前20项之和。 #in elude void mai n() int i,t,n=20; float a=2,b=1,s=0; for(i=1;i=n ;i+) s=s+a/b; t=a; a=a+b; b=t; prin tf(sum=%6.2f,s); 19. 用数组实现以下功能:输入5个学生成绩,而后求出这些成绩的平均值并显示 出来。 #i nclude void mai n() int
16、 a5, s=0; int i; for(i=0;i5;i+) scanf( “ %d, for(i=0;i5;i+) s=s+ai; printf( “ result=%f ” ,s/5.0); 20、 用循环的方法构造一个5行5列的二维数组,使主对角线上的变量为1,其它为 0,并将数组中所有项按行按列显示出来。 #in clude void mai n() int a55,i,j, s=0; for(i=0;i5;i+) for(j=0;j5;j+) if(i=j) aij=1; else aij=0; for(i=0;i5;i+) for(j=0;j5;j+) printf( “ %5d
17、 , aij); printf( “n ” ); 21. 求一个3X 3矩阵主对角线元素之和。从键盘输入矩阵元素的值并输出和的值 #in elude void mai n() int a33,sum=0; int i,j; prin tf(E nter data:n); for(i=0;i3;i+) for(j=0;j3;j+) scan f(%d, for(i=0;i3;i+) sum=sum+aii; prin tf(sum=%d,sum); 输出如图所示的图形。 22. 输入n的值,n代表行数, 此图为 n = 6时的输出结果) #i nclude void mai n() int i
18、, k , n; prin tf(E nter nu mber:n); scan f(%d, for (i = 1; i = n; i+) for (k = 1; k = i; k+) prin tf(*); prin tf(n); /* /* /* 控制行数*/ 控制每行输出的*号个数*/ 输出一行后换行*/ 23、从键盘输入30名学生的成绩数据,求其中的最高分、最低分和平均分。 (提示:用数组存放成绩数据) #i nclude #define M 30 void main () float scoreM, max , min, aver; int i ; printf(“ pl ease
19、input score: n for(i=0; iM ; i+) scanf(“ f , max=score0; min=score0; aver=score0; for(i=1; iM; i+) if (max scorei) min=scorei; aver+=scorei; printf( 24.从键盘输入某班学生某门课的成绩及其学号(班级人数最多 ”); max=%f, min=%f,aver=%f ” , max, min, aver/M); 40人,具体人数由 键盘输入),输出该班最高分和最低分及其学生学号;并输出该班该课程的总分和平 均分。请编写程序。 #in elude #de
20、fi ne ARR_SIZE 40 void mai n() float scoreARR_SIZE, maxScore ,min Score,sum; int n, i; long maxNum, minN um, nu mARR_SIZE; printfCPI ease en ter total nu mber:); scan f(%d, printfCPI ease en ter the nu mber and score:n); for (i=0; in; i+) scan f(%ld%f, maxScore = score0;m in Score= score0; maxNum =
21、num 0; minNum= num 0; sum=score0; for (i=1; i maxScore) maxScore = scorei; maxNum = nu mi; else if (scorei min Score) min Score = scorei; mi nNum = nu mi; sum=sum+scorei; prin tf(maxScore = %.0f, maxNum = %ldn, maxScore, maxNum); printfCmin Score = %.0f, minNum = %ldn, min Score, minNu m); prin tf(s
22、um = %.1f, average = %.1fn, sum, sum/n); 25.将一个有 例: 5个元素的数组中的值 原来顺序为:8、6、5、 (整数)按逆序重新存放。 4、1,要求改为 1、4、5、6、8 #define N 5 #in clude void mai n() int aN,i,te mp; printf( “ en ter array a:n for(i=0;iN;i+) scanf( “ %d, for(i=0;iN;i+) temp=ai; ai=aN-i-1; aN-i-1=te mp; printf(n Now, array a:n ” ); for(i=0;
23、iN;i+) printf( printf( “ %4d ,ai); “n ”); ”); 26.从键盘上输入一个 2*3的矩阵,将其转秩后形成 3*2的矩阵输出。 #i nclude void mai n() int a23, b32,i,j; for(i=0;i2;i+) for(j=0;j3;j+) scanf(“ c”, for(i=0;i3;i+) for(j=0;j2;j+) bij=aji; for(i=0;i3;i+) for(j=0;j2;j+) prin tf(%5d,bij); printf(n” ); (提示: 29、 从键盘输入10名学生的成绩数据,按成绩从高到低的顺
24、序排列并输出。 用数组存放成绩数据) #i nclude void mai n() int a10; int i,j,te mp; prin tf(i nput score:n); for(i=0;i10;i+) scan f(%d, prin tf(n); for(i=1;i10;i+) for(j=0;j9;j+) if(ajaj+1) tem p=aj; aj=aj+1; aj+1=te mp; for(i=0;i10;i+) prin tf(%d,ai); 30. 定义一个5行3列的数组,从键盘输入各数组元素的值,计算各数组元素之和。 #i nclude void mai n() in
25、t i, j ,a53; pnntf(“ Enter data:n” ); for(i=0;i5;i+) for(j=0;j3;j+) scanf(“ (”, for(i=0;i5;i+) for(j=0;j3;j+) sum=sum+aij; prints“sum=%5dr” ,sum); 32、 从键盘上输入一个4*3的整型数组,找出数组中的最小值及其在数组中的下标。 #in clude void mai n() int a43, i , j ,mi n, m, n; printfCPI ease en ter data:); for (i=0; i4; i+) for (j=0; j3;
26、 j+) scanf(“ %d, min=a00; m=0; n=0; for (i=0; i4; i+) for (j=0; j3; j+) if (aijmi n) mi n= aij; m=i; n=j; prin tf(the min is %dn, min); printfCposion is %d %d n, m,n); 33. 编程实现如下功能:从键盘输入一行字符,统计其中大写英文字符,小写英文 字符和其他字符的个数。 #i nclude #in clude #defi ne ARR_SIZE 80 void mai n() char strARR_SIZE; int len,
27、i, letter = 0, digit = 0, space = 0, others = 0; printf(PI ease input a gets(str); len = strle n( str); for (i=0; i= a letter +; strin g:); /* else =9 ) 统计数字字符*/ others +; /* 统计其它字符的个数*/ prin tf(E nglish character: %dn letter); prin tf(digit character: %dn, digit); prin tf(other character: %dn, others); *36、猜数游戏。系统随机产生一个整数,通过键盘输入数据猜数,猜对为止,并要 求统计猜的次数。 注:rand()函数可以产生032767间的正整数,程序中需包含stdIib.h 。 #in clude #i nclude void mai n() magic; int int int guess; coun ter; magic = ran d() % 100 + 1; coun ter = 0; do printf(PI ease guess a magic nu mber:); sca nf(%d, coun ter +; if (gu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年鲁教版选修5历史上册月考试卷
- 2025年沪科版九年级历史上册阶段测试试卷含答案
- 2025年人教版高三历史上册阶段测试试卷含答案
- 2025年度新型门窗技术研发与承揽合同2篇
- 二零二五版美容美发行业美容院会员积分体系开发与运营合同4篇
- 二零二五年度进口奶粉批文申请及市场准入服务合同4篇
- 二零二五年度南京市房产局发布的房产抵押权转让合同样本4篇
- 2025年度智能门窗控制系统供应合同范本4篇
- 二零二五年度旅游服务业农民工劳动合同范本大全4篇
- 2025年度绿色生态面料生产加工合作合同4篇
- 疥疮病人的护理
- 人工智能算法与实践-第16章 LSTM神经网络
- 17个岗位安全操作规程手册
- 2025年山东省济南市第一中学高三下学期期末统一考试物理试题含解析
- 中学安全办2024-2025学年工作计划
- 网络安全保障服务方案(网络安全运维、重保服务)
- 2024年乡村振兴(产业、文化、生态)等实施战略知识考试题库与答案
- 现代科学技术概论智慧树知到期末考试答案章节答案2024年成都师范学院
- 软件模块化设计与开发标准与规范
- 2024年辽宁铁道职业技术学院高职单招(英语/数学/语文)笔试历年参考题库含答案解析
- 有机农业种植模式
评论
0/150
提交评论