2015年湖南省对口高考C语言试题(含答案)
湖南省对口升学计算机专业C语言类试题Word版

2014年下期永州工贸分校对口升学计算机综合C语言试题总分190分一、填空题(每题4分,共120分)1.有以下程序# define f(x) (x*x)main(){ int i1, i2;i1=f(8)/f(4) ; i2=f(4+4)/f(2+2) ;printf("%d, %d\n",i1,i2); }程序运行后的输出结果是()。
A 64, 28B 4, 4C 4, 3D 64, 642.若有运算符<<,sizeof,^,&=则他们按优先级由高到低的正确排列次序是____.A、sizeof,&=,<<,^B、sizeof,<<,^,&=C、^,<<,sizeof,&=D、<<,^,&=,sizeof3.sizeof(float)是()A、一种函数调用B、一个不合法的表示形式C、一个整型表达式D、一个浮点表达式4.以下叙述中不正确的是()A、表达式a&=b等价于a=a&bB、表达式a|=b等价于a=a|bC、表达式a!=b等价于a=a!bD、表达式a^=b等价于a=a^b 5.若x=2,y=3,则x&y的结果是__()A、0B、2C、3D、56.在位运算中,操作数每左移一位,则结果相当于()A、操作数乘以2B、操作数除以2C、操作数除以4D、操作数乘以47.系统的标准数入文件是指()A、键盘B、显示器C、软盘D、硬盘8.若执行fopen函数时发生错误,则函数的返回值是()A、地址值B、0C、1D、EOF9.若要用fopen函数打开一个新的二进制文件,该文件要既能读也能写,则文件方式字符串应是()A、"ab+"B、"wb+"C、"rb+"D、"ab"10.fscanf函数的正确调用形式是__()A、fscanf(fp,格式字符串,输出表列)B、fscanf(格式字符串,输出表列,fp);C、fscanf(格式字符串,文件指针,输出表列);D、fscanf(文件指针,格式字符串,输入表列);11.fgetc函数的作用是从指定文件读入一个字符,该文件的打开方式必须是____.A、只写B、追加C、读或读写D、答案b和c都正确12.函数调用语句:fseek(fp,-20L,2);的含义是()A、将文件位置指针移到距离文件头20个字节处B、将文件位置指针从当前位置向后移动20个字节C、将文件位置指针从文件末尾处后退20个字节D、将文件位置指针移到离当前位置20个字节处13.利用fseek函数可实现的操作_()A、fseek(文件类型指针,起始点,位移量);B、fseek(fp,位移量,起始点);C、fseek(位移量,起始点,fp);D、fseek(起始点,位移量,文件类型指针);14.在执行fopen函数时,ferror函数的初值是()A、TUREB、-1C、1D、015、若有宏定义如下:#define X 5#define Y X+1#define Z Y*X/2则执行printf("%d\n",Z);语句后,输出结果是( )。
湖南省历界对口高考C语言真题答案

历界高考C语言真题2007年真题一、程序分析题1、#include <stdio.h>main( ){ int x=3;doprintf(“%d”,x-=2);while(!(--x));}2、#include <stdio.h>main( ){ int x=4,y=8,z;z=x<<2|y;printf(“%d”,z);}3、#include <stdio.h>main( ){ char x=’E’,y=’e’;printf(“%c”,x+32);printf(“%c”,(x--,y++));printf(“%c\n”,x==y?x+=32:(y-=32));}4、#include <stdio.h>main( ){ int t=2;while(t<5)switch(t%2){ case 0: t++;printf(“#”);break;case 1: t+=2;printf(“*”);default:printf(“\n”);}}5、#include <stdio.h>main( ){ char str1[50]=”Beijing 2008”,*q=str1;char str2[50]=”One world One Dream!”,*p=str2;while(*p!=’\0’) p++;while(*q!=’\0’) *p++=*q++;printf(“%s”,str2);}6 #include <stdio.h>#include<string.h>main( ) Array { char s[]=”abcdefg”,t;int i=0,j=strlen(s)-1;while(i<j){ t=s[i],s[i]=s[j],a[j]=t;i++,j--;}puts(s);}二、程序填空题1、下面程序的功能是求1000以的完数。
湖南对口升学计算机专业试卷

