C语言第二学期第一次月考试卷

合集下载

2017年下期对口升学计算机专业第一次月考综合类C语言试题

2017年下期对口升学计算机专业第一次月考综合类C语言试题

2017年下期对口升学计算机专业综合类C语言试题总分190分一、单选择题(每题5分,共60分)1、定义一个文件指针fp语句,以下正确的是()A、file fpB、file *fp;C、FILE *fpD、FILE *fp;2、以只读的方式打开一个二进文件c:\tlh\1.txt的语句()A、fp=fopen(“c:\\tlh\\1.txt”,”wb”);B、fp=fopen(“c:\\tlh\\1.txt”,”w”);C、fp=fopen(“c:\\tlh\\1.txt”,”r”);D、fp=fopen(“c:\\tlh\\1.txt”,”rb”);3、以下程序段输出的结果是()int a[]={1,2,3,4,5,6};FILE *fp;fp=fopen(“1.txt”,”wb”);fwrite(a+1,sizeof(int),5,fp);fclose(fp);fp=fopen(“1.txt”,”r b”);fread(a,sizeof(int),3,fp);fclose(fp);fprintf(“%d”,a[3]);A、4B、5C、6D、34、有以下程序main(){char s[]="012xy\08s34f4w2";int i, n=0;for(i=0;s[i]!=0;i++)if(s[i]>='0'&&s[i]<='9') n++;printf("%d\n",n);}程序运行后的输出结果是()A)0 B)3 C)7 D)85、有以下程序:#include<stdio.h>#include<string.h>main(), char a*5+*10+=,“china”,”beijing”,”you”,”tiananmen”,”welcome”-;int i,j; char t[10];for(i=0;i<4;i++)for(j=i+1;j<5;j++)if(strcmp(a[i],a[j])>0){ strcpy(t,a[i]); strcpy(a[i],a[j]); strcpy(a[i],t);}puts(a[3]);}程序运行后的输出结果是()A.beijingB.chinaC.welcomeD.tiananmen6、有以下程序#include <stdio.h>#include <string.h>main(),char x*+=”STRING”;x*0+=0;x*1+=’\0’;x*2+=’0’;printf(“%d %d\n”,sizeof(x),strlen(x));}程序运行后的输出结果是()A)6 1 B)7 0 C)6 3 D)7 17、若有定义语句:int m[]={5,4,3,2,1},i=4;则下面对m数组元素的引用中错误的是()A)m[--i] B)m[2*2] C)m[m[0]] D)m[m[i]]8、若要定义一个具有5个元素的整型数组,以下错误的定义语句是()A)int a[5]={0}; B)int b[]={0,0,0,0,0};C)int c[2+3]; D)int i=5,d[i];9、以下数组定义中错误的是()A)int x[][3]={0};B)int x[2][3]={{1,2},{3,4},{5,6}};C)int x[][3]={{1,2,3},{4,5,6}};D)int x[2][3]={1,2,3,4,5,6};10、从指定的文件中得到6个字符语句是()A、fgets(a,6,fp);B、fgets(a,7,fp);C、fgets(fp,6,a);D、fgets(fp,7,a);11、有以下程序#include<stdio.h>main(){FILE *fp;int k,n,i,a[6]={1,2,3,4,5,6};fp=fopen(“d2.dat”,”w”);for(i=0;i<6;i++) fprintf(fp,”%d\n”,a*i+);fclose(fp);fp=fopen(“d2.dat”,”r”);for(i=0;i<3;i++) fscanf(fp,”%d%d”,&k,&n);fclose(fp);printf(“%d,%d\n”,k,n);}程序运行后的输出结果是()A.1,2B.3,4C.5,6D.123,45612、有以下程序#include <stdio.h>main(){FILE *f;f=fopen(“filea.txt”,”w”);fprintf(f,”abc”);fclose(f);}若文本文件filea.txt中原有内容为:hello,则运行以上程序后,文件filea.txt的内容为()A)helloabc B)abclo C)abc D)abchello二、程序分析题13读程序写运行结果(每题5分,共25分)①程序运行后的输出结果是#include <stdio.h>main(){int i,j,a[][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)for(j=i;j<3;j++) printf(“%d”,a*i+*j+);printf(“\n”);}②有以下程序#include <stdio.h>main(){FILE *fp;char str[10];fp=fopen(“myfile.dat”,”w”);fputs(“abc”,fp);fclose(fp);fp=fopen(“myfile,data”,”a+”);fprintf(fp,”%d”,28);rewind(fp);fscanf(fp,”%s”,str);puts(str);fclose(fp);}程序运行后的输出结果是___________③、以下程序运行后的输出结果是【】。

C语言数组与函数考试试题

C语言数组与函数考试试题

2014年上期职二对口C语言程序设计第一次月考试题(适用班级1219、1220)班级:姓名:总分:一、选择题(15*2=30分)1、在定义“int a[5][6];”后,第11个元素是。

A、a[2][5]B、a[2][4]C、a[1][4]D、a[1][5]2、假定int类型变量占用两个字节,其定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是。

A、3B、6C、10D、203、当接受用输入的含空格的字符串地,应使用的函数是。

A、scanf()B、gets()C、getchar()D、getc()4、设有数组定义:char array[]=”China”;。

则数组array所占的空间为。

