您的当前位置:首页正文

C语言程序设计试题与答案 1

2022-07-31 来源:东饰资讯网
《C语言程序设计》试题及答案

年级班级____________姓名_________

学号__________

得分评卷人一、单项选择题:(每空2分,共30分))。C.子过程D.子程序)。D.,1.C程序构成的基本单位是(A.过程B.函数2.在下列运算符中,优先级最高的运算符是(A.<=B.=C.%3.设有:intx;f1oaty;doublez;chark;则表达式k*x+z/y值的数据类型为()。A.floatB.charC.intD.double后,4.若x、i、j和k都是int型变量,则计算表达式x=i=4,j=16,k=32x的值为(A.4)。B.32)。C.16D.525.以下说法正确的是(A.C源程序不用编辑就可以直接执行C.C程序经编译后生成可执行文件B.编译器可以检查出程序所有的错误D.编译器只能检查出语法错误6.为了避免在嵌套的条件语句if-else中产生二义性,C语言规定:else子句总是与()配对的。A.缩排位置相同的ifC.其前位置最近的ifB.同一行上的ifD.其前位置最近尚未配对的if)。C.一个字符)。D.一个字符串7.putchar函数可以向终端输出一个(A.整型变量表达式B.实型变量值8.若inta=3;则表达式(++a)+(++a)+(++a)的值为(A.3B.12C.15D.18《C语言程序设计》试卷第1页共8页9.设变量x和y值为0,a,b,c,d的值均为1,计算表达式(x=a>=b)||(y=c==d)后,变量x,y的值分别是(A.0,010.设有变量定义intB.1,1)。C.1,0D.0,1)。a[5]={2,3,5,7,11},*p;p=a;以下叙述正确的是(B.指针变量p指向数组a的第一个元素A.指针变量p指向数组的首地址C.*p中存放数组a的首地址11.一维数组的数组名可以表示(A.数组首元素C.数组首元素的地址D.指针变量p存放的是数组a的第一个元素)。B.数组中全部元素的值D.数组元素的个数)。12.能正确表示x的取值在[1,10]或[200,210]范围内的表达式是(A.(x>=1)B.C.(x>=1)&&(x<=10)||(x<=10)&&(x>=200)||(x>=200)&&&&(x<=210)||(x<=210)(x>=1)||(x<=10)(x>=200)||(x<=210)&&(x<=210))。D.(x>=1)&&(x<=10)||(x>=200)13.若有说明:inta[10];则对a数组元素的正确引用是(A.a[10]B.a[3.5]C.a[5]D.a[1-10]14.若有结构体定义:struct{charStudentname[20];intage;charsex;floatscore;}s;则结构体变量s占(A.27B.20)个字节。C.1(若int占2B)D.2)。15.以只读方式打开一个数据文件,正确的使用方法是(A.”a”得分评卷人B.”w”C.”r”D.”rw”二、判断题:(每空1分,共10分)《C语言程序设计》试卷第2页共8页1.C语言是一个面向对象的高级程序设计语言。()2.C语言非常简单,它本身是没有输入输出语句的。()3.变量名由字母、数字和下划线组成,长度任意。()4.在选择结构中,if和else总是成对出现的。()5.在执行循环语句时,do—while总是比while多执行一次。(6.在循环控制中,break语句的功能是结束整个循环。()7.定义一维数组时,数组的下标在任何情况下都不能被省略。(8.调用函数前,必须先进行函数声明。()9.条件运算符是一个三目运算符。()10.文件可以分为程序文件和数据文件。()得分评卷人三、程序填空题:(每空3分,共18分)1.打印杨辉三角前5行。#includevoidmain(){inti,h,a[6][6];for(i=1;i<=5;i++){a[i][1]=1;________________________}for(i=2;i<=4;i++)for(j=1;___________________;j++)________________________for(i=1;i<=5;i++){for(j=1;j<=i;j++)printf(“%6d”,a[i][j]);printf(“\\n”);}《C语言程序设计》试卷第3页共8页))}2.将数组中的数据逆序存放,并以一行4个输出。#includevoid{intmain()a[21],i,j,t;for(i=1;i<=20;i++)scanf(“%d”,&a[i]);for(i=1,j=20;_____________;i++,j--){_________________;a[i]=a[j];a[j]=t;}for(i=1;i<=20;i++){printf(“%d”,a[i]);if(_______________________)printf(“\\n”);}}得分评卷人四、程序分析题:(每题6分,共18分)1.#includelong{f(intn)return(1);if(n==0||n==1)else}return(n*f(n-1));voidmain({intn;)《C语言程序设计》试卷第4页共8页scanf(“%d”,&n);pirntf(“%d!=%ld\\n”,n,f(n));}程序功能:输入数据:6执行结果:2.#includevoidmain(){intm,n,i;scanf(“%d,%d”,&m,&n);for(i=m;i>=1;i--)if(m%i==0&&n%i==0){printf(“%d\\n”,i);break;}}程序功能:输入数据:18,24执行结果:3.#include#defineM2#defineN4voidmain(){inta[M][N],b[N][M],i,j;《C语言程序设计》试卷第5页共8页printf(\"请输入矩阵a:\\n\");for(i=0;ivoid{intfloatmain()s[10],max,min,sum,i;average;+1分printf(\"pleaseinputtendata:\\n\");for(i=0;i<10;i++)《C语言程序设计》试卷第7页共8页scanf(\"%d\sum=max=min=s[0];for(i=1;i<10;i++){if(s[i]>max)if(s[i]voidmain(){inta,b,c,x,p[1000],i=0;for(x=100;x<=999;x++){a=x/100;b=x/10%10;c=x%10;+2分+2分+2分+1分+2分if(a*a*a+b*b*b+c*c*c==x){i++;p[i]=x;}}printf(\"max=%d}+1分+1分+2分min=%d\\n\+2分《C语言程序设计》试卷第8页共8页

因篇幅问题不能全部显示,请点此查看更多更全内容