韩山专插本C语言真题卷_第1页
韩山专插本C语言真题卷_第2页
韩山专插本C语言真题卷_第3页
韩山专插本C语言真题卷_第4页
韩山专插本C语言真题卷_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

韩山师范学院2011年专升本插班生考试试题教育技术学专业C语言程序设计试卷(A卷)题号一二三四五六七八九十总分评卷人得分一、填空题(每空1分,共10分).C程序的基本单位是 .C语言源程序文件的后缀是。.标识符的第一个字符必须是 或。.表达式10%3的结果是。.当打开的文件被成功关闭后,函数fclose()返回。.在每个C语句和数据定义的最后必须有一个.若有定义:doubleA[3][5];则A数组中行下标的下限为,列下标的上限为 0.若x=2,y=3,贝Ux|y<<2的结果是二、单项选择题(每小题1.5分,共30分)题号12345678910答案题号11121314151617181920答案.算法是指为解决某个特定问题而采取的正确且有限的步骤, 下面不属于算法的5个特性的是()。A.高效性B.有穷性C.有零个输入或多个输入 D.确定性

.C语言程序的三种基本结构是(A.顺序结构、选择结构、循环结构B.递归结构、循环结构、转移结构C.嵌套结构、递归结构、顺序结构D.循环结构、转移结构、顺序结构3有下面的程序段chara[3],b[]= “China”;a=b;Ch.编译出错printf( “%sCh.编译出错A.运行后将输出ChinaBC.运行后将输出Chi D4若变量均已正确定义并赋值,以下合法的C4若变量均已正确定义并赋值,以下合法的D.x=5=4+1Ax=n%2.5B.x=y==5CD.x=5=4+15若执行以下程序时从键盘上输入 9,则输出结果是( )A11B.10C.9D.8main(){intn;scanf("%d",&n);if(n++<10)printf("%d\n",n);elseprintf("%d\n",n--);}

6.设 x、y、t均为int型变量,则执行语句:A.不定值B.47.有以下程序段intk=0;while(k=1)k++;while循环执行的次数(TOC\o"1-5"\h\zA.无限次 BC.一次也不执行 D8.若变量 c为char类型,能正确判断出A.‘ a'<=c<=‘z' BC.(‘a'<=c)and( ‘z'>=c)D9.以下所列的各函数首部中,正确的(A.voidplay(var:Integer,varb:Integer)B.voidplay(a,b)C.voidplay(inta,intb)D.Subplay(aasinteger,basinteger)10.以下程序的输出结果( )。A.0B.29Cfun(intx,inty,intz){z=x*x+y*y;}则执行语句:Cx=y=3;t=++x||++y;后,y则执行语句:Cx=y=3;t=++x||++y;后,y的值为(3D.131D.无定值.有语法错,不能执行1次c为小写字母的表达式().(c>=‘a')||(c<= ‘z').(c>=‘a')&&(c<=‘z'))。{inta=31;fun(5,2,a);printf("%d",a);}11.下列程序的输出结果是()。A.非法B.a[4]的地址C.5D.3main(){chara[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;printf("%d",*--p);}12.当调用函数时,实参是一个数组名,则向函数传送的是()。A.数组的长度B.数组的首地址C.数组每一个元素的地址D,数组每个元素中的值13.若fp是指向某文件的指针,且已读到文件末尾,则库函数 feof(fp)的返回值是(A.EOFB.0C.非零值 D.NULL14.以下程序的输出结果是()。A.1,5,9,B.1,4,7,C.3,5,7,D.3,6,9,main(){inti,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)printf("%d,",x[i][2-i]);15.以下叙述正确的是 () 。A.在进行宏定义时,可以引用已定义过的宏B.编译预处理命令必须位于程序的开头C.宏展开将占用程序运行时间D.从宏被定义的位置起,所有与宏名相同的字符串都将被替换16.在说明一个共用体变量时,系统分配给它的存储空间是 ()A.该共用体中第一个成员所需存储空间B.该共用体中最后一个成员所需存储空间C.该共用体中占用最大存储空间的成员所需存储空间D.该共用体中所有成员所需存储空间的总和17.下列程序段的输出结果 () 。intb=10;printf("%d",~b);A.02B.-20C.-21D.-1118.在C语言中,对文件进行操作的一般步骤是( )。A.打开文件——操作文件——关闭文件B.操作文件一一修改文件一一关闭文件C.读写文件——打开文件——关闭文件D.读文件一一写文件一一关闭文件19.若执行fopen()函数发生错误,则函数的返回值是(A.地址值B.NULLC.1D.EOF20.以下程序运行后结果是( )。#defineA3#defineB(a)((A+1)*a)main(){intx;x=3*(A+B(7));printf("%d\n",x);}A.93B.31C.12D.不确定三、阅读程序,将运行结果写到各题右侧的空白处(每小题4分,共20分).main(){inta=0;a+=(a=8);printf("%d\n",a);}.main(){inta[3][3]={{1,2},{3,4},{5,6}};inti,j,s=0;for(i=1;i<3;i++)for(j=0;j<=1;j++)s+=a[i][j];printf("%d",s);}main(){charstring1[64]="abc\t";char*string2="def\t";charstring3[]="123\n";strcat(string1,string2);strcat(string1,string3);printf("%d\n",strlen(string1));}structdate{inta;chars[5];}arg={27,"abcd"};main(){arg.a-=5;strcpy(arg.s,"ABCD");printf("%d,%s",arg.a,arg.s);}main(){charfood[]="Bread";char*p;p=food+strlen(food);while(--p>=food)puts(p);}四、阅读程序或程序段,填空(每小题4分,共20分)1.以下程序中,select函数的功能是:在N行M列的二维数组中,选出一个最大值作为函数值返回,并通过形参传回此最大值所在的行下标,请填空。#defineN3#defineM3select(inta[N][M],int*n){inti,j,row=1,colum=1;for(i=0;i<N;i++)for(j=0;j<M;j++)if(a[i][j]>a[row][colum]){row=i;colum=j;}*n= ; return ; }main(){inta[N][M]={9,11,23,6,1,15,9,17,20},max,n;max=select(a,&n);printf("max=%d,line=%d\n",max,n);}.以下程序的功能是:输出a,b,c三个变量中的最小值,请填空。#include<stdio.h>voidmain(){inta,b,c,t1,t2;scanf("%d%d%d",&a,&b,&c);t1=a<b? ;t2=c<t1? ;printf("%d\n",t2);}.下面程序采用函数递归调用的方法计算 sum=1+2+3+4+…+n,请填空。#include"stdio.h"main(){intsum(int);inti;scanf("%d",&i);if(i<=0)printf("Inputerror!");elseprintf("sum=%d”,sum(i));}intsum(intn){if(n==1)return ;elsereturn ;}.编写一个程序判定一个字符在一个字符串中出现的次数,如果字符不出现,则返回 0,请填空。#include<stdio.h>intchar_count(char*s,charletter){intcount=0;while(*s){if( ) count++;}return ; }main(){charc,string[50],*str=string;printf("Inputstring:");gets(str);printf("Inputachar:");scanf("%c",&c);printf("Thenumberis:%d",char_count(str,c));}请填.编写一个程序将用户输入的由数字字符和非数字字符组成的字符串中的数字提取出来,空。请填main()charstr[20],*p;p=str;gets(str);for(; ;p++){if( )printf("%c",*p);}}五、编程题(每小题10分,共20分).编一程序,输入一个百分制成绩,输出用 ‘A' , 'B' , 'C' , 'D' , 'E'表示的等级。设:90分以上的为‘A',80~89分为'B',70~79分为'C',60~69分为'D',60分以下为‘E'。若输入的成绩大于100分或小于0分,输出“输入错误!”的提示信息。(要求用switch语句编程)。2.2.有以下程序.在歌星大奖赛中,有10个评委为参赛的选手打分,分数为1到100分,选手最后得分为去掉一个最高分和一个最低分后其余8掉一个最高分和一个最低分后其余8个分数的平均值,请编写程序实现。韩山师范学院2011年本科插班生考试样卷

教育技术学专业C语言程序设计题号一二二四五六七八九十总分评卷人得分一、填空题(每空1分,共10分). c语言的数据类型中,构造类型包括:数组、和.在C程序中,指针变量能够赋值或值。.C目标程序经后生成扩展名为exe的可执行程序文件。. 设有定义语句staticchars[5 」;则s[4]的值是。.设x为int型变量。与逻辑表达式!x等价的关系表达式是。.若一全局变量只允许本程序文件中的函数使用,则该变量需要使用的存储类别是.磁盘文件按文件读写方式分类可以为顺序存取文件和。.设有下列结构体变量 xx的定义,则表达式sizeof(xx)的值是。struct{longnum;charname[20];union{floaty;shortz;}yz;}xx;二、单项选择题(每小题 1.5分,共30分)题号12345678910答案题号11121314151617181920答案设有定义intx=8,y,z;则执行y=z=x++,x=y==z;语句后,变量x值是( )A、0B、1C、8D、99.9.有以下程序main(){inti=1,j=1,k=2;if((j++IIk++)&&i++)printf("%d,%d,%d\n”,i,j,k);}执行后输出结果是 ( )A、1,1,2B、2,2,1C、2,2,2已知i、j、k为int型变量,若从键盘输入:以下选项中正确的输入语句是 ( )scanf( “%2d%2d%2”d,&i,&j,&k);scanf( “%d%d%d”,&i,&j,&k);scanf( “%d,%d,%d”,&i,&j,&k);scanf( “i=%d,j=%d,k=%d”,&i,&j,&k);有以下程序D、2,2,31,2,3<回车 >,使 i的值为1、j的值为2、k的值为3,main(){inta=5,b=4,c=3,d=2;if(a>b>c)printf("%d\n",d);elseif((c-1>=d)==1)printf("%d\n",d+1);elseprintf("%d\n",d+2);}执行后输出结果是 ( )A、2B、3C、4D5.以下程序段 ( )x=1;编译时有错,无结果do{x=x*x;}while(!x);A、 是死循环C、 循环执行一次B、D、循环执行二次

有语法错误以下不能正确定义二维数组的选项是A、 inta[2][2]={{1},{2}};C、 inta[2][2]={{1},2,3};( )B、 inta[][2]={1,2,3,4};D、 inta[2][]={{1,2},{3,4}};有以下程序main(){intaa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};inti,s=0;for(i=0;i<4;i++)s+=aa[i][1];printf( “%d\n”,s);}程序运行后的输出结果是 ( )A、11B、19C、13D、20以下程序的输出结果是 ( )main(){charch[3][5]={"AAAA","BBB","CC"};printf("\"%s\"\n",ch[1]);}A、"AAAA"B、"BBB"C、"BBBCC"D、"CC"#definef(x)x*xmain(){inti;i=f(4+4)/f(2+2);printf(“%dn”,i);}执行后输出结果是 ( )A、28B、22C、16D、410.决定C语言中函数返回值类型的是( )。A、return语句中的表达式类型日调用该函数的主调函数类型C调用函数时临时指定的类型D定义函数时在函数首部中所指定白^类型(若缺省,则隐含为int型)。系统对预处理命令(如宏替换、文件包含、条件编译)的处理时机是()。A、编译源程序 B、编译源程序之前C连接目标文件时 H运行程序时在位运算中,操作数每左移一位,其结果相当于()A、操作数乘以2 B、操作数除以4C操作数除以2 D、操作数乘以4下述描述中不正确的是()。A、字符型数组中可以存放字符串以可以对字符型数组进行整体输入、输出C可以对整型数组进行整体进行输入、输出D不能在赋值语句中通过赋值运算符“ =”对字符型数组进行整体赋值若有以下定义 inta[2][3],则对a数组第i行第j列元素的正确引用是 ( )A、*(*(a+i)+j) B、(a+i)[j]C、*(a+i+j) D、*(a+i)+j有以下程序voidfun(char*a,char*b){a=b;(*a)++;}main(){charc1='A',c2='a',*p1,*p2;p1=&c1;p2=&c2;fun(p1,p2);printf("%c%c\n",c1,c2);}程序运行后的输出结果是 ( )A、Ab B、aa C、Aa D、Bb已定义以下函数Fun(char*p2,char*p1){while((*p2=*p1)!='\0'){p1++;p2++;}}函数Fun的功能是( )A将pl所指字符串复制到 p2所指内存空间日将pl所指字符串的地址赋给指针 p2C^pl和p2两个指针所指字符串进行比较D检查pl和p2两个指针所指字符串中是否有 ‘\0'设有以下结构体类型:structst{charname[8];intnum;floats[4];}student[50];并且结构体数组student中的元素都已有值,若要将这些元素写到硬盘文件 fp中,以下不正确的形式是( )fwrite(student,sizeof(structst),50,fp);fwrite(student,50*sizeof(structst),1,fp);fwrite(student,25*sizeof(structst),25,fp);for(i=0;i<50;i++)fwrite(student+i,sizeof(structst),1,fp);.若有说明语句chara[]="Itismine";char*p="Itismine";则以下不正确的叙述是( )A、a+1表示的是字符t的地址B、p指向另外的字符串时,字符串的长度不受限制C、p变量中存放的地址值可以改变D>a中只能存放10个字符( )c=(aA( )c=(aAb)<<2;、000101004分,共20分)A、数组的长度B、数组的首地址C、数组每一个元素的地址H 数组每一个元素中的值.设有变量说明inta=3,b=6;charc; 若执行赋值语句则c的二进制值是( )。A、00011100B、00000111C、00000001D三、阅读程序,将运行结果写到各题右侧的空白处(每小题#include<stdio.h>main(){charstr[尸'1234567”;inti;for(i=0;i<7;i+=3)printf("%s\n",str+i);}#include<stdio.h>main(){inti;for(i=0;i<3;i++)switch(i){case0:printf("%d",i);case2:printf("%d",i);default:printf("%d",i);}}#include<stdio.h>main(){inti;for(i=1;i<6;i++){if(i%2){printf("#");continue;}printf("*");}printf("\n");}#include<stdio.h>intb=1;func(intp){staticintd=5;d+=p;printf("%d,",d);return(d);}main(){inta=3;printf("%d\n",func(a+func(b)));}#include<stdio.h>structstu{intnum;charname[10];intage;};voidpy(structstu*p){printf("%s\n",(*p).name);}main(){struct stustudent[3]={{1001,"Sun",25},{1002,"Ling",23},{1003,"Shen",22}};py(student+2);}四、阅读程序或程序段,填空(每小题4分,共20分).下面程序的功能是调用 fun函数以删除字符串中指定的字符,请填空。voidfun(chars[],intc){inti,j;for(i=0,j=0;s[i]!='\0';i++)if( ) s[j]='\0';

}main(){charstr[]="abcdefgAbcd",ch;scanf("%c",&ch);fun(str,ch);printf("%s\n",str);}.下面程序是按学生姓名查询其排名和平均成绩, 查询可连续进行直到键入 0时结束,请填空。#include<string.h>#defineNUM4structstudent{intrank;char*name;floatscore;};stu[尸{3, "ToM',89.3,4,“Mary”,78.2,1, “Jack”,95.1,2, “Jim”,90.6};main(){charstr[10];inti;do{printf("Enteraname:");scanf("%s",str);for(i=0;i<NUM;i++)if( ) {printf("%s,%d,%f\n",stu[i].name, stu[i].rank,stu[i].score);break;}if(i>=NUM)printf("Notfound\n");}while(strcmp(str,"0")!=0);}.下面程序是用“顺序查找法”查找数组中的元素,请填空。main(){inta[8]={25,57,48,37,12,92,86,33};inti,x;scanf("%d",&x);for(i=0;i<8;i++)if( ) {printf("Found!Theindexis:%d\n",i);break;}if( ) printf(Can'tfound!");printf(Can'tfound!");.下面程序由键盘输入一些字符,逐个把它们送到磁盘文件中,直到输入一个“ !”为止,请填空。#include<stdio.h>main(){FILE*fp;charch,fname[10];printf("Inputnameoffile:\n");gets(fname);if((fp=fopen(fname,"w")尸=NULL){printf("cannotopen\n");exit(0);}printf("Enterdata:\n");while( )fputc( );fclose(fp);.下面函数fun的功能是:将在字符串 s中下标为奇数位置上的字符,紧随其后重复出现一次,放在一个新串t中,例如:当s中的字符串为:"ABCDEF"时,则t中的字符串应为:"BBDDFF"。#include<string.h>voidfun(char*s,char*t){inti,j;for(i=0;i<=strlen(s);i++){ ; ;}}main(){chars[100],t[100];scanf("%s",s);fun(s,t);printf("Theresultis:%s\n",t);}五、编程题(每小题 10分,共20分).编一个程序,将输入的一个字符串按反序存放, 要求在主函数中输入字符串并输出反序后的字符串,在被调用函数中完成反序存放。例如:输入字符串“abcdefg”,输出"gfedcba”。.有一个班5位学生,各学4门课程,查找出有一门以上课程不及格的学生, 打印出其全部课程的成绩。韩山师范学院2012年专升本插班生考试

教育技术学专业C语言程序设计试卷 (A卷)得分评卷人、填空题(每空得分评卷人、填空题(每空1分,共10分)题号一二三四五总分评卷人得分.每个C程序都必须包括一个 酉数。.C语言源程序编辑完成后,需要经过> 网个环节,才能执行。.若变量a,b已经定义为int类型并赋值为4和5,要求用printf函数以a=4,b=5的形式输出,请写出完整的输出语句。.表达式10/3的结果是。.算法的复杂度主要包括时间复杂度和。.C语言语句的结束符是.数组intA[10];中有个元素,下标上限为1.5分,共30分).若x=2,y=121.5分,共30分)得分评卷人、单项选择题(每题题号12345678910答案题号11121314151617181920答案.算法是指为解决某个特定问题而采取的正确且有限的步骤,下面不属于算法的5个特性的是 ( )。A.高效性B.有穷性C.有零个输入或多个输入 D.确定性.以下哪个不是C语言程序的三种基本结构( )。A.顺序结构B.递归结构 C.循环结构 D.选择结构3.有以下程序:main(){intm,n,p;scanf("m=%dn=%dp=%d",&m,&n,&p);printf("%d%d%d",m,n,p);}若想从键盘上输入数据,使变量m的值为123,n的值为456,p的值为789,则正确的输入是()。A.m=123n=456p=789B.m=123n=456p=789C.m=123,n=456,p=789D.123456789TOC\o"1-5"\h\z4.下面四个选项中,哪个选项是合法变量( )。A.4as B.a#3 C._3a D.“a”5.若执行以下程序时从键盘上输入 9,则输出结果是( )。A.11 B.10 C.9 D.8mainn(){intn;scanf("%d",&n);if(n<10)printf("%d\n",n+1);elseprintf("%d\n",n-1);}6.设x、y、t均为int型变量,则执行语句:x=y=3;t=x+y++;后,y的值为(A.不定值 B.4 C.3 D.17.有以下程序段intk=0;while(k<1)k++;while循环执行的次数是()A.无限次C.一次也不执行B.有语法错,不能执行D.执行1次)8.若变量c为int类型,能正确判断出c为数字的表达式是(A.('0'<=c)and('9'>=c)C.'0'<=c<='9'9.以下正确的函数声明形式是(doublefun(intx,inty)doublefun(intx;inty)doublefun(intx,inty);doublefun(intx;inty);10.以下程序的输出结果是(A.0 B.29intfun(intx,inty){intz;z=x*x+y*y;returnz;}main()B.(c>='0')&&(c<='9')D.(c>='0')||(c<='9'))。)。C.31 D.无定值{inta=31;a=fun(5,2);printf("%d",a);}11.下列程序的输出结果是()。A.非法 B.a[1]的地址 C.9 D.8main(){chara[10]={9,8,7,6,5,4,3,2,1,0},*p=a+1;printf("%d",*p);}12.下列能正确定义一维数组的选项是( )。A.inta[5]={0,1,2,3,4,5}; B.inta[]={0,1,2,3,4,5};C.chara={'A','B','C'}; D.inta[5]="0123";.有下列程序:#include<stdio.h>voidWriteStr(char*fn,char*str){FILE*fp;fp=fopen(fn,"w");fputs(str,fp);fclose(fp);}main(){WriteStr("t1.dat","start");WriteStr("t1.dat","end");}程序运行后,文件 t1.dat中的内容是(}}B.endD.B.endD.endrtC.startend.以下程序的输出结果是 ( )。main(){inta[]={1,2,3,4,5,6,7,8,9,0},*p;for(p=a;p<a+10;p++)printf("%d,",*p);}A.1,2,3,4,5,6,7,8,9,0, B.2,3,4,5,6,7,8,9,10,1,C.0,1,2,3,4,5,6,7,8,9, D.1,1,1,1,1,1,1,1,1,1,.有定义语句:intb;charc[10];,则正确的输入语句是 ( )。A.scanf("%d%s",&b,&c);B.scanf("%d%s",&b,c);C.scanf("%d%s",b,c);D.scanf("%d%s",b,&c);.下列程序的功能是:给r输入数据后计算半径为r的圆面积s。程序在编译时出错。main()/*Beginning*/{intr;floats;scanf("%d",&r);s=九*r*rprintf("s=%f\n",s);A.注释语句书写位置错误B.存放圆半径的变量r不应该定义为整型C.输出语句中格式描述符非法D.计算圆面积的赋值语句中使用了非法变量TOC\o"1-5"\h\z.下列程序段的输出结果 ( )。intb=10;printf("%d",b<<1);A.01 B.20 C.21 D.11.在C语言中,对文件进行操作的一般步骤是( )。A.操作文件 —— 修改文件 —— 关闭文件B.打开文件 —— 操作文件 —— 关闭文件C.读文件一一写文件一一关闭文件D.读写文件 —— 打开文件 —— 关闭文件.使用fopen()函数打开文件时,向文本文件尾增加数据,文件的使用方式应为()。A.r B.a C.w+ D.ab+.以下程序运行后结果是( )。#defineA5main(){intx=0;x=3*(A+7);printf("%d\n",x);36021D.不确定36021D.不确定得分评卷人题4分,共20分)三、阅读程序,将运行结果写到各题右侧的空白处(每main(){inta=0;a='a';printf("%c",a);}#include<string.h>main(){charp[]={'a','b','c',''0'};charq[10]={'a','b','c'};printf("%d,",strlen(q));printf("%d",strlen(p));}longfunc(intx){longp;if(x==0||x==1)return(2);p=x*func(x-1);return(p);}main(){printf("%d\n",func(2));}structdate{inta;chars[5];}arg={27,"abcd"};main(){arg.a=5;strcpy(arg.s,"AB");printf("%d,%s",arg.a,arg.s);}#include<stdio.h>main(){if(100)printf("Great!\n");elseif(60)printf("Pass'n");elseprintf("Fail'n");}得分评卷人 四、阅读程序或程序段,填空(每题4分,共20分).以下程序打印左下三角的九九乘法表,请填空#include<stdio.h>main(){inti,j;for(i=1;i<10;i++){for(j=1;;j++)printf("%d*%d=%2d ",);printf("\n");}}.以下程序的功能是:输出a,b,c三个变量中的最大值,请填空。#include<stdio.h>voidmain(){inta,b,c,t1,t2;scanf("%d%d%d",&a,&b,&c);t1=?a:b;t2=?c:t1;printf("%d\n",t2);}.以下程序中,select函数的功能是:在一维数组中,选出一个最大值作为函数值返回,并通过形参传回此最大值的下标。请填空。#defineN10select(inta[N],int*n){inti,k=0;for(i=1;i<N;i++)if(a[i]>a[k])

k=i; ; ;}main(){inta[N]={9,11,23,6,1,15,9,17,20},max,n;max=select(a,&n);printf("max=%d,n=%d\n",max,n);}.以下程序的功能是:输入a和b两整数,按由大到小顺序输出,请填空cmain(){int*p1,*p2,*p,a,b;scanf("%d,%d",&a,&b); ; ;if(a<b){p=p1;p1=p2;p2=p; }printf("*p1=%d,=%d",*p1,*p2);}.以下函数的功能是:将from指针所指向的内容复制到to指针所指向空问,请填空。voidcopy_string(char*from,char*to){for(;;from++,to++) ;*to='\0';}得分评卷人五、编程题(每题10分,共20分)1.编写程序,把从键盘输入的数字按下列对应关系显示

输入数字1输入数字1显示One2 Two3 Three其他 Other2.求1+2+3+4+……+n的值,并输出结果,其中n由用户输入韩山师范学院2013年专升本插班生考试试卷教育技术学专业C语言程序设计试卷 (A卷)得分评卷人得分评卷人、填空题(每空1分,共10分)题号一二二四五总分评卷人得分、选择结.结构化程序设计方法规定程序或程序段的结构有三种:、选择结构和循环结构。.在内存中存储"A”要占用个字节,存储'A'要占用字节。.有语句:charA[]={"Iamastudent"};该字符串的长度是,A[3]=.能表述"20<x<30"的C语言表达式是。.C语言的预处理语句以开头。.数组名代表数组的。.C语言中字符串的结束符是o.定义fp为文件型指针变量的定义方法为一 得分评卷人二、单项选择题(每题1.5分,共30分)题号12345678910答案题号11121314151617181920答案1、下面标识符中,不合法的用户标识符为。A.hot_do B.cat1 C._pri D.2ab2、下列叙述中正确的是。A.每个C源文件中都必须有一个main()函数B.在C程序中main()函数的位置是固定的C.一个C程序只能由一个源文件组成D.在C程序的函数中不能定义另一个函数.以下变量x.、y、z均为doubl睽型且已正确赋值,不能正确表示数学式子x/yz的C语言表达式是。A.x/y*z B.x*(1/(y*z))C.x/y*1/z D.x/y/z.printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列,如果字符串长度大于 5,则输出按 方式。A.从左起输出该字符串,右补空格B.按原字符长从左向右全部输出C.右对齐输出该字用,左补空格D.输出错误信息5、以下程序段的输出结果是 。charstr[15]= ”hello!”;printf( “n%”d,strlen(str));A.15 B.14 C.7 D.6.巳知字母A的ASCII码是65,以下程序的执行结果是。#include<stdio.h>voidmain(){charc1='A',C2='Y';printf("%d,%d\n",c1,c2);}A.A,YB.65,65 C.65,90 D.65,897.以下选项中,值为1的表达式 。A.1-'0' B.1-'\0' C.'1'-0 D.'\0'-'0'.以下合法的if语句(设intx,a,b,c;)是。Aif(a=b)x++; Bif(a=<b)x++;C.if(a<>b)x++; D.if(a=>b)x++;.若k为整型变量,则以下循环体执行的次数为。for(k=2;k<0;k--)printf("%d",k);0 B.1 C.2 D.无限次C语言中while和do-while循环的主要区别是A.do-while的循环体至少无条件执行一次while的循环控制条件比do-while的循环控制条件严格do-while允许从外部转到循环体内do-while的循环体不能是复合语句.若有说明,intb[3][4];则对数组元素的正确引用是oA.b[3][4] B.b[3][0] C.b(1)(2) D.b[3-3][2-0].以下正确的定义语句是oA.inta[1][4]={1,2,3,4,5};floatx[3]口={{1},{2},{3}};Clongb[2][3]={{1},{1,2},{1,2,3}};D.doubley[][3]={0};13.以下所列的各函数首部中,正确的是oA.voidplay(vara:Integer,varb:Integer)B.voidplay(inta,b)voidplay(inta,intb) D.Subplay(aasinteger,basinteger).以下程序的运行结果是。#definef(x)x*xvoidmain(){inti;i=f(2+1);printf("%d\n",i);}A.4 B.9 C.6 D.5.不能把字符串"Hello!"赋给数组b的语句是。A.charb[10]={'H','e',T,T,'o','!'}; B.charb[10];b="Hello!";C.charb[10];strcpy(b,"Hello!"); D.charb[10]="Hello!";.若有说明语句"inta[10],*p=a;",对数组元素的正确引用是。A.*(a+10) B.*(p-1) C.p[2]D.p+2.在C语言中,当定义一个共用体类型,并用其定义某变量后,系统分配给该变量的内存大小是。

B.第一个成员所占内存空间D.B.第一个成员所占内存空间D.成员中所有成员空间最小者C.成员中所有成员空间最大者.若inta=4,b;b=aAa;则b=A.1 B.4 C.64 D.0.若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)的返回值是A.EO B.0 C.非零值D.NULL.若要用fopen函数打开一个新的二进制文件,该文件要既能读也能写,则打开文件的方式字符串应是。A."ab+" B."wb+" C."rb" D."ab"得分评卷人三、阅读程序,将运行结果写到各题右侧的空白处(每题4分,共20分).#include<stdio.h>voidmain(){inti,sum;i=1;sum=0;do{sum=sum+i;i=i+1;}while(i<=10);printf( "sum=n%d,sum);printf( "i=%d,i);}.#include<stdio.h>voidmain(){inta,b,c;a=10;b=20;c=max(a,b);printf("max=%d\n",c);}intmax(intx,inty){intz;if(x>y)z=x;elsez=y;return(z);}#include<stdio.h>voidmain(){inta[8]={4,8,12,16,20,24,28,32};int*p=a;do{printf(“%d\t”,*p);p++;}while(p<a+8);}#include<stdio.h>voidmain(){chars[]="abcdef";s[3]='\0';printf("%s\n",s);}#include<stdio.h>voidmain(){enumtype{a,b=-5,c,d=6,f,g=9};printf("%d,%d,%d\n",a,c,f);

得分评卷人得分评卷人四、阅读程序或程序段,填空(每题4分,共20分).已知能被4整除而不能被100整除的或者能被400整除的年份是润年,则判断某一年是否是润年的程序如下:#include<stdio.h>voidmain(){intyear,leap;scanf("%d,&year)if( )leap=1;elseleap=0;if( )printf("是润年.\n");elseprintf("不是润年.\n");}.韩信点兵。韩信有一队兵,他想知道有多少人,便让士兵排队报数:按从1至5报数,最末一个士兵报的数为1;按从1至6报数,最末一个士兵报的数为5;按从1至7报数,最末一个士兵报的数为4;最后再按从1至11报数,最末一个士兵报的数为10。下面程序的主要功能是计算韩信至少有多少兵。#include<stdio.h>voidmain(){intx=1;intfind=0;for(x=1;_____;x++){if(x%5==1&&x%6==5&&x%7==4&&x%11==10){printf("x=%d\n",x);}.求矩阵主次对角线之和。#include<stdio.h>voidmain(){ inta[3][3]={9,7,5,124,6,8,0};inti,j,s1=0,s2=0;for(i=0;i<3;i++)for(j=0;j<3;j++){if()s1=s1+a[i][j];if(_____)s2=s2+a[i皿}printf("%d n”,s1,s2);}.输入两个数,按从小到大的顺序输出#include<stdio.h>voidswap(int*p1,int*p2){inttemp;temp=*p1;*p1=*p2;*p2=;}voidmain(){inta,b;scanf("%d,%d,&a,&b);if(a>b)swap();printf( "%dn%d,a,b);}.以下程序是建立一个名为myfile的文件,并把从键盘输入的字符存入该文件,当键盘上输入结束时关闭该文件。#include<stdio.h>voidmain(){FILE*fp;charc;fp= do{c=getchar();fputc(c,fp);}while(c!=EOF); ;}得分评卷人五、编程题(每题10分,共20分).从键盘输入的10个整数中,找出第一个能被7整除的数。若找到,打印此数后退出循环;若未找到,打印“notexist”。.从键盘上输入10个数存入一维数组中,求这10数中的最大值与最小值并输出。韩山师范学院2014年本科插班生考试试卷教育技术学专业C语言程序设计试卷(A卷)题号一二三四五总分评卷人得分一、填空题(每空1分,共10分)1.C语言的标识符必须以 或 开头.C语言程序的执行是从 酉数开始。.fgets函数的作用是从指定文件读入一个o.表达式13%10的结果是。.若有定义:inta[3][5];则数组a中共有个元素。行下标的下界是,行下标白上界是。.若x=3,y=2,贝Ux|y<<2的结果是.数据的输入/&出是针对:而言的。得分评卷人二、单项选择题(每小题1.5分,共30分):题号123456789r101;答案题号11121314151617181920答案.一个C程序的执行是从A.main()函数开始,直到main()函数结束B.第一个函数开始,直到最后一个函数结束C.第一个语句开始,直到最后一个语句结束D.main()函数开始,到最后一个函数结束.一个C程序是由。A.一个主程序和若干子程序组成B.一个或多个函数组成C.若干过程组成D.若干子程序组成.下面不正确的字符串常量是A.'abc'B."12'12"C."0"D."".以下结果为整数的表达式(设有inti;charc;floatf;A.i+f B.i*cC.c+fD.i+c+f.设charch;以下正确的赋值语句是A.ch='123 '; B.ch='\xff’;C.ch='\08 '; D.ch="”;.设intm=1,n=2,贝Um=n的值是A.0 B.1 C.2 D.3.如下程序的执行结果是main(){intn=1,m=2;printf("%d%d",++n,m++);}A.21 B.12 C.22 D.11.设inta=1,b=2,c=3;则表达式a==c||a+b>=c的值是

A.FB.0C.1D.T.C语言对嵌套if语句的规定是:A.FB.0C.1D.T.C语言对嵌套if语句的规定是:else总是与配对<A.其之前最近的ifB.第一个ifC.缩进位置相同的ifD. 其之前最近且不带else的if.下面表达式中 的值等于00(设:inta=1;b='0';)A.!a==!b B.!a||b C.!(a==b) D.a&&!b.执行下列程序,输入为1的输出结果是#include<stdio.h>main(){intk;scanf("%d,&k);switch(k){case1:printf( "%d\n",k++);case2:printf( "%d\n",k++);case3:printf( "%d\n",k++);case4:printf( "%d\n",k++);break;default:printf( "FULL!\n");}}TOC\o"1-5"\h\zA.1 B.2 C.2 D.13 24 35 412.以下正确的函数声明形式是A.doublefun(intx,inty)doublefun(intx;inty)doublefun(intx,inty);doublefun(intx;inty);.以下程序段x=-1;do{x=x*x;}While(!x);A.是死循环B.循环执行二次C.循环执行一次D.语法错误.算法是指为解决某个特定问题而采取的正确且有限的步骤,下面不属于算法的5个特性的是()。A.高效性 B.有穷性C.有零个输入或多个输入 D.确定性.C语言程序的三种基本结构是( )。A.顺序结构、选择结构、循环结构B.递归结构、循环结构、转移结构C.嵌套结构、递归结构、顺序结构D.循环结构、转移结构、顺序结构.设有以下结构类型说明和变量定义,则变量a在内存所占字节数是structstud{charnum[6];doubleave;}a;A.14B.18 C.26D.22.设i和x都是整型,则以下for循环for(i=1,x=876;i<=6&&x!=876;i++)scanf("%d",&x);A.最多执行6次B. 最多执行5次C.是无限循环D. 循环体一次也不执行.若有说明:inta[3][4]; 则对数组元素的正确引用是A.a[2][4]B.a[1,3]C.a[1+1][0]D.a(2)(1).若有以下说明,请选出哪个是对a数组元素地址的正确引用

inta[5],*p=a;A.&a[5]B.p+2C.a++D.&a20.以下不正确的说法为A.在不同函数中可以使用相同名字的变量B.形式参数是局部变量C.在函数内定义的变量只在本函数范围内有效得分评卷人D.在函数内的复合语句中定义的变量在本函数范围内有效三、阅读程序,将运行结果写到各题右侧的空白处(每小题4分,共20分)main(){inta=0;a+=(a=8);printf("%d\n",a);}main(){inta[3]={1,2,3};inti,s=0;for(i=1;i<3;i++)s+=a[i];printf("%d",s);}main(){charstring1[64]="abc";char*string2="def";charstring3口="123";strcat(string1,string2);strcat(string1,string3);printf("%d\n",strlen(string1));}structdate{inta;chars[5];}arg={27,"abcd"};main()

{arg.a=5;strcpy(arg.s,"ABCD");printf("%d,%s",arg.a,arg.s);}main(){charfood口="Bread";char*p;p=food;puts(p);得分评卷人}四、阅读程序或程序段,填空(每小题4分,共20分)1.以下程序的功能是:在N行M列的二维数组中,找出最小值,以及最小值所在的行下标,请填空。#defineN3#defineM3main(){inta[N][M]={21,11,23,6,1,15,9,17,20};inti,j,row=0,min=a[0][0];for(i=0;i<N;i++)for(j=0;j<M;j++)if(a皿卜min){① }printf("min=%d,line=%d\n",min,row);}.以下程序的功能是:输出a,b,c三个变量中的最大值,请填空#include<stdio.h>voidmain(){inta,b,c,t1,t2;scanf("%d%d%d",&a,&b,&c);t1=a<b?①;t2=c<t1?②;printf("%d\n",t2);}.下面程序用于计算sum=1+2+3+4+…+n,请填空。#include"stdio.h"main(){intn,i,s=0;scanf("%d",&n);for(i=1;①;i++)② ;printf("sum=%d",s);}.以下程序完成对一维数组Array进行冒泡排序(从大到小),请填空main(){intArray[11];intj,k,temp;for(j=1;j<11;j++)scanf("%d,&Array[i]);for(j=1;j<10;j++)for(k=1; ① ; k++)if(② ) {temp=Array[k];array[止Array[k+1];array[k+1]=temp;

}.某同学把邮箱密码忘记了,他只记得密码是一个5位数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论