c_复习题

  • 格式:pdf
  • 大小:203.20 KB
  • 文档页数:12

for(i=1;i<10;i++) {if(a[i]>max) max= (1) ;//a[i] if(a[i]<min) min= (2) ;//a[i] } sum= (3) ;//sum-max-min printf("sum=%d,max=%d,min=%d\n",sum,max,min); } 3. 用“起泡法”对5个整数从小到大排序。请填空。 #include<stdio.h> void main() {int a[5]={10,5,6,7,2},i,j,t; for(i=1;i<=4;i++) for(j=0;j<= (1) ;j++)//4-i if(a[j]> (2) )//a[j+1] {t=a[j];a[j]=a[j+1];a[j+1]=t;} for(i=0;i<5;i++)printf("%4d",a[(3) ]);//i printf("\n");} 四、编程题 1.输入三角形的三边长,计算三角形的面积。 三角形的面积公式为其中 【源程序】 #include <stdio.h> #include <math.h> void main () { float a,b,c,s,area; scanf("%f,%f,%f",&a,&b,&c); s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c)); printf("area=%f\n",area); } 2、输入一个华氏温度f,输出摄氏温度c。计算公式为 c=5/9(f-32) 结果保留两位小数。 例如:输入41,输出结果为5.00。 【源程序】 #include<stdio.h> void main() { float a,b; scanf("%f",&a); b=5.0/9*(a-32); printf("%6.2f\n",b); } 3、根据分段函数y= 编写一个程序,从键盘输入x值,输出相应的y 值。 【源程序】 #include <stdio.h> void main() { float x,y; printf("请输入x:"); scanf("%f",&x); if(x<10) y=2*x-1; else if(x>10) y=2*x+11; else y=x; printf("y=%f\n",y); }
19. 若用数组名作为函数调用时的实参,则传递给形参的是【 A 】。 A)数组的首地址 B)数组的第一个元素值 C)数组中全部元素的值 D)数组元素的个数 20. 一个C程序总是从【 C 】开始执行。 A)主过程 B)第一个函数 C)主函数 D)子函数 21. 已知函数abc的定义为: void abc() {……} 则函数中void的含义是【 A 】。 A) 执行函数abc后,函数没有返回值 B) 执行函数abc后,函数不再返回 C) 执行函数abc后,函数可以返回任意类型 D) 以上答案全不对 22. C语言中,调用一个函数时,实参变量和形参变量之间的数据传 递是【 B 】。 A) 地址传递 B) 值传递 C) 由实参传给形参,再由形参传给实参 D)由用户指定传递方式 23. a为int型变量,则【 D 】是对指针变量p的正确定义。 A) int *p=a; B) int p=a; C) int p=&a; D) int *p=&a; 二、读程序题 1. #include <stdio.h> void main( ) { int a,b; a=0; b=1;
p=&a; *p=7; printf("%d\n",a); } 结果:7 三、程序填空 1. 从键盘输入一个正整数x,求1到x的累加和. 程序如下,请将程序补充 完整。 #include<stdio.h> void main() {int i=1,sum= ;//0 int x; printf("please input an int:\n"); ;// scanf("%d",&x); while //(i<=x) { sum= //sum+i; ; //i++ } printf("sum=%d\n",sum); 2.下列程序是大奖赛的评分程序,记分规则为:由10名评委打分,去 掉其中的一个最高分和最低分,总分即为选手的得分。请将程序补充完 整。 #include<stdio.h> void main() {int a[10],i,sum=0,min,max; for(i=0;i<=9;i++) {scanf("%d",&a[i]); sum+=a[i]; } max=a[0]; min=a[0];
#include<stdio.h> void main() {int fac(int n); int y; y=fac(5); printf("y=%d\n",y); } int fac(int n) {int i,b=1; for(i=1;i<=n;i++) b=b*i; return(b); } 结果:y=120 9. #include<stdio.h> void main() {int fac(int n); int y; y=fac(5); printf("y=%d\n",y); } int fac(int n) {int i,b=0; for(i=1;i<=n;i++) b=b+i; return(b); } 结果:y=15 10. #include <stdio.h> void main() {int a=3,*p;
A)5 B)13 C)8 D)0 10. 下列表达式中能正确表示x>=0而且x<=1的表达式是【 B 】。 A)x>=0||x<=1 B)x>=0&&x<=1 C)0<=x<=1 D) x>=0&x<=1 11. 下述程序的输出结果是【 A 】。 int x=1,y,z; y=++x; z=x++; printf("%d,%d,%d",x,y,z); A)3,2,2 B)3,2,3 C)2,2,2 D)2,2,1 12. 设a=1, b=2,则表达式a<b||b!=a的值为【 C 】。 A)-1 B)0 C)1 D)2 13. 若已定义:int i=3;执行语句if(++i<5) printf(“%d\n”,i);后,i的值为【 B 】。 A)3 B)4 C)5 D)6 14. C语言的运算符按运算对象的数目可以分为【 C 】。 A)单目运算符一种 B) 单目和双目运算符 C) 单目、双目和三目运算符 D) 单目、双目、三目和四目运算符 15. 若定义了 int i,则控制语句for(i=1;i<4;i++)控制循环体执行【 A 】次。 A)3 B)4 C)1 D)2 16. 若有说明:int a[10];则对a数组元素的正确引用是【 D 】。 A)a[10] B)a[3.5] C)a(5) D)a[0] 17. 要说明一个有10个int元素的数组,应当选择语句【 A 】。 A) int a[10]; B) int a[2.5]; C) int a[ ]; D) int *a[10]; 18. 以下所列的各函数首部中,正确的是【 C 】。 A)void play(var a:integer,var b:integer) B)void play(int a,b) C)void play(int a,int b) D)void play(a as integer,b as integer)
a=a+b; b=a+b; printf("%d,%d\n",a,b); } 结果:1,2 2. #include <stdio.h> void main( ) {int x=1,y=1; if(y>0)x=6; printf("%d\n",x); } 结果:6 3. #include <stdio.h> void main( ) {int num=1; while(num<=4) {printf("%d ",num); num++;} } 结果:1 2 3 4 4. #include <stdio.h> void main( ) { int x,y,f,i; x= 0; y= 1; for(i=1;i<=2;i++) { f=x+y; x=y; y=f; printf("%d ",f);}
1、 单项选择题 1. 一个C语言程序是由【 C 】组成。 A)主程序 B)子程序 C)函数 D)过程 2. C语言程序应至少包含一个【 C 】。 A)语句 B)函数调用 C)主函数 D)子函数 3. C语言中的简单数据类型包括【 B 】。 A) 整型、实型、逻辑型 B) 整型、实型、字符型 C) 整型、字符型、逻辑型 D) 实型、逻辑型、字符型 4. 若有以下定义int b; float c; double d; 则表达式b+c/d的结果为【 D 】型。 A) int B)float C)char D)double 5. 假设定义变量如下: float x; int y; 那么以下输入语句中【 C 】是正确的。 A)scanf("%f%f",&x,&y); B)scanf("%f%d",x,y); C)scanf("%f%d",&x,&y); D)scanf("%d%d",&x,&y); 6. 设x、y均为int型变量,且x=10,y=3,则以下语句的输出结 果是【 D 】。 printf("%d,%d\n",x--,--y); A)10,3 B)9,3 C)9,2 D)10,2 7. 设a=1, b=2,则表达式a<b||b的值为【 C 】。 A)-1 B)0 C)1 D)2 8. 以下程序的输出结果是【 A 】。 main() {int x=5,y=2; printf(”%d\n”,x/y); } A)2 B)2.5 C)3 D)0 9. 若x=8,y=5,则条件表达式x>y?x:y的值是【 C 】。