A、4个字节B、5个字节C、6个字节D、7个字节5、设有变量定义:int a [ ] = {1,2,3,4};执行语句a[3] = - - a[0]? a[1] + + : a[2] + +;执行后,数组的元素a[0], a[1], a[2], a[3]的值依次为A、 1,2,3,4B、 0,3,3,4C、 0,2,3,4D、0,2,4,36、以下程序的输出结果是void main( ){int i, x[3][3] = { 1,2,3,4,5,6,7,8,9}for(i= 0;i < 3; i + +) printf("3%d", x[i][2 - i]); }A、 1 5 9B、 1 4 7C、3 5 7D、 3 6 97、不能把字符串:Hello!赋给数组b的语句是A、 char b [10] = {‘H’‘e’‘l’‘l’‘o’‘!’};B、char b [10] ; b = “Hello!”;C、 char b [10] ; strcpy(b, “Hello!”);D、char b [10] = “Hello!”;8、在函数间传递数据的四种方式中,不能把被调函数的数据带回到主调函数的是A、值传递B、地址传递C、返回值传递D、全局外部变量9、以下关于函数的叙述中不正确的是A、C程序是函数的集合,包括标准库函数和用户自定义函数B、在C语言程序中,被调用的函数必须在main函数中定义C、在C语言程序中,函数的定义不能嵌套D、在C语言程序中,函数的调用可以嵌套10、若用数组名作为函数调用的实参,则传递给形参的是A、数组的首地址B、数组的第一个元素的值C、数组中全部元素的值D、数组元素的个数11、C语言中,凡未指定存储类别的局部变量的隐含存储类别是A、autoB、staticC、externD、register12、若有以下函数调用语句:fun(a+b,(x,y),fun(n+k,d,(a,b)));在此函数调用语句中实参的个数是A、3B、4C、5D、613、若程序中定义函数float myadd(float a, float b) { return a+b;}并将其放在调用之后,则在调用之前应对该函数进行说明。

计算机专业C语言月考试题

计算机专业C语言月考试题

C 语言月考试题总分:150分一、程序阅读题:(共48分,8分/题)1、Hsb208写出下列程序的结果:main(){int a[4]={5,16,7,14};int i;for(i=0;i<4;i++)a[i]=a[i]+i;for(i=3;i>=0;i--)printf("%d ",a[i]);}2、Hsb209写出下列程序的结果:main(){int k;int a[3][3]={1,2,3,4,5,6,7,8,9};for(k=0;k<3;k++)printf("%d ",a[k][2-k]);}3、Hsb210写出下列程序的结果:main( ){int i,m=0,n=0;int max,min;int a[9]={1,3,5,7,9,-2,-4,-6,-8};max=0;min=0;for(i=0;i<9;i++){if(a[i]>0){m++;if(max<a[i])max=a[i];}else{if(min<a[i])min=a[i];n++;}}printf("m=%d,n=%d\n,max=%d,min=%d\n",m,n,max,min);}4、hsb211写出下列程序的结果:main( ){int i;int a[4][4]={{1,2,3},{4,5,6},{7,8,9},{10,11,12}}; for(i=0;i<4;i++)printf(“%3d”,a[i][i]);printf(“\n”);for(i=0;i<4;i++)printf(“%3d”,a[i][3-i]);printf(“\n”);}5、hsb212写出下列程序的结果:main(){int i,j;for(i=1;i<=9;i++){printf("\n");for(j=1;j<=i;j++)printf("%d*%d=%d ",i,j,i*j);}}6、hsb213写出下列程序的结果:int gcd(int,int);main(){int a,b,re;printf("\nplease enter 2 int:\n");scanf("%d%d",&a,&b);re=gcd(a,b);printf("\n%d & %d is:%d\n",a,b,re);}int gcd(u,v)int u,v;{int p;while(v!=0){p=u%v;u=v;v=p;}return(u);}二、程序填空题(共48分,4分/空)1、hsb214下列程序是将十进正整数转换成2至16进制数。

《C语言》月考试题(四)汇总

《C语言》月考试题(四)汇总

《C语言》月考试题(四)一、程序分析题(30分)1、下列程序的运行结果是: 2 4 7 10#include "stdio.h"main(){ int a=1;while(a<10)if(!(++a%3)) continue;else printf("%d ",a++);}2、下列程序的运行结果是:7,9,6,0,1,4,8,5,2,3#include “stdio.h”void vSort(int *a, int n){int i, j,t;for (i =n-1;i>0;i--)for (j=0;j<i;j++)if (a[j]>a[j+1]){ t=a[j];a[j]=a[j+1];a[j+1]=t;}}main(){ int a[]={7,9,6,4,8,0,1,5,2,3},i;vSort(&a[3],4);for(i=0;i<10;i++)printf("%4d",a[i]);}3、下列程序的运行结果是:1,5,24#include <stdio.h>main( ){ int a,b,c;int x=4,y=6,z=8;int *p1=&x,*p2=&y,*p3;a=p1==&x;b=3*(-*p1)/(*p2)+7;c=*(p3=&z)=*p1*(*p2);printf("%d,%d,%d\n",a,b,c);}4、下列程序的运行结果是:aca,e dex,dmain(){ char *str[]={"aca","dex","gik"};char **p;int k;p=str;for(k=1;k>=0;k--,p++)printf("%s,%c\t",*p,p[k][k]);}5、下列程序的运行结果是:2,3#include <stdio.h>union ee{int a;int b;}*p,s[4];main(){int n=1,i;for(i=0;i<4;i++){s[i].a=n;s[i].b=s[i].a+1;n+=2;}p=&s[0];printf("%d,",p->a);printf("%d",++p->a);}6、下列程序的运行结果是:33111#include <stdio.h>main(){unsigned a=0331,b,c,d;b=a>>5-1;c=(~b|a);d=b&c;printf("%o%o\n",a,d);}二、程序填空:(20分)1、在下列程序中,其函数的功能是比较两个字符串的长度,比较的结果是函数返回较长的字符串的地址。

C语言程序设计第一次月考试题

C语言程序设计第一次月考试题