湖南对口升学计算机专业试卷一、选择题(每题1分,共5分)1.计算机网络的目的是实现计算机之间的什么?A.数据传输B.数据存储C.数据处理D.数据显示2.在计算机中,下列哪种存储器容量最大?A.RAMB.硬盘C.ROMD.CPU3.下列哪种操作系统是开源的?A.WindowsB.macOSC.LinuxD.iOS4.下列哪种协议用于电子邮件传输?A.B.FTPC.SMTPD.TCP/IP5.下列哪种语言是面向对象的编程语言?A.CB.JavaC.PythonD.HTML二、判断题(每题1分,共5分)1.计算机网络的传输介质只能是有线。
()2.在计算机中,CPU是负责数据存储的部件。
()3.操作系统是计算机硬件与应用程序之间的桥梁。
()4.互联网是由许多计算机网络通过路由器互联而成的。
()5.算法是解决问题的方法和步骤,与编程语言无关。
()三、填空题(每题1分,共5分)1.计算机网络的传输介质包括有线和______。
2.在计算机中,______是负责数据处理的核心部件。
3.世界上最早的电子计算机是______。
4.互联网的英文名称为______。
5.算法的五大特性包括输入、输出、有穷性、确定性和______。
四、简答题(每题2分,共10分)1.简述计算机网络的分类。
2.简述操作系统的功能。
3.简述互联网的发展历程。
4.简述算法的五大特性。
5.简述编程语言的发展趋势。
五、应用题(每题2分,共10分)1.设计一个简单的算法,实现两个数的交换。
2.编写一个简单的Python程序,输出1到100的偶数。
3.解释TCP/IP协议的作用和原理。
4.分析计算机病毒的危害及防治方法。
5.说明计算机存储器的层次结构。
六、分析题(每题5分,共10分)1.分析计算机网络的拓扑结构及其优缺点。
2.分析操作系统的内存管理原理及方法。
七、实践操作题(每题5分,共10分)1.使用Python编写一个简单的计算器程序。
2.搭建一个简单的局域网,实现文件共享。
2015年湖南省对口升学第二次模拟考试C语言试卷

2015年平江县职业技术学校高考C语言模拟测试第五套姓名:__________ 总分:____________一、单选题(每题5分,共10分)21、若有如图1所示存储结构,且变量定义为struct node{int data;struct node*next;}p,q,r;若要实现图2所示的存储结构,可选的赋值语句是( ) p q r p q r图1 图2A.p=r;B.p=q->next;C.p->next=q;D.p->next=q->next;22、语句while(!E);括号中的表达式!E等价于 ( )A.E==0B.E!=1C.E!=0D.E==1二、基本操作题(每空3分,共12分)28.输出100到1000之间的各位数字之和能被15整除的所有数,输出时每10个一行。
mian(){ int m,n,k,i=0;for(m=100;m<=1000;m++){ __①__;n=m;do{k=k+__②__;n=n∕10;}__③__;if(k%15==0){ printf(“%5d”,m);i++;if(i%10==0)__④__; }}}三、综合应用题(每空5分共20分)31.题目:以下程序的功能是统计从键盘输入字符串,统计输入字符串中的字母、数字、空格和其他字符的个数。
(每空5分)main(){ char s1[80];int a[4]={0};int k;_______①_______;gets(s1);________②______;puts(s1);for(k=0;k<4;k++)printf("%4d",a[k]);}void fun(char s[],int b[]){int i;for(i=0;s[i]!='\0';i++)if(s[i]>='a'&&s[i]<='z'||s[i]>='A'&&s[i]<='Z') b[0]++;else if(_____③_____) b[1]++;else if(_____④_____) b[2]++;else b[3]++;}四、程序分析题(本大题共3小题,共25分)(1)以下程序的输出结果是__main(){ int a,b;for(a=1,b=1;a<10;a++)if(a%3==1){b+=3;continue;}printf("%d",b);getch();}(2)以下程序的输出结果是__int f( ){static int i=0;int s=1;s+=i;i++;return s;}void mian( ){int i ,a=0;for(i=0;i<5;i++)a+=f();printf(“%d\n ”,a);}(4)以下程序运行后的输出结果是___ struct NODE { int k; struct NODE * link; };mian(){ struct NODE m[5],*p=m ,*q=m+4;int i=0;while(p!=q) {p->k=++i;p++; q->k=++i;q ――; } q ->k=i; for(i=0;i<5;i++)printf(“%d ”,m[i].k);printf(“\n ”);}34、程序填空。
C语言湖南对口高考月考

