收藏 分销(赏)

湖北省技能高考C语言测试题.docx

上传人:w****g 文档编号:10557384 上传时间:2025-06-02 格式:DOCX 页数:10 大小:26.43KB
下载 相关 举报
湖北省技能高考C语言测试题.docx_第1页
第1页 / 共10页
湖北省技能高考C语言测试题.docx_第2页
第2页 / 共10页
点击查看更多>>
资源描述
C语言知识测试题 一、单项选择题(每小题5分,共150分) 1.下列合法的常量是( )。 A.-32169 B.0128 C.0XDEFG D.13E0.5 2.以下选项中不合法的标识符是 ( )。 A.printf B.FOR C.&a D._00 3.以下选项中不属于正确字符常量的是( )。 A. 'C' B. '\\' C.'\xCC0' D. '\070' 4.设变量已正确定义并赋值,以下正确的语句是( )。 A.x=y*5=x+z; B.int(15.8%5); C.x=y+z+5,++y; D.int a=b=c=25%5; 5.设变量均已正确定义,有语句scan(“%d%c%d%c”,&a,&b,&c,&d);若为变量a和c赋数值10和20,为变量b和d赋字符X和Y。以下所示的输入形式中正确的是(注:□代表空格字符)( )。 A.10□X□20□Y〈回车〉    B.10□X20□Y〈回车〉  C.10X〈回车〉        D.10□X〈回车〉     20Y〈回车〉           20□Y〈回车〉 6.若变量已正确定义,有以下程序段 int a=3,b=5,c=7; if(a>b) a=b; c=a; else c=b; printf("%d,%d,%d\n",a,b,c); 其输出结果是( )。 A.程序段有语法错 B.3,5,3 C.3,5,5 D.3,5,7 7.有以下程序 #include <stdio.h> main() { int x=1,y=0,a=0,b=0; switch(x) { case 1: switch(y) { case 0: a++; case 1: b++; break; } case 2: a++; b++; case 3: a++; b++; break; } printf(“a=%d,b=%d\n”,a--,--b); } 程序的运行结果是( )。 A.a=1,b=0 B.a=3,b=2 C.a=3,b=3 D.a=2,b=2 8.设有条件表达式:(EXP)? i++ :j--; ,则以下表达式中及(EXP)完全等价的是( )。 A.(EXP==0) B.(EXP!=0) C.(EXP==1) D.(EXP!=1) 9.设用到的变量都已正确定义,则下列正确的选项是( )。 A.scanf(“%6.2f”,&a); B.c=getchar();putchar(c);若从键盘上输入abc后回车,则输出为a。 C.printf(“%6.2f”,23.456);则输出结果为23.46□。 (注:□代表空格字符) D.scanf(“%3c%2d”,&a,&b);若从键盘输入123456后回车,则a值为’123’,b值为45。 10.有以下程序 #include<stdio.h> main() { int i,j, m=55; for(i=1;i<=3;i++) for(j=3; j<=i; j++) m=m%j; printf("%d\n ", m); } 程序的运行结果是( )。 A.0 B.1 C.2 D.3 11.在C语言中,char型数据在内存中的存储形式是( )。          A.补码    B.反码   C.源码    D.ASCII码 12.设用到的变量均正确定义,则执行语句:(x=6)>(y=5)?1:1.5;后表达式的值为( )。 A.1      B.1.0     C.1.5     D.编译通不过 13.设 int a=12; 表达式a+=a-=a*=a的值是(  )。 A. 12 B. 144 C. 0 D. 132 14.以下程序的输出结果是(  )。 main( ) { int a=011; printf(“%#X\n”,++a); } A. 12 B. 10 C. A D. 0XA 15.在下列程序段中,若k为整型,则程序输出结果为( )。 k=2; while(k=0) printf(“%d”,k); k--; printf(“%d\n”,k); A. -1 B. 2 C. 0 D. 1 16.以下程序的输出结果是(  )。 main() { int k1=1,k2=2,k3=3,x=15; if(!k1) x--; else if(k2) if(k3) x=4;else x=3; printf(“x=%d\n”,x); } A. x=4 B. x=15 C. x=14 D. x=3 17.若用到变量均正确定义,则下列说法正确的是( )。 A .x=3;x=!x--;最终x值为2。 B.printf(“%d=%%D”,20,20);则输出20=%D C. scanf(“%d,%d”,&a,&b);在输入数据时可输入2□3后回车。(注:□代表空格字符) D.执行程序段:x=1;do --x;while(x--);此循环为无限循环。 18.设有:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b)&&(n=c>d)后n的值为    。 A)1        B)2        C)3        D)4 19.以下程序运行后,a和b的值分别为( )。  #include <stdio.h> int main() { int a,b; a=10%3,b=10/3; printf("%d,%%%d",a,b); } A.1,%3       B.3,%1       C.1,%1   D.1,%d 20.有以下程序,运行后的输出结果是( )。 main() { int x,y,z; x=y=1; z=x++,y++,++y; printf("%d,%d,%d\n",x,y,z); } A.2,3,3 B. 2,3,2 C. 2,3,1 D. 2,2,1 21.执行以下程序时,输入1234567<回车>,则输出结果是( )。 main() { int a=1,b; scanf(“%2d%2d”,&a,&b); printf(“a=%d b=%d”,a,b); } A.12 34 B.a=123 b=456 C.a=12 b=34 D.输入有错误 22.逗号表达式(a=3*5,a*4),a+15的值为( )。 A.15 B.60 C.30 D.75 23.若有说明语句:char c='\72';则变量c( )。 A.包含1个字符 B.包含2个字符 C.包含3个字符 D.说明不合法,c的值不确定 24.下列程序段的运行结果是( )。 int n=0; while(n++<3); printf("%d",n) A. 2 B. 3 C. 4 D. 以上都不对 25.设用到的变量均正确定义,则以下不是无限循环的语句为( )。 A. for(y=0,x=1;x>++y; i++) i=x; B. for( ; ; i =x++); C. while(1){x++;y--;} D. for(i=10;a=2 ; i--) sum+=i; 26.有以下程序,运行后的输出结果是( )。 main() { int i=1,j=2,k=3; if(i++==1&&(++j==3||k++==3)) printf("%d %d %d\n",i,j,k); } A.1 2 3 B. 2 3 4 C. 2 2 3 D. 2 3 3 27.以下能正确计算1×2×3×4...×10的程序段是( )。 A. while(i<=10) {i=1; s=1; s=s*i; i++; } B. for {i=1, s=0;i<=10; i++; } s=s*i; C. i=1; s=1; do {s=s*i; i++; } while(i<=10) D. i=1; s=0; do {s=s*i; i++; } while(i<=10) 28.以下程序段中的变量已正确定义 for(i=0;i<4;i++,i++) for(k=1;k<3;k++); printf(“%d”,k); 程序段的输出结果是( ) A.1212 B.123123 C.3 D.4 29.已知字符A的ASCII码值为65,执行下列程序后 #include<stdio.h> main() {char a=‘A’; int b=20; printf(“%d,%c”,(a=a+1,a+b,b),a+‘a’ -‘A’,b); } A.表达式非法,输出零或不确定值 B.输出结果为20,b C.因输出项过多,无输出或输出不确定值 D.输出结果为20,1541,20 30.以下程序的输出结果是( ) main() {int a=2,b=-1,c=2; if(a<b) if(b<0) c=0; else c+=1; printf(“%d\n”,c); } A. 0 B.1 C.2 D.3 二、程序填空题(每空5分,计200分) 31.输入一个正整数,求该数各位之和,如输入3256, 求得3+2+5+6=16。 #include<stdio.h> main() { int i,t=  【1】 ;   scanf(“%d”, 【2】);   while(   【3】   ){t+=  【4】 ; 【5】;}   printf(“%d\n”,t); } 32. 下面程序的功能是:判断整数 m 是否为素数。 试题程序: #include <math.h> #include <stdio.h> void main ( ) { int m, i, k; printf ("输入一个整数:"); scanf ("%d", &m); k =【6】; for ( 【7】; i <= k;【8】) if ( m % i == 0 ) 【9】; if (【10】) printf ("%d是素数\n", m ); else printf ("%d不是素数\n", m ); } 33. 下面程序的功能是:有一分数序列 …求这个数列的前20项之和。试题程序: #include<stdio.h> main( ) { int i,n=20; float a=2,b=【11】,t,s=0; for(i=1;【12】;i++) { s+=【13】; t=a; 【14】;    【15】;}    printf("sum=%9.6f\n",s);} 34.以下程序的功能是计算:m=1-2+3-4+…+9-n,并输出结果。请填空。 【16】 int main( ) { int m=0,f ,i,n; scanf(“%d”,&n); 【17】; for(【18】; i<=n; i++) { m+=【19】; f= 【20】; } printf(“m=%d”,m) } 35. 以下程序的功能是计算:s=1+12+123+1234+12345。请填空。 #include<stdio.h> int main() { int t,s=0,i; 【21】; for( i=1;【22】; i++) { t=i+【23】 ; s=【24】; } printf("1+12+123+1234+12345=%d\n",【25】); } 36. 输入x,计算y值并输出。其中分段函数如下: x<0 y=2x+3 x=0,y=0 x>0,y=(x+7)/3 #include <stdio.h> main() {int x; float y ; 【26】 ; if(x<0)【27】; else if(【28】) y=0; 【29】 【30】; printf(“输入x的值为%d,对应y值为%f。\n”,x,y); } 37.用switch语句编程实现下列函数关系,请填空。 x y x<0 -1 x=0 0 0<x 1 #include<stdio.h> int main() { int x,y; 【31】; switch(x<0) {case 1:【32】;break; case 0: switch(【33】) {case 1:y=0;【34】; 【35】:y=1;} printf(“输入x的值为%d,对应y值为%f。\n”,x,y); } 38. 输入两个正整数m和n,求其最大公约数和最小公倍数。 #include<stdio.h> int main() { int a,b,r,t,; printf("请输入两整数:\n"); scanf("%d%d",&a,&b); t=a*b; if(【36】) {a=a+b; 【37】; a=a-b; } r=a%b; while(【38】 ) { a=b; 【39】; 【40】; } printf("最大公约数是:%d\n",b; printf("最小公倍数:%d\n",t/a); } 答题卡 姓名:______________ 成绩:_______________ 单项选择题(每小题5分,计150分) 题号 1 2 3 4 5 6 7 8 9 10 答案 题号 11 12 13 14 15 16 17 18 19 20 答案 题号 21 22 23 24 25 26 27 28 29 30 答案 填空题(每空5分,计200分) 【1】 【2】 【3】 【4】 【5】 【6】 【7】 【8】 【9】 【10】 【11】 【12】 【13】 【14】 【15】 【16】 【17】 【18】 【19】 【20】 【21】 【22】 【23】 【24】 【25】 【26】 【27】 【28】 【29】 【30】 【31】 【32】 【33】 【34】 【35】 【36】 【37】 【38】 【39】 【40】 答题卡 姓名:______________ 成绩:_______________ 单项选择题(每小题5分,计150分) 题号 1 2 3 4 5 6 7 8 9 10 答案 A C C C C A B B B B 题号 11 12 13 14 15 16 17 18 19 20 答案 D B C D A A B B A C 题号 21 22 23 24 25 26 27 28 29 30 答案 C C A C A D C C B C 填空题(每空5分,计200分) 【1】0 【2】&i 【3】i>0 【4】i%10 【5】i/=10 【6】sqrt ( m ) 【7】i=2 【8】i++ 【9】break 【10】i > k(或i>=k+1) 【11】1 【12】i<= n 【13】a/b 【14】a=a+b 【15】b=t 【16】#include<stdio.h> 【17】f=1 【18】i=1 【19】i*f 【20】-f 【21】t=0 【22】i<=5 【23】t*10 【24】s+t 【25】s 【26】scanf("%d",&x) 【27】y=2*x+3 【28】x==0 【29】else 【30】y=(x+7)/3 【31】scanf(“%d”,&x) 【32】y=-1 【33】x==0 【34】break 【35】default 【36】(a<b) 【37】(b=a-b) 【38】(r或r!=0) 【39】(b=r) 【40】(r=a%b) 10 / 10
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 考试专区 > 高考

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服