C语言程序设计第一次月考试题(2011.9)班级:姓名:总分:一、选择题(每小题3分,共60分)1.一个C语言程序是由()A)一个主程序和若干子程序组成B)函数C)若干过程组成D)若干子程序组成2.下面4个选项中,均是C语言关键字的选项是()A)auto enum include B)switch typedef continueC)singed union scanf D)if struct type3. 下面4个选项中,均是不合法的用户标识符的选项是()A)A P_0 do B)float 1a0 -AC) b—a goto int D) _123 temp INT4.下面4个选项中,均是不合法的整形常量的选项是()A)- - 0f1 - oxfff 0011 B)- oxcdf 017 12,456C) – 018 999 5e2 D)-0x48eg -068 03f5. 下面4个选项中,均是不合法的浮点数的选项是()A)160.0.12 e3 B)123 2e4.2 .e5C)-.18 123e4 0.0 D)-e3 .234 1e36.下面4个选项中,均是不合法的转义字符的选项是()A)‘\‖‘‗\\‘‗\xf‘B)‘\1011‘‗\‘‗\a‘C) ‗\011‘‗\f‘‗\}‘D)‘\abc‘‗\101‘‗x1f‘7.下面不正确的字符串常量是()A)‘abc‘B)‖12‘12‖C) ‖0‖D)‖‖8.Int k=7, x=12; 则以下能使值为3的表达式是()A)x%=(k%=5) B)x%=(k- k%5)C) x%=k-k%5 D)(x%=k) – (k%=5)9.若x、i、j和k都是int型变量,则执行表达式x=(i=4,j=16,k=32)后x的值是()A) 4 B)16 C)32 D)5210.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是( )A) 7 B) 8 C)6 D)211.已知各变量的类型说明如下:Int k, a, b; unsigned long w=5; double x=1.42;则以下不正确的表达式是()A) x%(-3) B)w+=-2C) k=(a=2,b=3, a+b) D)a+=a-=(b=4)*(a=3)12.已知字母A的ASCII码为65,且定义c2为字符型变量,则执行语句c2=‘A‘+‘6‘-‗3‘;后;c2中的值为()A) D B) 68 C)不确定的值D) C13.sizeof(float)是()A)一个双精度表达式B)一个整型表达式C)一种函数调用D)一个不合法的表达式14.若有代数式| x3 +log10x |, 则正确的c语言表达式是()A) fabs(x*3 +log(x) ) B) abs(pow(x,3) +log(x) )C) abs(pow(x,3.0) +log(x)) D)fabs(pow(x,3.0)+ log(x) )15.char w; int x; float y; double z; 则表达式w*x+z-y值的类型为()A)float B)char C) int D)double16.以下程序的运行结果是()Main() { int m=5, n=10; printf(―%d, %d\n‖, m++, - -n); }A) 5,9 B) 6, 9 C)5, 10 D)6,1017.根据以下定义语句和数据的输入方式,scanf语句的正确形式为()已有定义:float f1, f2; 数据的输入方式:4.52<回车>3.5<回车>A)scanf(―%f,%f‖,&f1,&f2); B)scanf(―%f%f‖,&f1,&f2);C) scanf(―%3.2f %2.1f‖,&f1,&f2); D) scanf(―%3.2f%2.1f‖,&f1,&f2);18.下列运算符中优先级最低的是()A)? : B)+= C)>= D)= =19.设有说明语句:int x=43, y=0; char ch=‘A‘; 则表达式(x>=y && ch< ‘B‘&& !y)的值是()A) 0 B)语法错误C)1 D)假20.若希望当A的值为奇数时,表达式的值为“真”;当A的值为偶数时,表达式的值为“假”。

C语言第一次月考试卷

C语言第一次月考试卷

2019年春学期17微机1班第一次月考试卷Array科目:C语言+网络命题人:刘晶晶满分:100分一、选择题(每题2分,共40分)1.在下列传输介质中,对于单个建筑物内的局域网来说,性能价格比最高的是()。

A. 双绞线B. 同轴电缆C. 光纤D.无线介质2.网络接口卡位于OSI参考模型的()。

A. 物理层B. 传输层C. 数据链路层D.表示层3.BNC网卡连接的传输介质类型是()。

A. 双绞线B. 光纤C. 粗同轴电缆D.细同轴电缆4.交换机的作用是()。

A. 连接两个同类网络B. 连接多个同类网络C. 连接两个异种网络D. 连接多个异种网络5.在不同网络之间实现分组的存储和转发,并在网络层提供协议转换()。

A. 交换机B. 路由路C. 网桥D.集线器6.用于高层协议转换的网间连接器是()。

A. 路由器B. 集线器C. 网关D.网桥7.调制解调器的种类很多,最常用的调制解调器是()。

A. 基带B. 宽带C. 高频D. 音频8.选择MODEM时,除考虑其兼容性外,主要还考虑其()。

A. 内置和外置B. 出错率低C. 传输速率D. 具有语言功能9.对于局域网来说,网络控制的核心是()。

A. 工作站B. 网卡C. 网络服务器D. 网络互联设备10.CSMA/CD和IEEE802.3标准的另一个术语是()。

A. 以太网B. Token RingC. FDDID. Token Bus11.以下关于数组的描述正确的是()。

A. 数组的大小是固定的,但可以有不同的类型的数组元素。

B. 数组的大小是可变的,但所有数组元素的类型必须相同。

C. 数组的大小是固定的,且所有数组元素的类型必须相同。

D. 数组的大小是可变的,且可以有不同的类型的数组元素。

12.在定义int a[10];之后,对a的引用正确的是()。

A. a[10]B. a[6.3]C. a(6)D. a[10-10]13.以下能正确定义数组并正确赋初值的语句是()。

C语言习题(月考1)试题

C语言习题(月考1)试题

C 语言一.填空题1. 在C 语言中(VC++ 6.0 环境下),一个char 型数据在内存中所占字节数为________,一个int型数据在内存中所占字节数为________,一个long 型数据在内存中所占字节数为________,一个float 型数据在内存中所占字节数为________,一个double 型数据在内存中所占字节数位________。

2. 设x,i,j,k 都是int 型变量,表达式x=(i=4,j=16,k=32)计算后,x 的值为 。

3. 设有以下变量定义,并已赋确定值char w; int x; float y; double z; 则表达式:w*x+z-y 所求得的数据类型为 。

4. C 语言的标识符只能由大小写字母,数字和下划线三种字符组成,而且第一个字符必须为 。

5. C 语言中不带任何修饰符的浮点数(例如3.5)都是按照 类型数据存储的。

6. 在C 语言的源程序中若出现常量“1L ”,则该常量的类型是_________。