邵阳市高级技工学校2016年9月 C语言月考试题选择题(每题2分,共50分)1.C语言是由()构成。
A. 主程序和子程序B. 主函数和若干子函数C. 一个主函数和一个其他函数D. 主函数和子程序2.以下说法中正确的是()。
A. C语言程序总是从第一个的函数开始执行B. 在C语言程序中,要调用的函数必须在main()函数中定义C. C语言程序总是从main()函数开始执行D. C语言程序中的main()函数必须放在程序的开始部分3.以下对C语言函数的有关描述中,正确的是()。
A. 调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参B. C函数既可以嵌套定义又可以递归调用C. 函数必须有返回值,否则不能使用函数D. C程序中有调用关系的所有函数必须放在同一个源程序文件中4.C语言程序中,当函数调用时()。
A. 实参和形参各占一个独立的存储单元B. 实参和形参共用一个存储单元C. 可以由用户指定是否共用存储单元D. 计算机系统自动确定是否共用存储单元5.关于return语句,下列正确的说法是()。
A. 在主函数和其他函数中均要出现B. 必须在每个函数中出现C. 可以在同一个函数中出现多次D. 只能在除主函数之外的函数中出现一次6.一个函数返回值的类型是由()决定的。
A. return语句中表达式的类型B. 在调用函数时临时指定C. 定义函数时指定的函数类型D. 调用该函数的主调函数的类型7.在C语言的函数中,下列正确的说法是()。
A. 必须有形参B. 形参必须是变量名C. 可以有也可以没有形参D. 数组名不能作形参8.以下描述正确的是()。
A. 函数调用可以出现在执行语句或表达式中B. 函数调用不能作为一个函数的实参C. 函数调用可以作为一个函数的形参D. 以上都不正确9.当调用函数时,实参是一个数组名,则向函数传送的是()。
A. 数组的长度B. 数组的首地址C. 数组每一个元素的地址D. 数组每个元素中的值10.如果在一个函数的复合语句中定义了一个变量,则该变量()。
2015高考C语言题(2020年整理).doc

试卷编号:8258所属语言:计算机基础试卷方案:111试卷总分:400分共有题型:3种一、程序填空共5题(共计100分)第1题(20.0分)题号:650 难度:中第1章/*-------------------------------------------------------【程序填空】---------------------------------------------------------函数int change(char s[])将s中的数字字符串转换成整数,并返回该数。
例如s[]中为"123",转换后为123。
函数int multi(char s[],char t[])将s字符串转换的整数乘以t字符串转换的整数,并返回乘积。
---------------------------------------------------------注意:请勿改动程序中的其他内容。
-------------------------------------------------------*/#include<stdio.h>int change(char s[]){int i,sum;sum=0;for(i=0;s[i];i++)/**************************SPACE*************************/sum=sum*10+【?】-'0';return sum;}int multi(char s[],char t[]){int mul;/**************************SPACE*************************/mul=【?】;return mul;}int main(){char s1[]="123",s2[]="56";int mst;mst=multi(s1,s2);printf("%d\n",mst);return 0;}答案:=======(答案1)=======s[i]=========或=========*(s+i)=======(答案2)=======change(s)*change(t)=========或=========change(t)*change(s)第2题(20.0分)题号:651 难度:中第1章/*-------------------------------------------------------【程序填空】---------------------------------------------------------函数void check(long n, int c[])检测长整型正整数n是几位数,同时找出最小的数字。
C语言湖南对口高考月考

