13机制本科C语言程序设计复习资料
更新时间:2024-04-11 02:05:01 阅读量: 综合文库 文档下载
C语言程序设计复习资料
1. 计算定期存款本利之和
设银行定期存款的年利率rate为2.25%,并已知存款期为n年,存款本金为capital元,试编程计算n年后的本利之和deposit。要求定期存款的年利率rate、存款期n和存款本金capital均由键盘输入。 2. 编写一个C程序,求a、b、c、d四个数中的最大者。
3.输入4个整数,要求按由小到大顺序输出。得到正确结果后,修改程序使之按由大到小顺序输出。 4.根据以下函数关系,对输入的每个x值,计算出相应的y值。
?ex?1?y??|x|?2?sin(x2)? #include void main() { float x,y; scanf(\
if ( ) y= ; else if( )
y= ;
else printf(\}
相关知识点:if语句的嵌套;数学函数的调用方式。 5. 写程序实现以下函数:
0?x?13?x?4
当x取其他值时
#include
?x(x?1)?y??2x?1(1?x?10)
?3x?11(x?10)?用scanf函数输入x的值,求y值。运行程序,输入x的值(分别为x<1、1≤x<10、x>10三种情况),检查输出的y值是否正确。
6. 编写程序,要求对输入的数字1~7转换成文字星期几,对其它数字不转换。例如,输入5时,程序应该输出Friday。 7. 程序 求1+?+100,填空,实现该功能。
#include
int s,i;
s=0; /* 第5行 */ for( ) s=s+i;
printf(\}
8. 若输入12345,分析输出结果是多少?上机验证。
#include
{ long data;
scanf(\
第1页
C语言程序设计复习资料
while(data)
{ printf(\ data=data/10; } }
9. 填空完成程序,程序输入一批考试分数,用?1作为结束标志,若输入大于100分,则提示重新输入,然后计算最高分、最低分与平均分。请调试、检查程序中的错误,并改正之。
#include
int n=0, sum=0 ; int max=0 , min=100 ; for ( ; ; )
{ scanf(\ if ( mark > 100 )
{ printf(\ reinput \\n \ ___________; }
if ( mark==-1) ___________; n ++ ;
sum=sum + mark ; if(___________ ) max = mark ; if(___________)
min = mark ; } sum=sum/ n ;
printf(\ }
10程:输入20个1~90的整数,分类统计1~30、31~60、61~90的数各有多少个?
编程点拨:
(1) count1计1~30的个数,count2计31~60的个数,count3计61~90的个数。
(2) 用for循环20次实现该程序的功能:输入一个整数x,判断该数所在的范围,若x是1~30,则count1加1;
若x是31~60,则count2加1;若x是61~90,则count3加1。 (3) 最后,输出统计的结果。 #include
{ int count1=0,count2=0,count3=0; int i,x;
printf(“Please input 20 numbers:”); for(i=0;i<20;i++) { scanf(“%d”,&x);
??? /*补充完成程序*/ }
第2页
C语言程序设计复习资料
/* 输出统计结果 */ ????? }
补充完成该程序。
11.编程:素数是除了1和其本身以外,不能被其他自然数整除的自然数。从键盘输入一个数,判断该数是不是素数?
编程点拨: a) b) c)
输入这个数x。
用for循环2~x-1,用2~x-1的每一个数去除x,若有一个数整除x,则说明x不是素数;否则,x就是素数。
最后,将判断结果输出。
#include
printf(\ one natural integer: \scanf(\
for(i=2;i 12.编程:显示所有的水仙花数。谓水仙花数,是指一个3位数,其各位数字立方和等于该数字本身。例,153是水仙花数,因为153=13+53+33 。有两种解题思路,选择其中之一编程实现: 13.调试下列程序,使之具有如下功能:输入10个整数,按每行3个数输出这些整数,最后输出10个整数的平均值。写出调试过程。 #inclue #define N 10 void main( ) { int i,a[N],av; for(i=0;i printf(\; } for(i=0;i!=N;i++) av+=a[i]; printf(\; } 14.有一个3行4列的距阵,现要求编程求出其中最大的那个元素的值,以及它所在的行号与列号。程序的初始说明和输出语句如下所示,请补充完成该程序。 #include int i, j, row, colum, max; static int a[3][4] = {{1,2,3,4}, {9,8,7,6}, {-10,10,-5,2}}; printf(\ max, row, colum); …… 第3页 C语言程序设计复习资料 } 15. 数组中已存互不相同的10个整数,从键盘输入一个整数,输出与该值相同的数组元素下标。 编程点拨: ① 输入要查找的变量x的值; ② 使用循环将输入的数和数组元素逐个进行比较,若找到,则提前退出循环; ③ 根据循环是正常结束还是提前结束来判断是否找到x。 部分源代码: #include { int i, x, a[10]={1,2,3,4,5,6,7,8,9,10}; /*输入x变量的值 */ for ( i=0; i<10; i++ ) printf(\ printf(\ /* 循环查找与x相等的元素 */ if ( ) printf(\ /* 输出查找结论 ,输出下标值 */ else printf(\ } 16.编写程序,任意输入10个从大到小的整数数列,然后输入一个整数插入到数列中,使数列保持从大到小的顺序。 部分源代码: #include printf(“Please input 10 numbers:”); for (i=0; i scanf(“%d”,&a[i]); /*乱序输入10个整数*/ …… } 相关知识:①比较排序法、选择排序法和冒泡排序法;②数据元素的插入。 17.输入十个互不相同的整数并存在数组中,找出最大元素,并删除。 18. 以下程序的功能是:从键盘上输入若干个学生的成绩,统计计算出平均成绩,并输出低于平均分的学生成绩,用输入负数结束输入。请填空: #include { float x[1000], sum=0.0, ave, a; int n=0, i; printf (\ mark : \\n\ scanf(\ while (a>=0.0 && n<1000) { sum+= ; x[n]= ; n++; 第4页 C语言程序设计复习资料 scanf(\ } ave= ; printf (\ printf (\ for (i=0; i printf(\ } 19. 综合编程题:打印如下杨辉三角形 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 编程点拨: 杨辉三角形有如下特点: ① ② ③ 只有下半三角形有确定的值; 第一列和对角线上的元素值都是1; 其它元素值均是前一行同一列元素与前一行前一列元素之和。 20.调试下列程序,使之具有如下功能:任意输入两个字符串(如:“abc 123”和“china”),并存放在a,b两个数组中。然后把较短的字符串放在a数组,较长的字符串放在b数组。并输出。 #include { char a[10],b[10]; int c,d,k,ch; scanf(\ scanf(\ printf(\ c=strlen(a); d=strlen(b); if(c>d) for(k=0;k { ch=a[k];a[k]=b[k];b[k]=ch;} printf(\ printf(\ } 21.阅读下面的程序,然后回答后面的问题: #include char s1[80], s2[40]; int i = 0, j = 0; 第5页 C语言程序设计复习资料 } printf(\ scanf(\ printf(\ scanf(\ while (s1[i]!= '\\0' ) i++; s1[i++]=s2[j ++]; while (s2[j]!= '\\0' ) s1[i]= '\\0'; printf(\ 编辑、运行该程序,然后分别输入 Country 和side。请问: ① 程序执行的结果是什么? ② 该程序的功能是什么? 22.填空完成程序,使其功能是对从键盘上输入的两个字符串进行比较,然后输出两个字符串中第一个不相同字符的ASCII码之差。例如:输入的两个字符串分别为abcdefg和abceef,则输出为-1。程序如下: #include void main ( ) { char str1[100],str2[100]; int i,s; printf(\ printf(“\\n Input string 2:\\n”);gets(str2); i= (1) ; while((str1[i]==str2[i])&&(str1[i]!= (2) )) i++; s= (3) ; printf(\ } 23.填空完成程序,使其的功能是统计从终端输入字符中每个大写字母的个数。用#号作为输入结束标志。程序如下: #include { int num[26],i; char c; for (i=0;i<26;i++) num[i]=0; while ( (1) != '#') /* 统计从终端输入的大写字母个数*/ if (isupper(c)) num[c-65] (2) ; for (i=0;i<26;i++) /* 输出大写字母和该字母的个数*/ if (num[i])printf(\ (3) ,num[i]); } 24.编写程序,输入字符串s1和s2以及插入位置f,在字符串s1中的指定位置f处插入字符串s2。如:输入\、\和位置3,则输出:\。 25. 阅读程序,注意在调试时F11和F10的区别,还要注意函数调用过程中形参、实参的关系。 #include 第6页 C语言程序设计复习资料 void main() { int x=10,y=20; void swap (int ,int); printf(\swap(x,y); printf(\ } void swap (int m,int n) { int temp; printf(\temp=m;m=n;n=temp; printf(\} 26. 下列程序是实现求素数的,请填空完成该程序,并上机运行测试。 #include ; /* 申明求素数函数 */ printf(\scanf(\ ; /* 调用求素数函数 */ } void prime(int n) { int i,k; k=sqrt(n); for(i=2;i<=k;i++) if (___________;) break; if(___________) printf(\else printf(\ } 27. 下列程序的功能是从键盘上输入的若干个数并求出最大值。请填空完成该程序。#include int s[10], max; /* Findmax()函数的申明 */ ; printf(\ /* 输入10个数据到s数组中 */ ; /* 调用Findmax函数 */ ; 第7页 C语言程序设计复习资料 for (i=0;i<10; i++) printf(\ printf(\ max is %d \ } int Findmax( int x[ ], int n ) { int max,i; ___________; for ( i=1; i 28. 下列程序的功能是从键盘上输入的若干个数按升序排序。请填空完成该程序。#include s[i]=j; _________; for (k=0; _________; k++) printf( \ printf(\ } void sort(float x[ ], int n ) { int i, j, temp,min; for ( i=0; i min=j; if(min!=i) { temp=x[i]; x[i]=x[min]; x[min]=temp; } } } 29. 编写程序,实现由主函数输入m、n,按下述公式计算并输出Cnm的值。 Cnm!m?n!(m?n)! 提示:定义一个求阶层的函数,然后在主函数中调用三次即可求得。 第8页 C语言程序设计复习资料 30.上机调试程序,观察静态局部变量在调用过程中的变化。 #include int f(int); for ( i = 1; i <= 5; i ++) printf( \ printf(\} int f ( int n) { static int j = 1; j = j * n; return( j ); } 31.上机验证以下程序的运行结果 #include { int i,a[]={1,2,3},*p; p=a;/*将数组a首地址赋给指针p*/ for (i=0;i<3;i++) printf(\} 32.编写程序,使之具有如下功能:用指针法输入12个数,然后按每行4个数输出。 33.编写下列程序的sum函数和swap函数,使之具有如下功能:任意输入2个数,调用两个函数分别求:的和, ⑵ 2个数交换值。 #include { int a,b,c,*p=&c; void sum(int ,int ,int *); void swap(int * ,int * ); scanf(\ sum(a,b,p); swap(&a,&b); printf(\ printf(\} void sum(int a,int b,int *c) { } void swap(int *a,int *b) { } 第9页 ⑴ 2个数 C语言程序设计复习资料 34.下面的程序是用来从键盘输入是个整数,然后求出其中的最小值。填写空缺部分。 #include void lookup(int *t,int *a,int n) { int k; *a=t[0]; for(k=1;k if( ) *a=t[k]; } void main() { int k,min,*p=&min; for (k=0;k<10;k++) scanf(\lookup( , ,10); printf(\} 35.编程题:已知一个整型数组a[5],其各元素值为4,6,8,10,12。使用指针求该数组元素之积。 36. 阅读下面的程序。 void main() { char a[]=\int i; p1=a;p2=b; for( ; *p1!=’\\0’;p1++,p2++) *p2=*p1; p2=’\\0’; printf(\printf(\for(i=0;b[i]!=’\\0’;i++) printf(\ } 编辑、运行该程序,然后分别输入 Country 和side。请问: ① 程序执行的结果是什么? ② 该程序的功能是什么? 37.以下是一个编写input()和output()函数输入,输出5个学生的数据记录;请在空白处填上适当的语句。 #include struct student { char num[6]; char name[8]; int score[4]; } stu[N]; void input(struct student stu[]) { int i,j; for(i=0;i printf(\请输入%d个学生中第%d个的信息:\\n\ 第10页 C语言程序设计复习资料 printf(\学号:\ scanf(\ printf(\姓名:\ scanf(\ for(j=0;j<3;j++) { printf(\成绩%d:\ scanf(\ } printf(\ } } void print(struct student stu[]) { int i,j; printf(\ printf(\学号 姓名 成绩1 成绩2 成绩3\\n\printf(\ for(i=0;i printf(\ for(j=0;j<3;j++) printf(\ printf(\ } printf(\} void main() { input( ); print(stu); } 第11页 C语言程序设计复习资料 printf(\学号:\ scanf(\ printf(\姓名:\ scanf(\ for(j=0;j<3;j++) { printf(\成绩%d:\ scanf(\ } printf(\ } } void print(struct student stu[]) { int i,j; printf(\ printf(\学号 姓名 成绩1 成绩2 成绩3\\n\printf(\ for(i=0;i printf(\ for(j=0;j<3;j++) printf(\ printf(\ } printf(\} void main() { input( ); print(stu); } 第11页
正在阅读:
13机制本科C语言程序设计复习资料04-11
严防疫情扩散规范复工复产心得体会02-06
2016年2月16日财政部80号令代理记账管理办法07-03
简历特长怎么写12-11
CA6140车床后托架的设计05-29
【精华】中职班主任工作计划集锦6篇04-06
本科毕设论文--土壤重金属检测方法的研究 - 图文05-26
药品收货操作规程04-09
- 小学生造句大全
- 增压泵投资项目可行性研究报告(模板)
- 高中语文人教版粤教版必修1-5全部文言文知识点归纳
- 两学一做专题民主生活会组织生活会批评与自我批评环节个人发言提
- 管理处环境保洁工作操作标准作业指导书
- 2012六一儿童节活动议程 - 图文
- 移树申请报告
- 《贵州省市政工程计价定额》2016定额说明及计算规则
- 计算机长期没有向WSUS报告状态
- 汉语拼音教学策略研究
- 发展西部领先的航空货运枢纽
- 司法所上半年工作总结4篇
- 如何提高银行服务水平
- 发电厂各级人员岗位职责
- 丰田汽车的外部环境分析
- 2017—2018年最新冀教版四年级数学下册《混合运算》教案精品优质
- 中建八局样板策划 - 图文
- 戚安邦《项目管理学》电子书
- 2015年高级项目经理笔记
- 弯桥的设计要点
- 复习资料
- 程序设计
- 本科
- 机制
- 语言
- Juniper防火墙安装配置手册
- 微观经济学习题及答案
- 2007年中国汽车滤清器市场调查报告
- 肯德基的五力分析
- 高等教育出版社--微型计算机控制技术(潘新民,王燕芳)课后答案
- 山东省锂电池行业企业名录2018版185家 - 图文
- 2019年高考物理二轮复习规律方法二物理学中的图象问题
- 2-2高等数学同济大学第六版本
- 水法详解风水篇
- 基于稀疏表示的单帧图像超分辨算法研究
- 入炉煤皮带秤校验流程和标准11
- 人教版五年级长方体和正方体单元测试题
- 注册环境影响评价工程师《环境影响评价相关法律法规》高频考点试
- 标准的申报程序
- 如何有效的进行家校沟通
- 校警服务合同
- 大数的认识(1)
- 趣味文化常识竞赛题
- 基于单片机温度自动控制系统 - 图文
- 浙大远程教育2018年高级财务会计在线作业