7. C 语言中,一个int 型数据在内存中占4个字节,则unsigned int 型数据的取值范围为 。

8. 设有int x=11,则表达式(x++*1/3)的值是 。

9. 若有定义:char c=‘\010’;则变量c 中包含的字符个数为 。

10. 假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为 。

11. 已知a,b,c 是一个十进制数的百位,十位,个位,则该数的表达式是 。

12. 若a 是int 变量,则执行表达式a=25/3%3后,a 的值是 。

13. C 语句可以分为 , , , 和 _____________等5种类型。

14. 若有定义:int b=17; float a=4.5,c=6.5;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值 。

15. 表达式“4/5*(float)3+(float)3*4/5”的值是 。

c语言试卷集(10套)-试题及答案

c语言试卷集(10套)-试题及答案

c语言试卷集(10套)-试题及答案C语言试卷集(10套)-试题及答案试卷一一、选择题(每题2分,共20分)1. C语言中,用于表示逻辑“真”的值是()。

A. 0B. 1C. -1D. 任意非零值答案:B2. 下列哪个选项是C语言中的合法变量名?()A. 2variableB. variable2C. variable_2D. variable!答案:C3. C语言中,用于定义一个整型数组的语句是()。

A. int array[10];B. int [10] array;C. int 10 array;D. int array=10;答案:A4. 下列哪个选项是C语言中的合法字符串常量?()A. "Hello"B. 'Hello'C. "HelloD. Hello答案:A5. C语言中,用于表示逻辑“假”的值是()。

A. 0B. 1C. -1D. 任意非零值答案:A6. 下列哪个选项是C语言中的合法浮点数常量?()A. 3.14B. 314.C. .314D. 3.14E答案:A7. C语言中,用于定义一个整型变量的语句是()。

A. int x;B. var x;C. x int;D. int = x;答案:A8. 下列哪个选项是C语言中的合法字符常量?()A. 'A'B. "A"C. 'AB'D. "AB"答案:A9. C语言中,用于定义一个字符数组的语句是()。

A. char array[10];B. char [10] array;C. char 10 array;D. char array=10;答案:A10. C语言中,用于表示字符常量的是()。

A. 'A'B. "A"C. AD. "A"答案:A二、填空题(每题3分,共15分)1. C语言中,用于定义一个整型变量并初始化为0的语句是()。

14计1班C语言第一次月考

14计1班C语言第一次月考

《C 语言》第一次月考试题(14级计算机1班)一、 填空题:(每空2分,共20分)1.算术运算符的优先级顺序是____________________。

2.表达式39%7的值是__________,321%372的值是__________。

3.在表达式中,如果所有运算符的优先级是一种,应采用__________来确定。

4.while 命令后面括号中的表达式称为__________。

5.当循环条件一开始就为假时,对于while 语句、do …while 语句分别执行循环体__________次和__________次。

6.在每次循环周期均要执行一次的语句,叫做__________。

7.若int i=10;则执行i++后,i 的值为__________。

8.与数学表达式x 2+3x-1等价的C 语言表达式是_______________。

二、 选择题:(每题2分,共20分)1.已知int x=5,执行表达式y=x++后,x 的值为( )。

A.3 B.4 C.5 D. 62.在C 语言中,要求运算数必须是整型的运算符是( )。

A. + B. - C./ D. %3.已知int a ;float fv ;double di ;则表达式10+’a ’/di*fv 的值的数据类型是( )。

A.intB. charC.floatD.double 4.若有说明语句:char s=’\72’;则变量s ( )。

A.为1个字符B.为2个字符C.为3个字符D.为1个字符串 5.已知float x=5.15,则表达式- -x 的值为( )。

A. 4.15 B.4 C.5.14 D.执行出错班 级: 姓 名: 成绩 :密封 线6.有数学表达式pqxy3(其中的字母是变量),则不正确的C 语言表达式是( )。

A. 3*x*y/p*q B.x*y/p/q*3 C.3*x*y/(p*q) D.3*x*y/p/q7.若k 为整型变量,则下面while 循环共循环( )次。

2013年C语言第1次月考

2013年C语言第1次月考

高三C语言九月月考试题姓名:________ 班级:________总分:__________ 一、选择题(每小题5分,共30分)17.以下正确的C语言自定义标识符是( )A) int B) a.3 C) _7c D) 5d_18.已知i=3,执行j=i++后,i和j 的值分别为()A) i=4 j=2 B) i=4 j=3 C) i=3 j=3 A) i=3 j=219.C语言中,以下语句能跳过循环体中未执行的语句,接着执行本循环下一次迭代的语句是( )A)空语句B)break语句C) return语句D)continue语句20 . 执行语句for(i=1;++i<4;);后变量i的值是_____A)3 B) 4 C)5 D)不定21.以下叙述正确的是______A)do-while语句构成的循环不能用其他语句构成的循环来代替B) do-while语句构成的循环只能用break语句退出C) do-while语句构成的循环,在while的表达式为非0时结束循环D) do-while语句构成的循环,在while的表达式为0时结束循环22.下列运算符中,优先级从高到低的依次为____A)&& ! || B)|| && ! C)&& || ! D)! && ||二、基本操作题28)C语言知识填空(3*4=12分)1、表示“整数x的绝对值大于5”时值为“真”的C语言表达式是_____________。

(不用函数)2、有如下程序段int a=14,b=15,x;char c='A';x=(a&&b)&&(c<'B');执行该程序段后,x的值为。

3、若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a 的值是。

4、语句:x++;、++x; x=x+1;、x=l+x; ,执行后都使变量x中的值增1,请写出一条同一功能的赋值语句(不得与列举的相同)。

2014年下期高三第一次月考《C语言》试题

2014年下期高三第一次月考《C语言》试题