C语言湖南对口高考月考-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN2016年1.CA.B.C.D.2.A. CB. 在CC. CD. C3.A.B. CC.D. C.C语言程序中,当函数调用时()。
A. 实参和形参各占一个独立的存储单元B. 实参和形参共用一个存储单元C. 可以由用户指定是否共用存储单元D. 计算机系统自动确定是否共用存储单元5.关于return语句,下列正确的说法是()。
A. 在主函数和其他函数中均要出现B. 必须在每个函数中出现C. 可以在同一个函数中出现多次D. 只能在除主函数之外的函数中出现一次.一个函数返回值的类型是由()决定的。
A. return语句中表达式的类型B. 在调用函数时临时指定C. 定义函数时指定的函数类型D. 调用该函数的主调函数的类型.在C语言的函数中,下列正确的说法是()。
A. 必须有形参B. 形参必须是变量名C. 可以有也可以没有形参D. 数组名不能作形参.以下描述正确的是()。
A. 函数调用可以出现在执行语句或表达式中B. 函数调用不能作为一个函数的实参C. 函数调用可以作为一个函数的形参D. 以上都不正确29.当调用函数时,实参是一个数组名,则向函数传送的是()。
A. 数组的长度B. 数组的首地址C. 数组每一个元素的地址D. 数组每个元素中的值10.如果在一个函数的复合语句中定义了一个变量,则该变量()。
A. 只在该复合语句中有效,在该复合语句外无效B. 在该函数中任何位置都有效C. 在本程序的源文件范围内均有效D. 此定义方法错误,其变量为非法变量11.下列说法不正确的是()。
A. 主函数main中定义的变量在整个文件或程序中有效B. 不同函数中,可以使用相同名字的变量C. 形式参数是局部变量D. 在一个函数内部,可以在复合语句中定义变量,这些变量只在本复合语句中有效12.以下叙述中不正确的是()。
A. 在不同的函数中可以使用相同名字的变量B. 函数中的形式参数是局部变量C. 在一个函数内定义的变量只在本函数范围内有效D. 在一个函数内的复合语句中定义的变量在本函数范围内有效13.以下叙述中不正确的是()。
2015年湖南省对口升学计算机专业C语言类试题

