![[ZA]C语言基本编程题029_第1页](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/ed6d664d-e21a-4635-9b0f-f0bfede3d3bd/ed6d664d-e21a-4635-9b0f-f0bfede3d3bd1.gif)
![[ZA]C语言基本编程题029_第2页](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/ed6d664d-e21a-4635-9b0f-f0bfede3d3bd/ed6d664d-e21a-4635-9b0f-f0bfede3d3bd2.gif)
![[ZA]C语言基本编程题029_第3页](http://file3.renrendoc.com/fileroot_temp3/2022-3/3/ed6d664d-e21a-4635-9b0f-f0bfede3d3bd/ed6d664d-e21a-4635-9b0f-f0bfede3d3bd3.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、复习题C程序设计编程题1. 输入2个整数,求两数的平方和并输出。#i nclude void mai n() in tta ,b,s;prin tf(please in put a,b:n);scanf(%d%d ” ,&a,&b);s=a*a+b*b;prin tf(the result is %dn,s);2. 输入一个圆半径(r),当r = 0时,计算并输出圆的面积和周长,否则,输出 提示信息。#in clude #defi ne PI 3.14void mai n() floatr ,s , l;prin tf(please in put r:n);scanf(%f ” ,&r);if
2、 (r=0)s=pi*r*r;l=2*i*r ;prin tf(the area is %fn,s);prin tf(the circumfere nee is %fn ,l);elseprin tf(i nput error!n);3. 函数y=f(x)可表示为:2x+1 (x0)编程实现输入一个x值,输出y值。#i nclude void mai n()int x,y; scanf( “%d” ,&x); if(x0)y=2*x-1; else y=0; printf( “ %d”,y);4、编写一个程序 ,从 4个整数中找出最小的数 ,并显示此数。#include void main(
3、) int a,b,c,d,t;scanf ( “ %d,%d,%d,%d” ,&a,&b,&c,&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 值。#include void main() int x,y; scanf(%d,&x);if (x0) y=1;else if(x=0) y=5;else y=3; printf(x=%d,y=%dn,x,y);6.
4、从键盘输入两个数,求出其最大值(要求使用函数完成求最大值,并在主函数中 调用该函数)#include float max(float x,float y);void main() float a,b,m; scanf(%f,%f,&a,&b); m=max(a,b);printf(Max is %fn,m);float max(float x,float y) float temp;if (xy) temp=x;x=y; y=temp;return(x);7、从键盘输入你和你朋友的年龄,编成判断谁的年龄最大,并打印最大者的年龄。 #include void main() int yourAge
5、, hisAge;printf(Please enter your age:);scanf(%d, &yourAge); /* 输入你的年龄 yourAge*/ printf(Please enter your friends age:);scanf(%d, &hisAge); /* 输入你朋友的年龄 hisAge*/if (yourAge = hisAge)printf(You are older! Your age is = %dn, yourAge);if (hisAge yourAge) printf(Your friend is older! HisAge age is = %dn,
6、 hisAge);error8、键盘输入 2 个加数,再输入答案,如果正确,显示“right ”,否则显示“#include “ stdio.h ” void main( ) int a,b,c;printf( “ please input a and bn” );scanf (%d,%d ” ,&a,&b);printf( “ please input the answer for a+bn” );scanf (%d ” ,&c);if (c=a+b)printf(“rightn” );elseprintf(“errorn ” );9. 编一程序每个月根据每个月上网进度计算上网费用,计算方法
7、如下:30元费用=每小时3元10小时10 -50小时-50小时要求当输入每月上网小时数,显示该月总的上网费用(6分)每小时2.5元#in clude void mai n() int hour;float fee;printf( “ please in put hour: n”);scanf( “ %d,&hour);if(hour=10&hour=50)fee=3*hour;else fee=hour*2.5;printf( “The total fee is %f ” ,fee);50元,话费每分 判断哪一种合适。10. 神州行用户无月租费,话费每分钟0.6元,全球通用户月租费钟0. 4元
8、。输入一个月的通话进度,分别计算出两种方式的费用,#in clude void mai n() float a,x,y;printf( n请输入您的话费:”);scanf( “ %f, ”,&a);x= 0.6*a;y=50+0.4*a;printf (神州行话费为n” ,x);printf (全球通话费为n” ,y);if (x=y)printf(建议使用全球通”);else printf(建议使用神州行);11 我所得税计算,应纳税款的计算公式如下:收入税率收入=1000元部分0 %2000元 =收入1000元的部分5 %3000元 =收入2000元的部分10%6000元 =收入3000元
9、的部分15%收入6000元的部分20%输入某人的收入,计算出应纳税额及实际得到的报酬。(7分)(如需连续计算多我的纳税情况,直到输入负数为止,程序应如何改进?试写出程 序)#i nclude“ stdio.h ”void mai n()int grade;float in come,tax,m on ey;printf( “ please in put your in comen”);sca nf (“ f,&in come);if (in come 90,等级 为 A 80 score90,等级为 B。70 w score80,等级为 CC 60 w score70,等级为 D。 score
10、60 ,等级为 E。#include void main()int data;char grade;printf(Please enter the score:); scanf(%d ” , &data);switch(data/10) case 10:case 9 : grade= A ; break;case 8: grade= B ;break;D ;break;E;”,grade);case 7: grade= C;break;case 6: grade=default: grade= printf(the grade is %c*13. 编程设计一个简单的计算器程序。从键盘输入 2个
11、制作数, 1 个运算符,当运 算符为加( +)、减( - )、乘( * )、除( /)时,输出计算结果 #include void main() int data1, data2; /*定义两个制作符 */char op;/*定义运算符 */printf(Please enter the expression:);scanf(%d%c%d, &data1, &op, &data2); /*输入运算表达式 */switch(op)/*根据输入的运算符确定要执行的运算 */ case +:/*处理加法 */printf(%d + %d = %d n, data1, data2, data1 + d
12、ata2); break;case -:/*处理减法 */printf(%d - %d = %d n, data1, data2, data1 - data2);break;case *:/*处理乘法 */printf(%d * %d = %d n, data1, data2, data1 * data2); break;case /: /* 处理除法 */if (0 = data2) /*为避免出现溢出不对,检验除数是否为printf(Division by zero!n);elseprintf(%d / %d = %d n, data1, data2, data1 / data2); br
13、eak;default: printf(Unknown operator! n);14. 从键盘输入 10 个整数,统计其中正数、负数和零的个数,并在屏幕上输出。 #include void main( )int a10, i,p=0,n=0,z=0;printf( “ please input number ” ); for(i=0;i0) p+;else if (ai0)n+;else z+printf( 正数:5d,负数:5d,零:n”,p,n,z);15、编程序实现求 1-10 之间的所有数的乘积并输出。#include void main( ) int i 。long sum=1;f
14、or(i=1; i=10; i=i+1)sum=sum*i;printf( “the sum of odd is :%l d” ,sum);16. 从键盘上输入 10 个数,求其平均值。#include void main()int a10,i,s=0;float ave;for(i=0;i10;i+)scanf( “%d” ,&ai); for(i=0;i10;i+) sum+=ai;ave=(float)sum/10; printf(ave = %fn, ave);17、编程序实现求 1-1000 之间的所有奇数的和并输出。#include void main() int i, sum=0
15、;for(i=1; i1000; i=i+2) sum=sum+i;printf( “ the sum of odd is :%d ” ,sum);18. 有一个分数序列:2/1 , 3/2 , 5/3 , 8/5 , 13/8 , 21/13 编程求这个序列的前 20 项之和。#include void main()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;printf(sum=%6.2f,s);19. 用数组实现以下功能:输入 5 个学生成绩,而后求出这些成绩的平均值并显示 出来。#include
16、 void main() int a5, s=0;int i;for(i=0;i5;i+)scanf( “%d” ,&ai);for(i=0;i5;i+)s=s+ai;printf(“ result=%f ”,s/5.0);20、用循环的方法构造一个5 行 5 列的二维数组, 使主对角线上的变量为1,其它为0,并将数组中所有项按行按列显示出来。#include void main() int a55,i,j, s=0;for(i=0;i5;i+)for(j=0;j5;j+)if(i=j)aij=1;elseaij=0;for(i=0;i5;i+) for(j=0;j5;j+)printf(“
17、%5d” , aij);printf(“ n ”);21 求一个3X 3矩阵主对角线元素之和。从键盘输入矩阵元素的值并输出和的值.#include void main() int a33,sum=0;int i,j;printf(Enter data:n);for(i=0;i3;i+)for(j=0;j3;j+)scanf(%d,&aij);for(i=0;i3;i+)sum=sum+aii; printf(sum=%d,sum);22. 输入n的值,n代表行数,输出如图所示的图形。* * * * * * * * * * * * (此图为n = 6时的输出结果)#include void ma
18、in()int i , k , n;printf(Enter number:n);scanf(%d,&n);for (i = 1; i = n; i+)/*控制行数 */for (k = 1; k = i; k+) /*控制每行输出的 * 号个数 */printf(*);printf(n); /*输出一行后换行 */23、从键盘输入 30 名学生的成绩数据,求其中的最高分、最低分和平均分。 (提示:用数组存放成绩数据)#include#define M 30void main ( ) float scoreM, max , min, aver;int i ;printf(“please inp
19、ut score: n ” );for(i=0; iM ; i+)scanf(“%f”, &scorei);max=score0;min=score0;aver=score0;for(i=1; iM; i+) if (max scorei) min=scorei;aver+=scorei;printf( “max=%f, min=%f,aver=%f ” , max, min, aver/M);24. 从键盘输入某班学生某门课的成绩及其学号(班级人数最多40 人,具体人数由键盘输入),输出该班最高分和最低分及其学生学号。并输出该班该课程的总分和平 均分。请编写程序。#include #defi
20、ne ARR_SIZE 40void main() float scoreARR_SIZE, maxScore,minScore,sum;int n, i;long maxNum, minNum,numARR_SIZE;printf(Please enter total number:);scanf(%d, &n);printf(Please enter the number and score:n);for (i=0; in; i+) scanf(%ld%f, &numi, &scorei); maxScore = score0;minScore= score0; maxNum = num0
21、; minNum= num0;sum=score0;for (i=1; i maxScore) maxScore = scorei;maxNum = numi;else if (scorei minScore) minScore = scorei; minNum = numi; sum=sum+scorei;printf(maxScore = %.0f, maxNum = %ldn, maxScore, maxNum);printf(minScore = %.0f, minNum = %ldn, minScore, minNum); printf(sum = %.1f, average = %
22、.1fn, sum, sum/n);25. 将一个有 5 个元素的数组中的值 ( 整数) 按逆序重新存放。例: 原来顺序为 :8 、6、5、4、1,要求改为 1、4、5、6、8 #define N 5 #include void main()int aN,i,temp;printf( “ enter array a:n” );for(i=0;iN;i+)scanf( “ %d” ,&ai);for(i=0;iN;i+) temp=ai;ai=aN-i-1; aN-i-1=temp; printf(“n Now, array a:n” );for(i=0;iN;i+)printf(“ %4d”
23、,ai);printf(“n ” );26. 从键盘上输入一个 2*3 的矩阵,将其转秩后形成 3*2 的矩阵输出。#include void main()int a23, b32,i,j;for(i=0;i2;i+)for(j=0;j3;j+)scanf(“ %d” ,&aij);for(i=0;i3;i+)for(j=0;j2;j+)bij=aji;for(i=0;i3;i+) for(j=0;j2;j+)printf(%5d,bij); printf(n ” );提示:29、从键盘输入 10 名学生的成绩数据,按成绩从高到低的顺序排列并输出。 用数组存放成绩数据)#include voi
24、d main()int a10;int i,j,temp;printf(input score:n); for(i=0;i10;i+) scanf(%d,&ai);printf(n);for(i=1;i10;i+)for(j=0;j9;j+) if(ajaj+1) temp=aj; aj=aj+1; aj+1=temp; for(i=0;i10;i+) printf(%d,ai); 30. 定义一个 5 行 3 列的数组,从键盘输入各数组元素的值,计算各数组元素之和 #include void main( ) int i, j ,a53;printf( “Enter data:n ” );fo
25、r(i=0;i5;i+)for(j=0;j3;j+)scanf(“ %d” ,&aij);for(i=0;i5;i+)for(j=0;j3;j+) sum=sum+aij;printf( “ sum=%5dn” ,sum);32、从键盘上输入一个 4*3 的整型数组, 找出数组中的最小值及其在数组中的下标。 #include void main() int a43, i , j ,min,m,n;printf(Please enter data:);for (i=0; i4; i+)for (j=0; j3; j+)scanf(“ %d” ,& aij);min=a00;m=0; n=0;fo
26、r (i=0; i4; i+)for (j=0; j3; j+)if (aijmin)min= aij;m=i;n=j;printf(the min is %dn, min);printf(posion is %d%d n, m,n); 33编程实现如下功能:从键盘输入一行字符,统计其中大写英文字符,小写英文 字符和其他字符的个数。#include #include #define ARR_SIZE 80void main()char strARR_SIZE;int len, i, letter = 0, digit = 0, space = 0, others = 0;printf(Plea
27、se input a string:);gets(str);len = strlen(str);for (i=0; i= a & stri = A & stri = 0 & stri = 9 )digit +;/*统计数字字符 */elseothers +; /* 统计其它字符的个数 */printf(English character: %dn, letter);printf(digit character: %dn, digit);printf(other character: %dn, others);*36 、猜数游戏。系统随机产生一个整数,通过键盘输入数据猜数,猜对为止,并要 求统计猜的次数。注:rand()函数可以产生032767间的正整数,程序中需包含stdlib.h#include #include void main()int magic;int guess;int counter;magic = rand() % 100 + 1;counter = 0;doprintf(Please guess a magic number:);scanf(%d, &guess)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全责任活动承诺书4篇
- 市场营销策略制定指南市场调研整合版
- 高级团课考试题型及答案
- 2025年病案室病案编码规范性考核试题及答案解析
- 2025年英语高考宁波试卷及答案
- 生产设备操作规程维护和维修指引书
- 雨后的彩虹写景并抒情作文12篇
- 职业技能培训个人守秘责任书(9篇)
- 2025年保育知识试题以及答案
- 企业人力资源管理基础模板
- 亚朵酒店管理
- 财政分局对账管理制度
- 2025至2030中国智慧供暖行业产业运行态势及投资规划深度研究报告
- 四讲四有课件
- 出租物业安全协议书
- GB/T 45637-2025电动牙刷性能测试方法
- 【中国信通院】eSIM产业热点问题研究报告(2025年)
- GB/T 25820-2025包装用钢带
- 小学生消防安全课件图片
- 实验室人员准入制度
- 2025年全国普通话水平测试15套复习题库及答案
评论
0/150
提交评论