2014年下期高三第一次月考《C语言》试题班次姓名一、选择题(本大题共30分,每小题3分)1、算法的复杂度主要包括算法的时间复杂度和空间复杂度,算法的时间复杂度是指()A)算法程序中的指令条数B)算法程序的长度C)算法程序所占的存储空间D)算法执行过程中所需要的基本运算次数2、C语言程序的基本单位是……………………………………………………………()A)字节B)函数C)语句D)字符3、若变量a、i已正确定义,且i已正确赋值,合法的C语言语句是……………()A)a=int( i ); B)a==0 C) ++i; D)a=a++=2;4、设有以下语句:typedef struct FS { char flag; duble s[4];}FS1;则下面叙述中正确的是………………………………………………………()A)可以用FS定义结构体变量B)FS1 是struct FS类型的变量C)FS是struct 类型的变量D)可以用FS1定义结构体变量5、以下关于结构体的叙述中错误的是………………………………………………()A)结构体是一种可由用户构造的数据类型。

B)结构体中的成员可以具有不同的数据类型C)结构体中的成员不可以与结构体变量同名。

D)结构中的成员可以是指向自身结构的指针变量。

6、设有如下定义:struct { char n; char m[10];}ss[2]={…a‟,”abc”,‟b‟,”bce”};则以下表达式中,值不为‟b‟的是……………………………………()A)ss[0].m[1] B) ss[0].n C)ss[1].m[0] D) ss[1].n7、设有如下定义:struct person { int id; char name [10];}per,*s=&per;则以下对结构体变量per成员的引用中错误的是………………………()A) B) s->name[0] C)(*per).name[8] D)(*s).id8、假定已建立以下动态链表结构,且指针p1和p2已指向如下图所示的结点。

C语言试卷含答案

C语言试卷含答案

C语言试卷含答案一、单选题(共10题,每题2分,共20分)1. 下列哪个关键字不属于C语言的关键字?A. ifB. floatC. breakD. while答案:B2. 在C语言中,下列运算符中优先级最高的是:A. +B. *C. =D. &答案:B3. 以下哪种循环结构在循环体执行前就对循环条件进行判断?A. for循环B. while循环C. do-while循环答案:C4. 以下哪个函数库是用来进行数学运算的?A. stdio.hB. string.hC. math.hD. ctype.h答案:C5. 下列哪个运算符是用来进行指针访问的?A. *B. &C. .D. :答案:C6. 以下哪种数据类型可以存储整数和小数?A. intB. floatC. char答案:B7. 下列哪个函数可用于将字符串转换为整数?A. atoi()B. itoa()C. atof()D. sprintf()答案:A8. 在C语言中,以下哪个关键字用于定义一个常量?A. constB. staticC. externD. volatile答案:A9. 以下哪种运算符是用来进行逻辑或操作的?A. &&B. ||C. !答案:B10. 下列哪个文件打开模式适用于读写模式?A. "r"B. "w"C. "a"D. "r+"答案:D二、填空题(共5题,每题4分,共20分)1. C语言中,sizeof运算符返回的是所指数据类型的__________。

答案:字节大小2. 下列语句中,会将字符串s2的内容复制到字符串s1中的是__________。

strcpy(s1, s2);答案:strcpy3. 在C语言中,字符串使用__________来表示。

答案:字符数组4. 在C语言中,__________是用于声明变量的关键字。

C语言程序设计月考试题(函数部份)

C语言程序设计月考试题(函数部份)

实验四班《C语言程序设计》月考试题学号姓名一、选择题(每小题3分,共45分)1、C语言程序由函数组成,它的()。

A)主函数必须在其它函数之前,函数内可以嵌套定义函数B)主函数可以在其它函数之后,函数内不可以嵌套定义函数C)主函数必须在其它函数之前,函数内不可以嵌套定义函数D)主函数必须在其它函数之后,函数内可以嵌套定义函数2、以下说法中正确的是()。

A)C语言程序总是从第一个定义的函数开始执行B)在C语言程序中,要调用的函数必须在main()函数中定义C)C语言程序总是从main()函数开始执行D)C语言程序中的main()函数必须放在程序的开始部分3、若调用一个函数,且此函数中没有return语句,则正确的说法是()。

该函数A)没有返回值 B)返回若干个系统默认值C)能返回一个用户所希望的函数值 D)返回一个不确定的值4、以下不正确的说法是()。

C语言规定A)实参可以是常量、变量或表达式B)形参可以是常量、变量或表达式C)实参可以是任意类型D)形参应与其对应得实参类型一致5、C语言规定,函数返回值的类型是由()。

A)return语句中的表达式类型所决定B)调用该函数时的主调函数类型所决定C)调用该函数时系统临时决定D)在定义该函数时所指定的函数类型所决定6、以下正确的说法是()。

A)定义函数时,形参的类型说明可以放在函数体内B)return后边的值不能为表达式C)如果函数值的类型与返回值类型不一致,以函数值类型为准D)如果形参与实参的类型不一致,以实参类型为准7、对于某个函数调用,不用给出被调用函数的原形的情况是()。

A)被调用函数是无参函数 B)被调用函数是无返回值的函数C)函数的定义在调用处之前 D)函数的定义在别的程序文件中8、已知函数abc的定义为:void abc(){......}则函数定义中void的含义是()。

A)执行函数abc后,函数没有返回值B)执行函数abc 后,函数不再返回C)执行函数abc后,可以返回任意类型 D)以上三个答案全是错误的9、以下正确的描述是()。

15单招2班C语言第一次月考及答案资料.doc

15单招2班C语言第一次月考及答案资料.doc

15单招班计算机程序员技能试题学号:—姓名:_______ 成绩:—第I卷注意事项:每小题选出答案后,用2B铅笔将答题卡上对应题目的答案标号涂黑。

如需改动,用橡皮擦干净后,再选涂其他答案标号。

一、单项选择题(本题共15小题,每小题2分,共30分)1.一个C语言程序是由()。