2014年下期永州工贸分校对口升学计算机综合C语言试题总分190分一、填空题(每题4分,共120分)1.有以下程序# define f(x) (x*x)main(){ int i1, i2;i1=f(8)/f(4) ; i2=f(4+4)/f(2+2) ;printf("%d, %d\n",i1,i2); }程序运行后的输出结果是()。
A 64, 28B 4, 4C 4, 3D 64, 642.若有运算符<<,sizeof,^,&=则他们按优先级由高到低的正确排列次序是____.A、sizeof,&=,<<,^B、sizeof,<<,^,&=C、^,<<,sizeof,&=D、<<,^,&=,sizeof3.sizeof(float)是()A、一种函数调用B、一个不合法的表示形式C、一个整型表达式D、一个浮点表达式4.以下叙述中不正确的是()A、表达式a&=b等价于a=a&bB、表达式a|=b等价于a=a|bC、表达式a!=b等价于a=a!bD、表达式a^=b等价于a=a^b5.若x=2,y=3,则x&y的结果是__()A、0B、2C、3D、56.在位运算中,操作数每左移一位,则结果相当于()A、操作数乘以2B、操作数除以2C、操作数除以4D、操作数乘以47.系统的标准数入文件是指()A、键盘B、显示器C、软盘D、硬盘8.若执行fopen函数时发生错误,则函数的返回值是()A、地址值B、0C、1D、EOF9.若要用fopen函数打开一个新的二进制文件,该文件要既能读也能写,则文件方式字符串应是()A、"ab+"B、"wb+"C、"rb+"D、"ab"10.fscanf函数的正确调用形式是__()A、fscanf(fp,格式字符串,输出表列)B、fscanf(格式字符串,输出表列,fp);C、fscanf(格式字符串,文件指针,输出表列);D、fscanf(文件指针,格式字符串,输入表列);11.fgetc函数的作用是从指定文件读入一个字符,该文件的打开方式必须是____.A、只写B、追加C、读或读写D、答案b和c都正确12.函数调用语句:fseek(fp,-20L,2);的含义是()A、将文件位置指针移到距离文件头20个字节处B、将文件位置指针从当前位置向后移动20个字节C、将文件位置指针从文件末尾处后退20个字节D、将文件位置指针移到离当前位置20个字节处13.利用fseek函数可实现的操作_()A、fseek(文件类型指针,起始点,位移量);B、fseek(fp,位移量,起始点);C、fseek(位移量,起始点,fp);D、fseek(起始点,位移量,文件类型指针);14.在执行fopen函数时,ferror函数的初值是()A、TUREB、-1C、1D、015、若有宏定义如下:#define X 5#define Y X+1#define Z Y*X/2则执行printf("%d\n",Z);语句后,输出结果是( )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2015年湖南省对口高考计算机C语言试题一、单选题(在本题的每一小题的备选答案中,只有一个答案是正确的,本大题共3小题,每小题5分,共15分)2015年20.在C语言中,下列叙述正确的是A.空字符串不占用内存,其内存空间大小是0B.可以用关系运算符比较字符串的大小C.连续两个双引号是合法的字符串常量D.连续两个单引号是合法的字符常量答案:C"" 保存在文字常量区char*p="";p的值指向文件常量区的地址而*p的值为0 因为c的字符串都是以0结尾没有""内容但还是有0的字符常量是用单引号括起来的一个字符。
2015年21.若有语句:int x=12,y=8,z;z=0.8+x/y;执行语句后z的值为A.1.8B.1C.2D.2.42015年22.若有语句:int a,b;scanf("%d;%d",&a,&b);如果把整数4赋给a,把整数5赋给b,应该输入A.4 5B.4,5 C.45 D. 4;5三、综合应用题(每小题20分,每空5分,共20分)2015年30.输入一行文字,找出其中大写字母、小写字母、空格、数字及其它字符各有多少。
main(){char str[40],*p,sl=0,s2=0,s3=0,s4=0,s5=0;gets(str);p=str;while(*p){if(_①*p>=’A’&&*p<=’Z’) sl++;else if(②*p>=’a’&&*p<=’z’) s2++;else if(③*p>=’0’&&*p<=’9’) s3++;else if(④ *p=‘’) s4++;else s5++;p++;}printf(“大写字母:%d 小写字母:%d 数字:%d 空格:%d 其它:%d\n”,s1,s2,s3,s4,s5);}四、程序分析题(本大题共3小题,共75分)2015年32.阅读程序,写出运行结果(每空5分,共25分)(1)下列程序的运行结果是① 63main(){ int i=0,a=0;while(i<30){ for(;;)if(i%10==0) break;else i--;i+=11;a+=i;}printf("%d",a);}(2)下列程序的运行结果是② 14main(){ int a[3][3]={{0,1},{2,3},{4,5}},i,j,s=0;for(i=1;i<3;i++)for(j=0;j<=i;j++)s+=a[i][j];printf("%d",s);}(3)下列程序的运行结果是③ 1024#include <stdlib.h>int fun(){ static int x=1;x*=2;return x;}main(){ int i,s=1;for(i=1;i<=4;i++) s*=fun();printf("%d",s);}(4)下列程序的运行结果是④ knahTmain(){ char *p;int i;p=(char*)malloc(sizeof(char)*20);strcpy(p," Thank ");for(i=6;i>=0;i--)putchar(*(p+i));free(p);}(5)下列程序的运行结果是⑤ 012345main(){ FILE *fp;int x[6]={0,1,2,3,4,5},i;fp=fopen("test.dat","wb");fwrite(x,sizeof(int),3,fp);rewind(fp);fread(x,sizeof(int),3,fp);for(i=0; i<6; i++)printf("%d",x[i]);fclose(fp);}2015年33.程序填空。
按照题目要求,将正确内容填入答题卡相应位置,使程序完整。
(每空5分,共25分)(l)已知公式如下:float func(float x){ if(x<1)return x;else if(①x>=1&&x<10 )return x+5;else ② return 8*x*x-32 ;}(2)编写函数,通过指针将一个字符串反向。
如下程序的输出为:dcbavoid strReverse(char *s){ char c;char *p;③ p=s ;while(*p!=’\0')p++;④ p-- ;while(s<=p){ c=*s;*s=*p;s++;*p=c;⑤ p-- ;}}main(){ char a[10]="abcd";strReverse(a);printf("%s",a);}2015年34.阅读程序,修改程序中的错误,不得增行或删行,也不得更改程序结构。
请在答题卡中指出错误代码所在的行号,并给出该行修改后的程序代码。
(每处5分,共25分)(l)产生一个0-9之间的随机整数,要求用户猜这个整数。
用户输入一个整数,程序判断是否与所产生的随机数相等,由屏幕显式判断结果。
如果猜得不对,再次提示输入,进行判断,直到猜出这个数为止。
以下程序只允许修改两行..。
L1 #include <stdio.h>L2 #include <math.h>L3 #include <time.h>L4 main()L5 {L6 int x,a=-1;L7 srand((unsigned)time(NULL)); /*随机种子*/L8 x=rand()%10; /*产生0-9的随机数*/L9 while(a!=x)L10 {L11 scanf("%d",a); L11改为:scanf("%d",&a);L12 if(a=x) L12改为:if(a==x)L13 puts("猜对");L14 if(a>x)L15 puts(“太大,请重试”);L16 if(a<x)L17 puts(“太小,请重试”);L18 }L19 }(2)函数convertNum用于实现无符号十进制数到其它进制数的转换,转换结果的每一位以字符存储于字符数组s中(如十进制3转换为二进制后,数组s中存储的字符串为11),参数srclnt为待转换数据,d为转换的目标进制。
函数convertNum转换成功返回l,失败返回0。
以下程序只允许修改三行..。
L1 #include <stdio.h>L2 #include <stdlib.h>L3 #define M sizeof(unsigned int)*8L4 int convertNum(unsigned srclnt,int d,char s[])L5 {L6 static char digits[]="0123456789ABCDEF";L7 char buf[M+1];L8 int j,i=M;L9 if(d<2||d>16)L1O {L11 s[0]=’\0';L12 return 0;L13 }L14 buf[i]='\0';L15 doL16 {L17 buf[--i]=digits[srclnt/d];L17改为:buf[--i]=digits[srclnt%d];L18 srclnt=srclnt%d; L18改为:srclnt=srclnt/d;L19 }while(srclnt);L20 for(j=0;buf[i]!=’\0';j++,i++)L21 {L22 s[j]=buf[i];L23 };L24 s[j+1]='\0'; L24改为:s[j]='\0';L25 return 1;L26 }五、程序设计题(本大题25分,每空5分)2015年35.编写程序用于从键盘读取一个字符串,将字符串中所有连续的数字转换为对应的整数并添加到链表中,整个字符串处理完毕后输出链表的内容。
如输入为a25re776!jk321ss时,输出为25 776 321#include <stdio.h>#include <stdlib.h>#define LEN sizeof(struct IntData)struct IntData{ long data;struct IntData *next;};/*将数据为data的新节点插入链表*/struct IntData *addToList(long data,struct IntData * curTail){ struct IntData *p=(struct IntData *)malloc(LEN);p->data=data;p->next=NULL;if(curTail!=NULL)① curtail ->next =p ;return p;}struct IntData * picklntegersFromStr(char *str){char ch;long data=0;/*hasData用于标识当前是否正在处理数字字符*//*isAdd标识处理的整数数据是否被添加到链表*//*isFirst标识是否是添加到链表的第一个数据*/int hasData=0,isAdd=0,isFirst=1;/*tail指向链尾,head指向链头*/struct IntData *head=NULL,*tail=NULL,*p;while((ch=*str)!=’\0'){ if(ch>='0'&&ch<='9'){ ② data = data *10+*str(ch-‘0’) ;hasData=1;isAdd=0;}else{ if(hasData&&!isAdd){ p=addToList(data,tail);③ data=0 ;if(isFirst){ ④ head=p ;tail=p;isFirst=0;}else tail=p;hasData=0;isAdd=1;}}str++;}if(hasData&&!isAdd){ p=addToList(data,tail);if(isFirst)⑤ head=p ;}return head;}void printList(struct IntData *head) { struct IntData *p=head;while(p!=NULL){ printf("%d ",p->data);p=p->next;}printf("\n");}main(){ char str[100];struct IntData *head=NULL;gets(str);head=picklntegersFromStr(str);printList(head);}。