收藏 分销(赏)

2023年江苏省计算机二级C语言试题笔试1.doc

上传人:二*** 文档编号:4509789 上传时间:2024-09-26 格式:DOC 页数:11 大小:35.54KB 下载积分:5 金币
下载 相关 举报
2023年江苏省计算机二级C语言试题笔试1.doc_第1页
第1页 / 共11页
本文档共11页,全文阅读请下载到手机保存,查看更方便
资源描述
江苏省计算机等级考试 - 学年 第 学期 c程序设计 试卷( ) 题号 一 二 三 四 五 六 七 八 九 总 分 得分 一、选择题(本题共20道小题,共40分。) 1. 若有说明,double *p,a;则能通过scanf语句对的给输入项读入数据的程序段是 A)*p=&a; scanf("%lf",p); B)p=(double*)malloc(8);scanf("%f",p); C) p=&a;scanf("%lf",a); D)p=&a; scanf("%le",p); 2. 两次运营下面的程序,假如从键盘上分别输入6和4,则输出结果是 main( ) { int x; scanf("%d",&x); if(x + + >5) printf("%d",x); else printf("%d\n",x - -); } A) 7和5 B) 6和3 C) 7和4 D) 6和4 3. 下面程序的输出是 A) xyzabcABC B) zabcABC C) yzabcABC D) xyabcABC #include<stdio.h> #include<string.h> main() { char *p1="abc",*p2="ABC",str[50]="xyz"; strcpy(str+2,strcat(p1,p2)); printf("%s\n", str);} 4. 若有以下说明: int a[12]={1,2,3,4,5,6,7,8,9,10,11,12}; char c='a',d,g; 则数值为4的表达式是 A)a[g-c] B)a[4] C)a['d'-'c'] D)a['d'-c] 5. 以下叙述中不对的的是 A)在不同的函数中可以使用相同名字的变量 B)函数中的形式参数是局部变量 C)在一个函数内定义的变量只在本函数范围内有效 D)在一个函数内的复合语句中定义的变量 6. 请选出以下程序段的输出结果 #include<stdio.h> #define MIN(x,y) (x)<(y)? (x):(y) main() { int i,j,k; i=10; j=15; k=10*MIN(i,j); printf("%d\n",k); } A) 15 B) 100 C) 10 D)150 7. 在C程序中,可把整型数以二进制形式存放到文献中的函数是 A) fprintf函数 B) fread函数 C) fwrite函数 D) fputc函数 8. 设有以下语句: struct st {int n; struct st *next;}; static struct st a[3]={5,&a[1],7,&a[2],9,'\0'},*p; p=&a[0]; 则表达式_____的值是6。 A)p + + ->n B) p->n + + C) (*p).n + + D) + + p->n 9. C语言中形参的缺省存储类别是 A)自动(auto) B)静态(static) C)寄存器(register) D)外部(extern) 10. 执行下面的程序段后,变量k中的值为 int k=3, s[2]; s[0]=k; k=s[1]*10; A) 不定值 B) 33 C) 30 D) 10 11. 已知字母A的ASCII码为十进制的65,下面程序的输出是 main() { char ch1,ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf("%d,%c\n",ch1,ch2);} A) 67,D B) B,C C) C,D D) 不拟定的值 12. 语句:printf("%d \n",12 &012);的输出结果是 A) 12 B) 8 C) 6 D) 012 13. 以下说法中对的的是 A) C语言程序总是从第一个的函数开始执行 B) 在C语言程序中,要调用的函数必须在main()函数中定义 C) C语言程序总是从main()函数开始执行 D) C语言程序中的main()函数必须放在程序的开始部分 14. 以下程序运营后,输出结果是 main( ) { char *s="abcde"; s+=2; printf("%ld\n",s); } A)cde B)字符c的ASCII码值 C)字符c的地址 D)犯错 15. 设x和y均为int型变量,则执行下的循环后,y值为 for(y=1,x=1;y<=50;y++) { if(x>=10)break; if(x%2==1){x+=5;continue;} x-=3; } A)2 B)4 C)6 D)8 16. 当a=1,b=3,c=5,d=4时,执行下面一段程序后,x的值为 if(a<b) if(c<d)x=1; else if(a<c) if(b<d)x=2; else x=3; else x=6; else x=7; A)1 B)2 C)3 D)6 17. 设所有变量均为int型,则表达式(a=2,b=5,b++,a+b)的值是 A.7 B.8 C.6 D.2 18. 设C语言中,一个int 型数据在内存中占2个字节,则unsigned int 型数据的取值范围为: A) 0-255 B) 1-32767 C) 0-65535 D) 0- 19. 下面的程序 main() { int x=3,y=0,z=0; if(x=y+z)printf("* * * *"); else printf("# # # #");} A) 有语法错误不能通过编译 B) 输出* * * *。 C) 可以通过编译,但是不能通过连接,因而不能运营。 D) 输出# # # #。 20. 若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,b)));在此函数调用语句中实参的个数是 A)3 B)4 C)5 D)6 二、填空题(每空1分,共10分。) 1. 若有定义:double x[3][5],则x数组中行下标的下限为_________,列下标的下限为__________。 2. 设有说明语句"int a[3][4]={{1,2},{3,4,5},{6,7,8}};"则a[0][2]的初始化值为_____________,a[2][2]的初始化值为______________。 3. 表达式7/2的结果是____________。表达式7%2的结果是____________。 4. 若已知a=1.5,b=15,c=1,则表达式a*b&&c的运算结果是____________。 5. C语言的标记符只能由大小写字母,数字和下划线三种字符组成,并且第一个字符必须为______________。 6. 定义int a[]={1,2,3,4,5,6},*p=a;表达式(*++p)++的值是____________。 7. 已有int i,j; float x;为将-10赋给i,12赋给j,410.34赋给x;则相应scanf("%d,%d,%d",&i,&j,&f)调用语句的数据输入形式是__________ 三、判断题(本题共10道小题,共10分。) 1. 在实际编程中,do-while循环完全可以用for循环替换( ) 2. do-while循环中,根据情况可以省略while( ) 3. 若调用一个函数,且此函数中没有return语句,则返回一个不拟定的值( ) 4. 函数调用:strcat(strcpy(str1,str2),str3)的功能是将串str2复制到串str1中后再将串str3连接到串str1之后( ) 5. 自增运算符(++)或自减运算符(--)只能用于变量,不能用于常量或表达式( ) 6. 全局变量使得函数之间的"耦合性"更加紧密,不利于模块化的规定( ) 7. 函数的定义可以嵌套,但函数的调用不可以嵌套( ) 8. 一个变量在内存中占据一定的存储单元( ) 9. 在while循环中允许使用嵌套循环,但只能是嵌套while循环( ) 10. 字符型数组中可以存放字符串( ) 四、程序填空(本题共5道小题,每题4分,共20分。) 1. 设有以下程序: main() { int n1,n2; scanf("%d",&n2); while(n2!=0) { n1=n2%10; n2=n2/10; printf("%d",n1); } } 程序运营后,假如从键盘上输入1298;则输出结果为_________。 2. 以下程序输出的最后一个值是__________。 int ff(int n) { static int f=l; f=f*n; return f; } main() { int i; for(I=1;I<=5;I++ printf("%d\n",ff(i)); } 3. 编写程序,计算s=1+(1+2)+(1+2+3)+…+(1+2+3+…+n)的值。 #include <stdio.h> main() { int n,s,sum=0; scanf("%d",&n); for(int i=1;i<=n;i++) { ____________; for(int j=1;j<=i;j++) _____________; sum+=s; } printf("%d",sum); } 4. 若输入3个整数3,2,1,则下面程序的输出结果是____________。 #include<stdio.h> void sub( n,uu) int n, uu[ ]; { int t; t=uu[n--]; t+=3*uu[n]; n=n++; if(t>=10) { uu[n++]=t/10; uu[n]=t%10;} else uu[n]=t; } main( ) { int i, n, aa[10]={0,0,0,0,0,0} scanf( "%d%d%d",&n,&aa[0],&aa[1]); for(i=1; i<n; i++) sub(i,aa); for(i=0; i<=n; i++) printf("%d",aa[i]); printf("\n"); } 5. 下列程序的输出结果是___________。 int ast(int x,int y,int * cp,int * dp) { *cp=x+y; *dp=x-y; } main() { int a,b,c,d; a=4;b=3; ast(a,b,&c,&d); printf("%d %d\n",c,d); } 五、编程题(本题共2道小题,共20分。) 1. 打印出杨辉三角形(规定打印出10行如下图)        1       1  1       1  2  1       1  3  3  1       1  4  6  4  1       1  5  10 10 5  1  2. 一个数假如恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程找出1000以内的所有完数。 江苏省计算机等级考试 - 学年 第 学期 c程序设计 试卷(参考答案) 题号 一 二 三 四 五 六 七 八 九 总 分 得分 一、选择题(本题共20道小题,共40分。) 1. D 2. A 3. D 4. D 5. D 6. A 7. A 8. D 9. A 10. A 11. A 12. B 13. C 14. C 15. C 16. B 17. B 18. C 19. D 20. A 二、填空题(每空1分,共10分。) 1. 2 , 4 2. 0 , 8 3. 3 , 1 4. 1 5. 字母数字或下划线 6. 3 7. 10,12,410.34 三、判断题(本题共10道小题,共10分。) 1. 对 2. 错 3. 对 4. 对 5. 对 6. 对 7. 错 8. 对 9. 错 10. 错 四、程序填空(本题共5道小题,每题4分,共20分。) 1. 8921 2. 120 3. s=0 , s+=j 4. 2 7 2 1 或2721 5. 7 1 五、编程题(本题共2道小题,共20分。) 1. main() {int i,j; int a[10][10]; printf("\n"); for(i=0;i<10;i++)  {a[i][0]=1;  a[i][i]=1;} for(i=2;i<10;i++) for(j=1;j<i;j++)  a[i][j]=a[i-1][j-1]+a[i-1][j]; for(i=0;i<10;i++)  {for(j=0;j<=i;j++)  printf("%5d",a[i][j]);  printf("\n");  } } 2. main() { static int k[10]; int i,j,n,s; for(j=2;j<1000;j++)  {  n=-1;  s=j;   for(i=1;i   {    if((j%i)==0)    { n++;     s=s-i;     k[n]=i;    }   }  if(s==0)  {  printf("%d is a wanshu",j);  for(i=0;i  printf("%d,",k[i]);  printf("%d\n",k[n]);  } } }
展开阅读全文

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


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 初中其他

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

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

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

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

gongan.png浙公网安备33021202000488号   

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

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

客服