A)—个主程序和若干个子程序组成E)—个或多个函数组成C)若干过程组成D)若干子程序组成2.以下关于C语言的叙述中正确的是()A)C语言中的注释不可以夹在变量名或关键字的中间B)C语言中的变量可以在使用之前的任何位置进行定义C)在C语言算术表达式的书写中,运算符两侧的运算数类型必须一致D)C语言的数值常量中夹带空格不影响常量值的正确表示3.以下C语言用户标识符中,不合法的是()A)_lB)AaBcC) a _ bD) a b4.若有定义:double a=22; int i=0,k=18;,则不符合C语言规定的赋值语句是A) a = a —,i —;B)i=(a + k)V=(i+k);C)i=a%ll;D)i=! a;5.若a是数值类型,则逻辑表达式(a==I)||(a! = l) 的值是()A) 1B)0C) 2D)不知道a的值,不能确定6.如下嵌套的if语句if(a<b)if(a<c) k=a;else k=c;if(b<c) k=b;else k=c;以下选项中与上述f语句等价的语句是()A)k=(a<b)?a:b; k= (bvc) ?b:c;B)k=(a<b ?((b vc)? a:b) ((b >c)?b:c);C)k=(a<b ?((a vc)? a:c) ((b vc)?b:c);D)k=(a<b ?a:b; k= (avc) ?a:c;7.以下叙述中错误的是()A在程序中凡是以“#”开始的语句行都是预处理命令行B)预处理命令行的最后不能以分号表示结束C #defi ne MAX是合法的宏定义命令行D 0程序对预处理命令行的处理是在程序执行的过程中进行的8.以下关于return语句的叙述中正确的是(A) 一个自定义函数中必须有一条eturn语句B ) 一个自定义函数中可以根据不同情况设置多条eturn语句C)定义成void类型的函数中可以有带返回值的eturn语句D)没有return语句的自定义函数在执行结束时不能返同到调用处9.下列选项中,能正确定义数组的语句是A)int num[0..2008];B)int num[];C)int N=2008; int num[N];D)#define N 2008 int num[N];10.以下叙述中正确的是()。

C语言月考一试卷

C语言月考一试卷

14单招班计算机专业第一次月考《c程序设计》试卷姓名:成绩:一、选择题(每题2分,共30分)1、C语言规定:在一个源程序中,main函数的位置()。

A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后2、在下列字符列中,合法的标识符是( )A.p12&.aB.stud_100C. water$12D.88sum3、在C语言中,要求运算的数必须是整数的运算符是()A./B.!C.%D.= =4、设有语句 int a =3;则执行了语句a + = a - = a*a;后,变量a的值是()A、3B、0C、9D、-125、设a=5,b=6,c=7,d=8,m=2,n=2,执行(m=a > b)&&(n=c>d)后n的值为()A、1B、2C、3D、46、执行下列程序时输入:1234567,程序的运行结果是()main(){int x,y;scanf(“%2d%*2c%1d”,&x,&y);printf(“%d\n”,x+y);}A.17B.46C.15D.97、下述程序的输出结果是()#include<stdio.h>void main(){int x=-1,y=4;int k;k=++x<=0&&!(y--<=0);printf("%d,%d,%d",k,x,y);}A.0,0,3B.0,1,2,C.1,0,3,D.1,1,28、为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。

A.缩排位置相同的ifB.在其之前未配对的ifC.在其之前未配对的最近的ifD.同一行上的if10、两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是()main(){int x;scanf(“%d“,&x);if(x++>5)printf(“%d”,x);else printf(“%d\n”,x--);}A.7和5B.6和3C.7和4D.6和411、若变量c为char类型,能正确判断出c为小写字母的表达式是( )A. 'a'<=c<= 'z'B. (c>= 'a')||(c<= 'z')C. ('a'<=c)and ('z'>=c)D. (c>= 'a')&&(c<= 'z')12、已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是。

C语言月考试题3.doc

C语言月考试题3.doc

崇信县职业教育中心2011-2012学年三年级C 语言第三次月考试题班级 ____________________ 姓名—一、选择题(每题1分,共20分)1. 组成C 语言程序的是 A.过程 B.函数2. 下列表达式的值为0的是A.3%5B. 3/5.0 成绩 ____________________() D.主程序和子程序()D. 3<53. C 语言屮定义某个内部变量时,如果省略了存储类型符,则系统将默认该变量是 ( )9. 函数调用语句 func ((expl, exp2), (exp3, exp4, exp5));屮,实参的个数为 ( ) A.lB.2C.4D.510.设a 为5,执行下列语句后,b 的值和其他三个选项不同的是 ( ) A.b=a/2B.b=6+ (-a )C.b=a%2D.b=a>32||l11. 算术运算符,赋值运算符和关系运算符的运算优先级按从高到低依次为 ()A.算术运算、赋值运算、关系运算B.算术运算、关系运算、赋值运算C.关系运算、赋值运算、算术运算D.关系运算、算术运算、赋值运算12. 执行下列语句printf (“%(T, )后输出为 () A.lB.语法错C.OD.9713.求一个双精度实数的绝对值,应该调用函数 ( )A.sqrtB.powC.absD.fabsC.子程序 C. 3/5 A.白动型B.寄存器型4. 自动型变量分配在 A.内存的数据区中 B.CPU 的通用寄存器中5. 下列保留字中用于构成循坏结构的是A. ifB. while 6. 以下运算符中,运算对彖必须是整型的是A./=B.%= 7. 下列选项中,不合法的C 语言关键字是A.autoB.default&若x=4,则x*=x+2的值为A.36B.24C.静态型D.外部参照型 ()C.内存的程序区中D.内存的堆栈区中() C. switchD. default()C.!=D.〈=() C.staticD.var( )C.18D.2014.若变量已正确定义,表达式(j=3, j++)的值是()A.3B.4C.5D.0 15•若数组名作实参而指针变暈作形参,函数调用实参传给形参的是A.数组的长度B.数组第一个元素的值C.数组所有元素的值D.数组第一个元素的地址16.表达式1 &3&5&7的值为( )A.lB.3C.5D.717.定义一个有4个元素的一维整型数组,正确的是( )A.floata[4];B.int a={l, 2, 3, 4, 5};C.int a={l, 2, 3};D.int a[ ]={1};18.下列对字符数组的描述屮错误的是( )A.字符数组可以存放字符串B.字符数组中的字符串可以整体输入、输出C.可以在赋值语句中通过赋值运算符对字符数组整体赋值D.不可以用关系运算符对字符数组中的字符串进行比较19.以下对C 语言函数的描述中,正确的是( )A.在C中,调用函数时,只能把实参的值传递给形参,形参的值不能传递给实参B.C函数既可以嵌套定义,又可以递归调用C.函数必须有返回值,负责不能使用函数D.C程序中有调用关系的所有函数必须放在同一个源程序文件中20.下列程序的输出结果是( )fun (int x,int y,int z){ z=x*x+y*y; }main(){int a=31;fun(5,2,a);printff t%d,,,a);}A.OB.29C.31D.无定值二、判断正误并改错题(每空2分,共12分)21.下列程序可实现计算两个数的平方和,请修改程序错误部分。

高三计算机专业第二次月考C语言试题

高三计算机专业第二次月考C语言试题

高三计算机专业第二次月考C语言试题高考班计算机专业第二次月考试题《C语言》满分:100分时量:90分钟姓名:一、选择题(每小题2分,共20分)1、sizeof(float)是()A、一个单精度表达式B、一个整型表达式C、一种函数调用D、自定义函数2、以下描述正确的一项是()A、continue语句的作用是结束整个循环的执行B、只能在循环体内和switch语句体内使用break语句C、在循环体内使用break 和continue语句的作用相同D、循环嵌套中只能用goto语句3、语句while(!E);中的表达式!E等价于()A、E==0B、E!=0C、E!=1D、E==14、下面是对数组s的初始化,其中错误的是()A、char s[5]={″abc″};B、char s[5]={′a′,′b′,′c′};C、char s[5]=″″;D、char s[5]=″abcde″;5、判断字符串a和字符串b是否相等,应当使用()A、if(a==b)B、if(a=b)C、if(strcpy(a,b))D、if(strcmp(a,b))6、C语言中,下列说法正确的是()A、实参和与其对应的形参各占用独立的存储单元B、实参和与其对应的形参各共占用一个存储单元C、实参和形参同名时才会共占用一个存储单元D、形参是虚拟的,不占用存储单元7、C语言规定中,下面说法不正确的是()A、实参可以为常量、变量、表达式B、形参可以为常量、变量、表达式C、实参可以为任意类型D、形参与其对应的实参类型一致8、若用数组名作为实参,则传递给形参的是()A、数组第一个元素的值B、数组中元素的值C、数组首元素的地址D、数组元素的个数9、在函数中未指定存储类别的局部变量,系统默认为()A、外部(extern)B、自动(auto)C、静态(static)D、寄存型(register)10、若char s[10]定义;则下面表达式中不表示s[1]的地址是()A、s+1B、s++C、&s[0]+1D、&s[1]二、程序阅读题(每小题5分,共30分)1、main(){ unsigned char x,y,z;x=0x3;y=x|0x8;z=x<<1;printf(″%d,%d″,y,z);} 运行结果:2、#define PT 5.5#define S(x) PTx*x*xmain(){ int a=1,b=2;printf(″%4.1f″,S(a+b));} 运行结果:3、main(){ int i=1,n=3,j,k=3;int a[5]={1,4,5};while(i<=n&&k>a[i]) i++;for(j=n-1;j>=i;j--)a[j+1]=a[j];a[i]=k;for(i=0;i<=n;i++) printf(″%4d″,a[i]); } 运行结果:4、main(){ int a=5,i;for(i=0;i<3;i++)printf(″%4d″,f(a));}int f(int a){ int b=0;static int c=3;b++;c++;return(a+b+c);} 运行结果:5、main(){ char *p1,*p2,str[50]=″123″;p1=″123″;p2=″123″;strcpy(str+1,strcat(p1,p2));printf(″%s″,str);} 运行结果:6、#define N 5main(){ char c[N+1];int i;for(i=1;i<=N;i++) *(c+i)=′A′+i+1;printf(″%d″,fun(c, ′E′,N));}fun(char *s,char a,int n){ int j;*s=a;j=n;while(*s<="" p="">return j;} 运行结果:三、程序填空题(每空题5分,共30分)1、下面的程序的功能是将十进制正整数转换成十六进制。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2012-2013学年度高一第二学期第一次月考C 语言程序设计试卷命题人:毛乃宏 校对: 考试时长: 120分钟 分值: 150分一、单项选择题(本题共12小题,每小题2分,共24分) 1.分析以下程序,以下程序( )。

void main() { int x=5,a=0,b=0; if(x=a+b) printf(“****\n ”); else printf(“####\n ”); } A )有语法错,不能通过编译 B )通过编译,但不能连接 C )输出**** D )输出#### 2.对下述程序,正确的判断的是( )。

main ( ) {int a,b; scanf(“%d,%d ”,&a,&b); if (a>b) a=b;b=a; else a++;b++; printf(“%d,%d ”,a,b);} A )有语法错误,不能通过编译B )若输入4和5,则输出5和6C )若输入5和4,则输出4和5D )若输入5和4,则输出5和63.下述程序的输出结果是main ( ){ int a=0,b=0,c=0;if (++a>0 | | ++b>0) ++c;printf(“%d,%d,%d ”,a,b,c);}A )0,0,0B )1,1,1C )1,0,1D )0,1,1 4.若有以下变量定义: float x; int a, b; 则正确的switch 语句是( )。

