计算机编程培训专题:所有C语言题库(1)

上传人:小****库 文档编号:22272064 上传时间:2021-05-23 格式:DOCX 页数:140 大小:90.85KB
返回 下载 相关 举报
计算机编程培训专题:所有C语言题库(1)_第1页
第1页 / 共140页
计算机编程培训专题:所有C语言题库(1)_第2页
第2页 / 共140页
计算机编程培训专题:所有C语言题库(1)_第3页
第3页 / 共140页
亲,该文档总共140页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
试卷编号:2203所属语言:C语言试卷方案:所有C语言题库试卷总分:1220分共有题型:1种一、程序填空 共122题 (共计1220分)第1题 (10.0分) 题号:558 难度:中 第2章/*-【程序填空】-功能:一个40磅重的板碎成4块,每块正好是一个整数磅,且用这 4块当砝码能称出140磅的整数重量的物体。编程求这4块 的各自重量。-*/#include #include main() int i,j,k,l,p,t1,t2,t3,t4; for(i=1;i38;i+) /*SPACE*/ for(【?】;j38-i;j+) /*SPACE*/ for(k=j;k【?】;k+) l=40-i-j-k; for(p=1;p40;p+) for(t1=-1;t12;t1+) for(t2=-1;t22;t2+) for(t3=-1;t32;t3+) for(t4=-1;t42;t4+) /*SPACE*/ if(【?】=p) goto next; break; /*SPACE*/ next:if(p=【?】) printf(%d,%d,%d,%dn,i,j,k,l); exit(0); printf(error.);答案:=(答案1)=j=i=(答案2)=39-i-j=或=39 -i -j=(答案3)=i*t1+j*t2+k*t3+l*t4=或=i * t1 + j * t2 + k * t3 + l * t4=(答案4)=39第2题 (10.0分) 题号:525 难度:较易 第2章/*-【程序填空】-功能:利用全局变量计算长方体的体积及三个面的面积。-*/#include int s1,s2,s3;int vs(int a,int b,int c) int v; /*SPACE*/ v=【?】; s1=a*b; /*SPACE*/ s2=【?】; s3=a*c; return v;main() int v,l,w,h; printf(ninput length,width and height: ); /*SPACE*/ scanf(%d%d%d,【?】,&w,&h); /*SPACE*/ v=【?】; printf(v=%d s1=%d s2=%d s3=%dn,v,s1,s2,s3);答案:=(答案1)=a*b*c=或=a*c*b=或=b*a*c=或=b*c*a=或=c*a*b=或=c*b*a=(答案2)=b*c=或=c*b=(答案3)=&l=(答案4)=vs(l,w,h)第3题 (10.0分) 题号:356 难度:易 第1章/*-【程序填空】-题目:从键盘输入一组整数,使用条件表达式找出最大的整数。 当输入的整数为 0 时结束。 例如,输入 1 2 3 5 4 0 时,输出max=5。-*/#include #include main() int num=-1; int max = 0; printf(请输入一组整数: n); /*SPACE*/ 【?】(num!=0) scanf(%d,&num); /*SPACE*/ max = 【?】 ? num : max; /*SPACE*/ 【?】(max=%dn, max);答案:=(答案1)=while=(答案2)=nummax=或=num=max=或=maxnum=或=max=num=(答案3)=printf第4题 (10.0分) 题号:537 难度:易 第2章/*-【程序填空】-功能:从读入的整数数据中,统计大于零的整数个数和小于零的 整数个数。用输入零来结束输入,程序中用变量i统计大于 零的整数个数,用变量j统计小于零的整数个数。-*/#include main() int n,i,j; printf(Enter iNT number,with 0 to endn); i=j=0; scanf(%d,&n); while(n!=0) /*SPACE*/ if(n0)i=【?】; /*SPACE*/ if(n0)j=【?】; /*SPACE*/ scanf(%d,【?】); printf(i=%4d,j=%4dn,i,j);答案:=(答案1)=i+1=或=1+i=(答案2)=j+1=或=1+j=(答案3)=&n第5题 (10.0分) 题号:364 难度:中 第6章/*-【程序填空】-功能:计算并输出high以内最大的10个素数之和,high由主函数传 给fun函数,若high的值为100,则函数的值为732。-*/#include #include #include int fun( int high ) int sum=0,n=0,j,yes; /*SPACE*/ while(high=2) & (【?】) yes=1; for (j=2;j=high/2;j+ ) /*SPACE*/ if (【?】) yes=0; break; if(yes) sum+=high; n+; high-; /*SPACE*/ 【?】;main( ) printf(%dn, fun(100);答案:=(答案1)=nn=或=n=n=(答案2)=high%j=0=或=!(high%j)=(答案3)=return sum=或=return(sum)第6题 (10.0分) 题号:353 难度:易 第6章/*-【程序填空】-功能:对任一整数N(N0),它都可以分解成1(或-1)和一些质数(素 数)因子的形式。例如:当N=150时,可分解成12355; 当N=-150时,可分解为-12355。 下边程序能实现这种分解过程。当N=150,输出以下分解结 果:N= 1* 2* 3* 5* 5-*/#include #include main() int n,i,r; scanf(%d,&n); if (n=0) printf (data error n); exit(0); /*SPACE*/ else if (【?】) printf(n=1); else printf(n=-1); n=-n; /*SPACE*/ for(【?】;i0=或=0n=(答案2)=i=2=(答案3)=r=n%i=(答案4)=n=n/i=或=n/=i第7题 (10.0分) 题号:584 难度:中 第2章/*-【程序填空】-功能:如果整数的全部因子(包括,不包括本身)之和等 于;且整数的全部因子 ( 包括,不包括本身 ) 之和等于,则将整数和称为亲密数。求 3000 以内 的全部亲密数。-*/#include #include main( ) int a, i, b, n ; printf(Friendly-numbers pair samller than 3000:n) ; for(a=1 ; a3000 ; a+) for(b=0,i=1 ; i=a/2 ; i+ ) /*SPACE*/ if(!(a%i) 【?】 ; for(n=0,i=1 ; i=b/2 ; i+) /*SPACE*/ if(!(b%i) 【?】 ; /*SPACE*/ if(【?】 & ab) printf(%4d%4dn,a,b) ; 答案:=(答案1)=b+=i=或=b=b+i=(答案2)=n+=i=或=n=n+i=(答案3)=n = a第8题 (10.0分) 题号:535 难度:易 第2章/*-【程序填空】-功能:百鸡问题:100元买100只鸡,公鸡一只5元钱,母鸡一只3 元钱,小鸡一元钱三只,求100元钱能买公鸡、母鸡、小鸡 各多少只?-*/#include main() int cocks,hens,chicks; cocks=0; while(cocks=19) /*SPACE*/ 【?】=0; /*SPACE*/ while(hens=【?】) chicks=100-cocks-hens; if(5*cocks+3*hens+chicks/3=100) printf(%d,%d,%dn,cocks,hens,chicks); /*SPACE*/ 【?】; /*SPACE*/ 【?】; 答案:=(答案1)=hens=(答案2)=33=(答案3)=hens+=或=+hens=或=hens=hens+1=或=hens=1+hens=(答案4)=cocks+=或=+cocks=或=cocks=cocks+1=或=cocks=1+cocks第9题 (10.0分) 题号:345 难度:易 第1章/*-【程序填空】-题目:从键盘键盘输入3个整数,然后找出最大的数并输出。 例如:输入12,45,43, 输出 三个数是:12,45,43.最大数是:45.。-*/#include #include main() int a, b, c, max; printf(请输入三个整数:n);/*SPACE*/ 【?】(%d,%d,%d,&a, &b, &c); printf(三个数是:%d,%d,%d., a, b, c);/*SPACE*/ if (【?】) max=a; else max=b; if (maxb=或=a=b=或=ba=或=b=a=(答案3)=max第10题 (10.0分) 题号:579 难度:易 第2章/*-【程序填空】-功能:输出1到100之间每位数的乘积大于每位数的和的数。例如:数字26,数位上数字的乘积12大于数字之和8。-*/#include main() int n,k=1,s=0,m; for(n=1;ns) printf(%d ,n); 答案:=(答案1)=m=n=(答案2)=m0=或=0m=(答案3)=m=m/10=或=m/=10第11题 (10.0分) 题号:539 难度:较易 第2章/*-【程序填空】-功能:计算圆周率的近似值。-*/#include #include main() int s,n; /*SPACE*/ double 【?】,t; t=1;pi=0;n=1;s=1; /*SPACE*/ while(【?】=2e-6) pi+=t;n+=2;s=-s;t=s/n; /*SPACE*/ pi*=【?】; printf(pi=%.6fn,pi);答案:=(答案1)=pi=(答案2)=fabs(t)=(答案3)=4第12题 (10.0分) 题号:606 难度:中 第1章/*-【程序填空】-给定程序中,sum(int n)函数的功能是:递归调用计算1n的累加和。请填空。例如:输入:100输出:5050-*/#include stdio.hint sum(int n) if(n=1) /*SPACE*/ 【?】; else/*SPACE*/ 【?】;void main() int m; scanf(%d,&m); printf(%d,sum(m);答案:=(答案1)=return(1)=(答案2)=return(sum(n-1) + n)第13题 (10.0分) 题号:360 难度:易 第1章/*-【程序填空】-题目:打印出11000中满足个位上的数字、十位上的数字和百位 上的数字都相等的所有三位数。 本题输出111,222,333,444,555,666,777,888,999, 1000-*/#include main() int i,g, s, b; for (i=1; i=1000; i+) /*SPACE*/ g=【?】; s=(i/10)%10; /*SPACE*/ b=(【?】)%10;/*SPACE*/ if(g=s 【?】 s=b) printf(%d,i); 答案:=(答案1)=i%10=(答案2)=i/100=(答案3)=&第14题 (10.0分) 题号:561 难度:易 第2章/*-【程序填空】-功能:三角形的面积为:area=sqrt(s*(s-a)*(s-b)*(s-c).其中 ,s=(a+b+c)/2,a、b、c为三角形三条边的长。定义两个带 参数的宏,一个用来求s,另一个用来求area。编写程序, 在程序中用带参数的宏求面积area。-*/#include #include math.h/*SPACE*/#【?】 S(x,y,z)(x+y+z)/2#define AREA(s,x,y,z)sqrt(s*(s-x)*(s-y)*(s-z)main() double area; float a,b,c,s; printf(a,b,c=); /*SPACE*/ scanf(%f,%f,%f,&a,【?】,&c); if(a+bc&b+ca&c+ab) /*SPACE*/ s=【?】; /*SPACE*/ area=【?】; printf(area=%fn,area); 答案:=(答案1)=define=(答案2)=&b=(答案3)=S(a,b,c)=(答案4)=AREA(s,a,b,c)第15题 (10.0分) 题号:557 难度:易 第2章/*-【程序填空】-功能:算式:?2*7?=3848中缺少一个十位数和一个个位数。编 程求出使该算式成立时的这两个数,并输出正确的算式。-*/#include #include main() int x,y; /*SPACE*/ for(x=1;【?】;x+) /*SPACE*/ for(【?】;y10;y+) /*SPACE*/ if(【?】=3848) /*SPACE*/ printf(%d*%d=3848n,【?】); exit(0); 答案:=(答案1)=xx=或=x=x=(答案2)=y=0=(答案3)=(10*x+2)*(70+y)=或=( 10 * x + 2 ) * ( 70 + y )=(答案4)=10*x+2,70+y=或=10 * x + 2 , 70 + y第16题 (10.0分) 题号:496 难度:易 第1章/*-【程序填空】-题目:给定程序中,函数fun的功能是:根据形参i的值返回某个函数的值。 当调用正确时,程序输出:x15.000000,x23.000000,x1*x1+x1*x2=40.000000。-*/#include double f1(double x) return x*x; double f2(double x, double y) return x*y; double fun(int i, double x, double y) if (i=1)/*SPACE*/ return 【?】(x); else/*SPACE*/ return 【?】(x, y);main() double x1=5, x2=3, r; r = fun(1, x1, x2); r += fun(2, x1, x2); printf(nx1=%f, x2=%f, x1*x1+x1*x2=%fnn,x1, x2, r);答案:=(答案1)=f1=(答案2)=f2第17题 (10.0分) 题号:473 难度:难 第1章/*-【程序填空】-题目:甲乙丙丁4人同时开始放鞭炮,甲每隔t1 s放一次,乙每隔t2 s放一次, 丙每隔t3 s放一次,丁每隔t4 s放一次,每人各放n次。 函数fun的功能是根据形参炸响,只算一次响声,第一次响声是在第0s。例如:若t17,t25,t36,t44,n10,则总共可听到28次鞭炮声。-*/#include /*SPACE*/#define OK(i, t, n) (【?】=0) & (i/tn)int fun(int t1, int t2, int t3, int t4, int n) int count, t , maxt=t1; if (maxt t2) maxt = t2; if (maxt t3) maxt = t3; if (maxt t4) maxt = t4; count=1; /* 给count赋初值 */*SPACE*/ for(t=1; t maxt*(n-1); 【?】) if(OK(t, t1, n) | OK(t, t2, n)| OK(t, t3, n) | OK(t, t4, n) ) count+; /*SPACE*/ return 【?】;main() int t1=7, t2=5, t3=6, t4=4, n=10, r; r = fun(t1, t2, t3, t4, n); printf(The sound : %dn, r);答案:=(答案1)=i%t=(答案2)=t+=或=t=t+1=或=t+=1=(答案3)=count第18题 (10.0分) 题号:350 难度:易 第1章/*-【程序填空】-题目:计算两个正数数n 和 m(m1000)之间所有数的和。n和m从 键盘输入。 例如,输入1,100,输出1到100之间所有数的和是:5050。 -*/#include #include main() int i,n,m; long sum=0; printf(请输入两个正整数:n,mn); /*SPACE*/ 【?】(%d,%d, &n, &m );/*SPACE*/ for(【?】; i=m; i+) /*SPACE*/ sum = 【?】; printf(%d到%d之间所有数的和是:%ldn, n, m, sum);答案:=(答案1)=scanf=(答案2)=i=n=(答案3)=sum+i=或=i+sum第19题 (10.0分) 题号:362 难度:易 第8章/*-【程序填空】-功能:以下程序的功能如(图1)。-*/#include #include /*SPACE*/double f(【?】) /*SPACE*/ 【?】; /*SPACE*/ if (【?】) y=2.0*x*x+3.0*x+4.0; else y=-2.0*x*x+3.0*x-4.0;/*SPACE*/ 【?】;main ( ) printf(%fn, f(f(-1.0)+f(5.0);答案:=(答案1)=float x=或=double x=(答案2)=double y=(答案3)=x=x=或=x=x=(答案4)=return y=或=return (y)第20题 (10.0分) 题号:444 难度:易 第1章/*-【程序填空】-题目:下列给定程序中,函数fun的功能是:找出100到x(x999)之间各位上的数字之和 为15的所有整数,并在屏幕输出;将符合条件的整数的个数作为函数值返回。例如:当n值为500时,各位数字之和为15的整数有:159、168、177、186、195、249、 258、267、276、285、294、339、348、357、366、375、384、393、429、438、 447、456、465、474、483、492。共有26个。-*/#include int fun(int x) int n, s1, s2, s3, t;/*SPACE*/ n=【?】; t=100;/*SPACE*/ while(t999|x0) printf(Please input(0x=999): ); scanf(%d,&x); printf(nThe result is: %dn,fun(x);答案:=(答案1)=0=(答案2)=x=(答案3)=t+=或=t=t+1=或=t+=1=或=+t第21题 (10.0分) 题号:336 难度:易 第1章/*-【程序填空】-题目:求出 -10 到 30 之内能被 7 或 11 整除,但不能同时被 7 或 11 整除的所有整数。 例如:输出-7,7,11,14,21,22,28,。-
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 临时分类 > 人文社科


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!