c语言期末1.docx
- 文档编号:26455716
- 上传时间:2023-06-19
- 格式:DOCX
- 页数:32
- 大小:24.05KB
c语言期末1.docx
《c语言期末1.docx》由会员分享,可在线阅读,更多相关《c语言期末1.docx(32页珍藏版)》请在冰豆网上搜索。
c语言期末1
【程序改错】
1.功能:
根据整型形参m,计算如下公式的值:
y=1/2+1/8+1/18+...+1/2m*m
#include"stdio.h"
doublefun(intm)
{
/**********ERROR**********/
doubley=0.0[doubley=0.0;]
inti;
/**********ERROR**********/
for(i=1;i { /**********ERROR**********/ y=+1.0/(2*i*i);[y=y+1.0/(2*i*i);] } return(y); } main() { intn; printf("Entern: "); scanf("%d",&n); printf("\nTheresultis%1f\n",fun(n)); } 2.题目: 从键盘输入的正整数中找出最大值,输入0时结束。 #include"stdio.h" main() { intmax=0,a; do { scanf("%d",&a); /**********ERROR**********/ if(a>max)a=max;[if(a>max)max=a;] } /**********ERROR**********/ while(a==0);[while(a! =0);] printf("%d",max); } 3.题目: 从键盘输入数a、b、c后,输出其中最小的数。 #include"stdio.h" main() { inta,b,c,t,m; scanf("%d%d%d",&a,&b,&c); printf("a=%d,b=%d,c=%d\n",a,b,c); /**********ERROR**********/ t=(a>b)? a: b;[t=(a a: b;] /**********ERROR**********/ m=(t>c)? t: c;[m=(t t: c;] printf("mis%d\n",m); } 4.题目: 求8! 的结果。 #include"stdio.h" main() { inti=8; longs1=1,j; /**********ERROR**********/ for(j=1;j /**********ERROR**********/ s1=s1*i;[s1=s1*j;] printf("%ld",s1); } 5.题目: 从键盘输入35,求出能被3和5整除的数。 #include"stdio.h" main() { intn,flag; scanf("%d",&n); flag=0; /**********ERROR**********/ if(n/3! =0)flag=-1;[if(n%3! =0)flag=-1;] if(n%5! =0)flag=-1; /**********ERROR**********/ if(flag! =0)printf("能被3,5整除");[if(flag==0)printf("能被3,5整除");] elseprintf("不能被3,5整除"); } 6.功能: 一个整数,它加上100后是一个完全平方数,再加上168又 是一个完全平方数,请问该数是多少? #include"stdio.h" #include"math.h" main() { longinti,x,y,z; /**********ERROR**********/ for(i==1;i<100000;i++)[for(i=1;i<100000;i++)] { /**********ERROR**********/ x=sqrt(i+100)[x=sqrt(i+100);] y=sqrt(i+268); /**********ERROR**********/ if(x*x==i+100||y*y==i+268)[if(x*x==i+100&&y*y==i+268)] printf("\n%ld\n",i); } } 7.题目: 求分段函数y=-1(x<0),y=1(x>0),y=0(x=0)的值。 #include"stdio.h" main() { intx,y; scanf("%d",&x); /**********ERROR**********/ if(x<=0)y=-1;[if(x<0)y=-1;] /**********ERROR**********/ elseif(x=0)y=0;[elseif(x==0)y=0;] elsey=1; printf("x=%d,y=%d\n",x,y); } 8.题目: 从键盘输入的整数中找出最小值,输入负数时结束。 #include"stdio.h" main() { intmin,a; scanf("%d",&a); min=a; /**********ERROR**********/ while(a<0)[while(a>=0)] { /**********ERROR**********/ if(a>min)min=a;[if(a scanf("%d",&a); } } 9.题目: 输入两个正整数,并由小到大排列。 输入负数或0则重新输入。 #include"stdio.h" main() { inta,b,t; do { scanf("%d,%d",&a,&b); } /**********ERROR**********/ while(a>=0&&b>=0);[while(a<=0||b<=0);] if(a>=b) /**********ERROR**********/ t=a;a=b;b=t;[{t=a;a=b;b=t;}] printf("a=%d,b=%d",a,b); } 10.功能: 以下程序能求出1*1+2*2+......+n*n<=1000中满足条件的 最大的n。 #include"stdio.h" #include"string.h" main() { intn,s; /**********ERROR**********/ s==n=0;[s=n=0;] /**********ERROR**********/ while(s>1000)[while(s<=1000)] { ++n; s+=n*n; } /**********ERROR**********/ printf("n=%d\n",&n-1);[printf("n=%d\n",n-1);] } 1.某班级有5个同学,请从键盘输入这5名同学的数学成绩,将成绩从低到高输出(请使用冒泡排序法完成此题)。 #include intmain(){ int_____1_score[5]___,i,j,n=5,temp; for(i=0;___2_i<5或i<=4___;i++) scanf("%d",____3_&score[i]____); for(i=0;i for(j=0;j if(____4_score[j]>score[j+1]___){ temp=score[j]; score[j]=____5_score[j+1]___; score[j+1]=____6_temp___;}}} for(____7_i=0__;i ____8printf___("%d",score[i]);} return0;} 2.从键盘输入两个正整数m和n,请计算m~n之间的偶数和。 (m一定比n小) #include int____1__main()___{ ___2_int__i,m,n;//变量定义 int____3_sum=0____;//求和变量定义 scanf("%d%d",&m,&n); for(___4_i=m___;___5__i<=n___;i++)//在m,n之间循环 if(____6_i%2==0____)//判断奇偶数 ____7_sum=sum+i____;//求和 printf("___8_%d_",sum);//输出结果 return0} 空1】main(void)main() 【空2】int 【空3】sum=0 【空4】i=m 【空5】i<=n 【空6】i%2==0 【空7】sum+=I或sum=sum+i 【空8】%d 3.请编程输出以下图形: (注: 第一行的星号左边有两个空格。 必须使用循环结构完成此题)。 * ** *** #include intmain() { inti,____1_____;//定义变量 for(___2___;i<=3;i++)//行数 { for(j=1;____3___;j++)//空格数量 _____4____("");//空格输出 for(k=1;____5____;k++)//星号数量 _______6_____;//星号输出 printf("____7_____");//行尾输出 } _____8_____0;//函数返回 } 【空1】j,k 【空2】i=1 【空3】j<=3-i 【空4】printf 【空5】k<=i 【空6】printf("*") 【空7】\n 【空8】return 4.视力检查时,国际上以1.0作为成人视力的标准,以成年人为例,如果视力>=1.0,则说明视力优秀;如果0.8=<视力<1.0,说明视力良好;如果0.6=<视力<0.8,说明视力普通;如果视力<0.6,说明近视。 请编程实现,从键盘输入一个人的视力后由程序判断并输出视力水平。 #include intmain() { _____1_____; scanf("%lf",____2___); ___3___(sl>=1.0) printf("视力优秀"); ___4___(sl>=0.8) printf("_____5___"); elseif(____6___) printf("____7____"); else _____8_______; return0; } 【空1】doublesl 【空2】&sl 【空3】if 【空4】elseif 【空5】视力良好 【空6】sl>=0.6 【空7】视力普通 【空8】printf("近视") 5.已知: 正方体的表面积=棱长*棱长*6,公式: S=h*h*6;请编程实现,从键盘输入正方体的棱长h,计算正方体的表面积S。 #include int____1______ { inth,s;//定义变量 ___2____("____3____",&h);//输入 s=______4______;//计算 ____5____("%d\n",s);//输出 ____6_____0;//程序返回 } 【空1】main() 【空2】scanf 【空3】%d 【空4】h*h*6或h*6*h或6*h*h 【空5】printf 【空6】return 6.已知: 圆柱的侧面积=底面的周长乘高,公式: S=2πrh;请编程实现,从键盘输入圆柱的底面半径r和圆柱体的高h,计算圆柱的侧面积S。 #include<____1____> int___2____() { intr,h; double____3______; _____4____("%d%d",&r,&h); s=2*3.14____5______; printf("%lf\n",s); ____6____0; } 【空1】stdio.h iostream.h 【空2】main 【空3】s 【空4】scanf 【空5】*r*h 【空6】return 7.肥胖程度计算公式BMI法: 体重指数=体重(公斤)/身高(米)的平方kg/(m*m)。 正常体重: 体重指数<=25;超重: 25<体重指数<=30;轻度肥胖: 30<体重指数<=35;中度肥胖: 35<体重指数<=40;如果以上条件均不满足,为重度肥胖。 请编程实现,从键盘输入一人的身高h和体重w并输出其肥胖程度。 #include intmain() { _____1____h,w,BMI;//定义变量 scanf("%lf%lf",&h,____2_____);//输入 ___3___=h/(w*w);//计算体重指数 if(___4____)//条件判断 printf("正常体重"); ____5____(BMI<=30)//条件判断 printf("超重"); elseif(____6_____)//条件判断 printf("____7____");//输出体重指数等级 elseif(BMI<=40) printf("中度肥胖"); else printf("____8_____");//输出体重指数等级 return0; } 【空1】double 【空2】&w 【空3】BMI 【空4】BMI<=25 【空5】elseif 【空6】BMI<=35 【空7】轻度肥胖 【空8】重度肥胖 8.从键盘输入一个正整数n,计算1~n中能被3整除的数字之和,即3+6+9+……。 #include int____1_____() { ___2__i,n,sum=0;//变量定义 ____3_____("%d",&n);//输入 ____4___(i=1;____5___;i++)//1~n的范围内 ___6___(____7_____)//条件判断 sum+=i; printf("%d",___8___);//结果输出 return0; } 【空1】main 【空2】int 【空3】scanf 【空4】for 【空5】i<=n 【空6】if 【空7】i%3==0 【空8】sum 9.某比赛有6位参赛选手,请从键盘输入这6位参赛选手的得分,将得分从高到低输出(请使用冒泡排序法完成此题)。 #include intmain() { int____1___,i,j,n=6,temp;//数组定义 for(___2____;____3_____;i++)//循环边界 scanf("%d",_____4______);//输入选手成绩 for(i=0;i ____5____(j=0;j if(grade[j]___6____grade[j+1]){//寻找单次最值 temp=grade[j]; ______7_______;//符合条件交换 grade[j+1]=temp; } } } for(i=0;i printf("%d",_____8______);//输出 } return0; } 【空1】grade[6] 【空2】i=0 【空3】i 【空4】&grade[i] 【空5】for 【空6】< 【空7】grade[j+1]=grade[j]或grade[j]=grade[j+1] 【空8】grade[i] 10.编写程序,从键盘输入一个字符,输出该字符的ASCII码以及与该字符前后相邻的两个字符。 如输入d,输出100ce。 #include intmain() { _____1_____a;//定义初始字符变量 scanf("%c",____2____);//输入 printf("____3_____",a);//输出ASCII码 printf("\n"); printf("_____4_____",a-1);//输出前一个字符 printf("%c",____5____);//输出后一个字符 _____6_____0;//程序返回 } 【空1】char 【空2】&a 【空3】%d 【空4】%c 【空5】a+1 【空6】return 11.请编程实现,从键盘输入一个整数n,并判断该数字是否为质数(质数又称素数。 指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数)。 #include intmain() { ____1____n,i;//定义变量 scanf("%d",__2___);//输入 ___3___(___4____;i<=n-1;i++)//分母范围 if(____5___==0)//素数条件 _____6____;//循环执行决定因素 ___7__(i==n)//是否素数判断条件 ___8____("%d是质数\n",n);//输出 return0; } 【空1】int 【空2】&n 【空3】for 【空4】i=2 【空5】n%i 【空6】break 【空7】if 【空8】printf 12.假设有数组inta[10];编程实现输入10个数组元素的值,去掉最大值,计算剩余数字的平均值。 #include intmain() { int_____1____,i,max,sum=0;//定义变量 double____2____;//定义变量 for(____3___;i<10;i++)//数组边界循环 scanf("%d",_____4______);//输入数组元素 _____5______=a[0];//赋值 for(i=0;i<10;i++) { if(____6_____)max=a[i];//找最值 sum+=a[i]; } avg=(____7_____)/9.0;//求平均 _____8_____("%lf",avg);//输出 return0; } 【空1】a[10] 【空2】avg 【空3】i=0 【空4】&a[i] 【空5】max
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 期末
![提示](https://static.bdocx.com/images/bang_tan.gif)