A )switch(x)B )switch(x);{ case 1.0: printf(“*\n ”); { case 1: printf(“*\n ”); case 2.0: printf(“**\n ”); } case 1: printf(“**\n ”); }C )switch(a+b)D )switch(a+b){ case 1: printf(“*\n ”); { case 1: printf(“*\n ”);5.为了避免在嵌套的条件语句中if-else产生二义性,C语言规定:else子句总是与( )配对。

A)缩排位置相同的if B)其之前最近的ifC)其之后最近的if D)同一行上的if6.程序段如下,则以下说法中正确的是( )。

int x=20;while (x=0) x=x+1;A)while循环执行20次B)循环是无限循环C)循环体语句一次也不执行D)循环体语句执行一次7.执行语句 y=10;x=y++; 的结果是()。

A) x=10,y=10 B) x=11,y=11 C) x=10,y=11 D) x=11,y=108.若i,j已定义为int型,则以下程序段中循环体总的执行次数是( )。

for(i=5; i; i- -)for(j=1; j<=4; j++){ …… }A)20 B)24 C)25 D)309.语句while(!x==0);当x满足什么条件时将会陷入死循环( )。

A)x==0 B)x!=0 C)x!=1 D)x!=-110.以下描述正确的是( )。

A)由于do-while语句循环中循环体语句只能是一条可执行语句,所以循环体不能使用复合语句B)do-while循环由do 开始,用while结束,在while(表达式)后面不能写分号C)do-while循环体中一定有能使while后面表达式的值变为0(假)的操作D)do-while循环中,可以根据情况省略while11.下面有关for循环的正确描述是( )。

A)for循环只能用于循环次数已经确定的情况B)for循环中是先执行循环体语句,后判断表达式C)在for循环中,不能用break语句跳出循环D)for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来12.若变量均以正确定义并赋初值,以下不是死循环的语句是( )。

A)for (y=9,x=1;x>++y;x=i++) i=x ;B)for ( ; ; x++=i ) ;C)while (1) { x++ ; }D)for (i=10 ; ; i--) sum+=i ;二、填空题(本题共5小题,每小题2分,共10分)2.C语言三个循环语句分别是语句,语句和语句。

3.至少执行一次循环体的循环语句是。

4. 将for(表达式1;表达式2;表达式3)语句改写为等价的while语句为。

1.以下程序的输出结果是。

main(){ int x=-1,y=1;if((x<0)&& !(y<=0))printf("%d,%d\n",x,y);elseprintf("%d,%d\n",x,y);}2.两次运行下面的程序,如果从键盘上分别输入6和8,则输出结果是。

main( ){ int x;scanf("%d",&x);if(x++ > 7)printf("%d",x++);elseprintf("%d\n",x- -);}3.下面程序段的执行结果是。

main(){ a=b=c=0;x=35;if(!a) x--;else if(b) ; if(c) x=3;else x=4;}4.下面程序段的执行结果是main(){ int x=1,y=0,a=0,b=0;switch( x- - ){ case 1: switch(y=2){ case 2: a++;case 1: b++;break;case 0: b- -;}case 2:a++;b++;break;}5.若执行下面的程序时从键盘上输入4,则输出结果是。

main(){ int x;scanf("%d", &x);switch( ++x ){ case 1: case 2: printf("????");break;case 3: case 4: case 5: printf("@@@@");case 6: printf("####");break;default: printf("****");}}6.以下程序的输出结果是void main(){int x=5;do{printf(“%3d”,x- =2);}while(x- -);printf(“%3d”,x);}7.当输入为“student?”时,下面程序的执行结果是。

void main(){ char c;c=getchar();while((c=getchar())!=‘?’) putchar(++c);}8. 下列程序的输出结果。

void main(){int a,b;for(a=1,b=1;a<=100;a++){ if(b>=18) break;if(b%3==1){ b+=4; continue; }b+=5;}printf(“a=%d,b=%d\n”,a,b);9.下面程序的运行结果是。

void main(){ int i,j,a=0,s=0;for(i=0;i<3;i++){ for(j=i;j<4;j++){ s+=1;a+=j;}}printf(“a=%d,s=%d\n”,a,s); printf(“i=%d,j=%d\n”,i,j);}10. 下面程序的运行结果是。

void main(){ int I,j,x,y;x=y=0;for(i=1;i<=8;i++){ x=x+1;for(j=1;i<=5;j++)y++;}printf(“x=%d,y=%d”,x,y);}11.写出下面程序运行的结果。

mxin ( ){ int y=2,x=1;do {x*=y ;x++ ;} while (y- -) ;printf(“%d,%d\n”,x,y);}12.写出下面程序的输出结果。

main(){ int x=0;while(x++<=2)printf("%d,",x);printf("%d\n",x);四、程序填充题(本题共5小题,每个空格4分,共44分)1. 下面程序根据以下函数关系,对输入的每个x值,计算出相应的y值。

请将程序补充完整。

y=x*a x=a或x=-a x*x-a*ax-a<x<ax>a或x<-a#include <math.h>void main(){int x, a;float y;scanf(“%d %d”,&x,&a);if ( ) y=x*a;else if ( )y = sqrt(a*a-x*x);else y=x;printf(“%f”,y);}2. 下面程序的功能是:输出100以内能被3整除且个位数为6的所有整数,请填空。

main(){ int i, j;for(i=0; ; i++){if( ) printf(“%d”, j);}}3.下面程序的功能是从键盘输入的一组字符中统计出大写字母的个数m和小写字母个数n,并输出这两个数,请填空。

void main(){int m=0,n=0;char ch;while(( )!=‘\n’){ if( ) m++;if( ) n++;}printf(“%d,%d\n”,m,n);4. 下面的程序的功能是从键盘输入的10个整数中,找出第一个能被7整除的数。

若找到,打印此数后退出循环;若未找到,打印“not exist”。

请填空。

#include <stdio.h>void main(){int i,a;for(i=1;i<=10;i++){scanf(“%d”,&a);if(a%7= =0){ printf(“%d”,a); ;}}if( ) prin tf(“not exist\n”);}5. 现有一等差数列,已知第一项a=1,公差b=4,下面程序的功能是输出满足前n项之和小于100的n最大值,请填空完成该程序。

#include<stdio.h>void main(){int a=1,b=4,sum=1,n=1;while( ){a=a+b;sum= ;n++;}printf(“%d”,n-1);}五、编程题(本题共2小题,共12分)1. 求100以内奇数和。

相关文档
最新文档