c语言程序设计考卷2(A)AN

合集下载

C语言程序设计试题集及其答案 (2)

C语言程序设计试题集及其答案 (2)

第一章基础知识一.填空1.每个C程序都必须有且仅有一个________ 函数。

2. C语言程序开发到执行通常要经过6个阶段即编辑、预处理、________、链接、加载和执行。

3. 软件是程序,以及______、使用和维护所需要的所有文档。

4. 国标中规定:“计算机程序是按照具体要求产生的适合于计算机处理的_________”。

5. 程序设计语言按照书写形式,以及思维方式的不同一般分为低级语言和________两大类。

6. C语言是由________组成的。

7. C语言的函数可分为主函数main、标准库函数和_________。

8. 一个函数是由两部分组成的,即:________和函数体。

9. 编译是将C语言所编写的源程序________成机器代码,也称为建立目标代码程序的过程。

10.程序是由某种程序设计语言编制出来,体现了编程者的控制思想和对计算机执行操作的要求。

不同的任务功能,就会需求不同的软件程序,如:控制计算机本身软硬件协调工作,并使其设备充分发挥效力,方便用户使用的系统软件程序,称为操作系统;而为办公自动化(OA)、管理信息系统(MIS)、人工智能、电子商务、网络互联等等应用而开发的软件程序,统称为_________。

11. 机器语言是以__________形式表示的机器基本指令的集合,是计算机系统唯一不需要翻译可以直接识别和执行的程序设计语言。

12. 与机器语言相比,使用汇编语言来编写程序可以用_______来表示指令的操作码和操作对象,也可以用标号和符号来代替地址、常量和变量。

13.在编译程序之前,凡以____开头的代码行都先由预处理程序预处理。

14. C程序的执行均是由执行_________开始。

15.函数体即为包含在{}内的部分。

它分为________和为完成功能任务由若干个C 语句组成的执行部分。

16.C语言程序中一条简单语句是以________字符作为结束符的。

17.C语言是结构化、________的程序设计语言。

《C语言程序设计(第2版)》试题库 期末试卷二

《C语言程序设计(第2版)》试题库 期末试卷二

期末试卷二一、单项选择题(每题1分,共45分)1.下列变量名中,哪个是合法的()A.C&D B.string$C.char D._2132.C语言程序的基本单位是()A.程序行B.语句C.函数D.字符3.表达式a+b%3的值是()(设a=13.6,b=10)A.14.6 B.15C.15.9 D.16.64.保存一个C语言源程序的快捷键是()A.F1 B.F2 C.F3 D.F45.字符串”tc20\nlib\101\\\’”含有多少个字符( )A.10 B.11 C.12 D.136.Putchar()函数可以向终端输出一个()A. 整型变量或表达式值B. 实型变量值C. 字符串D. 字符或字符型变量值7.以下所列的C语言常量中,错误的是()A.0xFF B.2*5 C.2.5 D.04568.下列不合法的C语言赋值表达式是()A.a+=b-c B.a+b=cC.a=b=c=1 D.a*=++b+c9.下列程序运行后的输出结果是()main(){ int y=3,x=3;printf(“%d\n”,++x+y++);}A.5 B.8 C.7 D.610.若已正确定义x和y为double类型,则表达式x=1,y=x+3/2的值是()A.1 B.2 C.2.0 D.2.511.在C语言中运算对象必须是整型的运算符是()A.% B./ C.= D.*12.若有以下定义:char a; int b; float c;则表达式a*b-c值的类型为()A.int B.char C.double D.float13.下列正确的C语言赋值语句的是()A.x=3,y=5 B.a=b=1 C.i++; D.y=int(x)14.有如下程序段:int a1,a2;char c1,c2;scanf("%d%c%d%c",& a1,&c1,&a2,&c2);若要求a1、a2、c1、c2的值分别为10、20、A、B,正确的数据输入是()(<CR>表示回车) A.10A 20B<CR> B.10 A 20 B<CR>C.10 A20B<CR> D.10A20 B<CR>15.有如下程序,输入数据:12345m678<CR>后,x的值是()#include <stdio.h>main( ){ int x; float y;scanf("%3d%f", &x,&y);}A.12345 B.123 C.45 D.34516.有如下程序,对应正确的数据输入是()main( ){ float a, b;scanf("%f%f", &a,&b);printf("a=%f,b=%f\n",a,b);}A.2.04<CR> B.2.04,5.67<CR>5.67<CR>C.a=2.04,b=5.67<CR> D.2.045.67<CR>17.有输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,& c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式是()A.132<CR> B.1,3,2<CR>C.a=1,b=3,c=2<CR> D.a=1 b=3 c=2<CR>18.已知字母A的ASCII码是65,以下程序的执行结果是()main( ){char c1='A', c2='Y';printf("%d,%d\n", c1, c2);}A.A,Y B.65,65 C.65,90 D.65,8919.以下程序的执行结果是()main( ){ int a=2,b=5;printf("a=%d,b=%d\n", a, b);}A.a=%2,b=%5 B.a=2,b=5C.a=%%d,b=%%d D.a=%d,b=%d20.最适合解决选择结构“若x>0, 则y=1;否则y=0;”的语句是()A.switch B.嵌套的if-else C.if-else D.if21.设整型变量x,y和z的值依次为3,2和1,则下列程序段的输出结果是()if(x>y)x=y;if(x>z)x=z;printf(″%d,%d,%d\n″,x,y,z);A.1,1,1 B.1,2,1 C.1,2,3 D.3,2,122.执行下列程序段后,变量x的值是()int a=8,b=7,c=6,x=1;if(a>6) if(b>7) if(c>8) x=2;else x=3;A.0 B.1 C.2 D.323.运行下列程序的输出结果是()main(){ int a1=1,a2=1,a3=1,a4=1;if (a1>0) a3++;if (a1>a2) a3--;else if (a1= =a2) a3++;else a3--;printf(″%d,%d,%d,%d\n″,a4,a3,a2,a1);}A.1,1,1,1 B.1,2,3,4C.4,3,2,1 D.1,3,1,124.执行下列语句后,整型变量x的值是()switch (x=1) { case 0:x=10;break;case 1:switch (x=2) {case1:x=20;break;case2:x=30;}}A.30 B.20 C.10 D.125.以下说法中正确的是()A.continue和break只能用在循环体中B.continue只能用在循环体中C.break只能用在循环体中D.continue只能用在循环体外26.执行下列程序段的输出是()m=8;while (m>=5) m--,--m,n=m--- m;pritnf (″%d,%d″,m,n);A.2, 0 B.5,-1 C.5,0 D.5,127.设整型变量x的值为1,执行下列循环语句后,变量x 的值是()do x++; while (x++<2);A.2 B.3 C.4 D.528.执行下列语句后,变量k的值是()for (k=0;k<=5;k++) do k++;while (k<5);A.5 B.6 C.7 D.829.下列程序段中,不能使变量m的值等于10的程序段是()A.m=0; B.do m=0;while (m++<9); while (m++<10);C.for (m=8;m<10;m++); D.m=0;L:m++;if (m<10)goto L;30.下列语句中不正确的是()A.static int a[5]={1,2,3,4,5};B.static int a[5]={1,2,3};C.static int a[]={0,0,0,0,0};D.static int a[5]={0*5};31.说明:int a[10];则对a数组元素的正确引用是()A.a[10] B.a[3.5] C.a(5) D.a[10-5] 32.下面程序的运行结果是()main(){ int a[6],i;for(i=1;i<6;i++){a[i]=9*(i-2+4*(i>3))%5;printf(“%2d”,a[i]);}}A.-4 0 4 0 4 B.-4 0 4 0 3C.-4 0 4 4 3 D.-4 0 4 4 033.以下程序的输出结果是()main(){ int n[2]={0},i,j,k=2;for(i=0;i<k;i++)for(j=0;j<k;j++)n[j]=n[i]+1;printf(“%d\n”,n[1]);}A.1 B.3 C.2 D.434.下面程序的输出结果是()main(){char s[]=”cat and mouse”;int j=0;while(s[j]!=’\0’) ++j;printf(“%d\n”,j);}A.11 B.0 C.12 D.1335.下面程序的运行结果是()#include <stdio.h>main(){char a[10]=”student”;char b[10]=”boy”;int n;n=strlen(a)+strlen(b);printf(“%d”,n);}A.7 B.10 C.12 D.2036.以下程序的输出结果是()void fun(int a,int b,int c){ a=456;b=567;c=678;}main(){ int x=10,y=20,z=30;fun(x,y,z);printf("%d,%d,%d\n",x,y,z);}A.30,20,10 B.10,20,30C.456,567,678 D.678,567,45637.以下说法中正确的是()A.C语言程序总是从第一个定义的函数开始执行。

c语言程序设计试卷及答案(A)

c语言程序设计试卷及答案(A)

《C语言程序设计》2013至2014 学年度第 1 学期期末(A)卷(考生注意:考试时间为120分钟。

答案须写在答题纸上,并注明题号,考试结束后将试卷连同答题纸一齐交)一、单项选择题(每小题2分,共40分)1.在一个C语言程序中,有并且只能有一个( )函数。

A. main函数B.自定义函数C.外部函数D.内部函数2.一个C语言程序,总是从()函数开始执行。

A. main函数B.自定义函数C.外部函数D.内部函数3.下列标识符中,不能用作变量名的是( )。

A. _1234_B. _1_2C. int_2_D. 2_int_4.下列字符常量不合法的是( )。

A. ‘2’B. ‘\t’C. ‘ab’D. ‘ \n’5.执行以下语句后的输出结果为( )。

int x; float y; y=3.6; x=(int)y+10; printf(“x=%d,y=%f”,x,y);A. x=13.6,y=3.600000B. x=13,y=3.600000C. x=13,y=3D. x=13,y=3.66.以下哪种变量类型在C语言中不存在( )。

A. 整型变量B.实型变量C. 字符串变量D.字符变量7.设m=10,n=4,则赋值运算m%=n+1执行后m的值是( )。

A. 1B. 2C. 3D. 08.下面语句执行后输出结果为( )。

int x=10,y=3,z; printf(“%d\n”,z=(x%y,x/y));}A. 0B.1C. 3D. 49. 下面语句执行后输出结果为( )。

int x=10,y=10,z=10; printf(“%d,%d,%d ”,x++,--y,++z);}A. 10,10,10B. 10,9,11C. 9,10,11D. 11,10,910.以下选项中不是C语句的是( )。

A. {int i; i++; printf("%d\n", i); }B. ;C. a=5,c=10D. { ; }11.以下程序的输出结果是( )。

《C语言程序设计》复习题(2)-填空题

《C语言程序设计》复习题(2)-填空题

{ unsigned short x=65536; int y;
printf(“%d\n”, y=x);
} 50. 若有 int x=11; 则表达式 1/3*x++的值为 0 。
51. 执行语句 printf(“%d” , (a=2)&&(b=-2) ); 后的 输出是 1 。
52. 执行下列程序段后, 变量 i 的值是 16 。 int i=10 ; switch (i) { case 9: i+=0; case 10: i+=1; case 11: i+=2; default: i+=3; }
值为 -2 。 27. C语言中 标号 标识符无值、无类型且不需要声
明便可直接使用。 28. 若已声明: int x=1 , z=1 , y=1 , k ;则执行表达式
k=x++||++y&&++z后,变量k,x,y,z的值是 1,2,1,1 。
最小数是: 1000000000000000
29. 若用八进制常量表示C中的int型常1量0 (0160bits0)0
float x=25.0;
fwrite(&x,sizeof(float),1,fp);
48. 若有定义: int b=17; float a=4.5, c=6.5;
则表达式 a+(int)(b/3*(int)(a+c)/2)%4的值为 49. 下列程序执行后的输出结果是 0 。
7.5 。
main( )
是 for 。
35. 若一个函数不需要形式参数 , 则在定义函数时, 应使形式参数表为空或放置一个 void 。

全国计算机等级考试二级C语言程序设计真题精选3(含答案)

全国计算机等级考试二级C语言程序设计真题精选3(含答案)

全国计算机等级考试二级C语言程序设计真题精选3一、单项选择题1.下列关于C语言文件的叙述中正确的是()。

A.文件由一系列数据依次排列组成,只能构成二进制文件B.文件由结构序列组成,可以构成二进制文件或文本文件C.文件由数据序列组成,可以构成二进制文件或文本文件√D.文件由字符序列组成,其类型只能是文本文件解析:C语言将文件看作是一个字符(字节)的序列,即由一个一个字符(字节)数据顺序组成。

根据数据的组成形式,可将文件分为两种:①ASCII文件,又称文本(text)文件,它的每一个字节可放一个ASCII码,代表一个字符;②二进制文件,是把内存中的数据按其在内存中的存储形式原样输出到磁盘上存放。

所以C文件就是一个字节流或一个二进制流。

2.有以下程序:#includ<stdio.h>main()inm=1,n=2,*p=&m,*q=&n,*r; r=p,p=q;q=r; printf("%d,%d,%d,%",m,n,*p,*q);}程序运行后的输出结果是()。

A.1,2,1,2B.1,2.2,1 √C.2,1,2,1D.2,1.1,2解析:本题定义了两个整型变量,然后用两个指针分别指向这两个整型变量,接着对指针进行交换,那么原来指向第一个整数的指针将指向第二个整数,原来指向第二个整数的指针将指向第一个整数。

3.有以下程序:#includ<stdio.h>#include<string.h>strucAina;chab[10];doublc;};strucf (struct);main()struca={1001,"ZhangDa",1098.0}; a=f(a);printf ("%d,%s,%6.1",a.a,a.b,a.c);}strucf(struct)t.a=1002;strcpy(t.b,"ChangRong");t.c=1202.0;returt;}程序运行后的输出结果是()。

计算机二级《C语言程序设计》全真试题

计算机二级《C语言程序设计》全真试题

计算机二级《C语言程序设计》全真试题计算机二级《C语言程序设计》全真试题C语言是一种计算机程序设计语言。

它既有高级语言的特点,又具有汇编语言的特点。

下面是店铺为大家搜索整理了关于计算机二级《C语言程序设计》全真试题,欢迎参考练习,希望对你有所帮助。

想了解更多相关信息请持续关注我们店铺!一、选择题(每小题1分,共25分)1下列程序的输出结果是( )。

int a[5]={2,4,6,8,10},*P,* *k;p=a; k=&p;printf("%d",*(p++));printf("%d\n",* *k); A. 4 4B. 2 2C. 2 4D. 4 6本题共1分,参考答案:C2若已定义:int a[9], *p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式为( )。

A. p+1B. a+1C. a++D. ++p 本题共1分,参考答案:C3下面的变量说明中__________是正确的。

A. char:a, b, c;B. char a; b; c;C. char a, b, c;D. char a, b, c本题共1分,参考答案:C4定义如下变量和数组:inti; int x[3][3]={1,2,3,4,5,6,7,8,9};则语句for(i=0;i<3;i++) printf("%d ",x[i][2-i]); 的输出结果是( )。

A. 1 5 9B. 1 4 7C. 3 5 7D. 3 6 9本题共1分,参考答案:C5设A为存放(短)整型的一维数组,如果A的首地址为P,那么A 中第i个元素的地址为( )。

A. P+i*2B. P+(i-1)*2C. P+(i-1)D. P+i 本题共1分,参考答案:B6以下对二维数组a进行正确初始化的是()A. int a[2][3]={{1,2},{3,4},{5,6}};B. int a[ ][3]={1,2,3,4,5,6};C. int a[2][ ]={1,2,3,4,5,6};D. int a[2][ ]={{1,2},{3,4}};本题共1分,参考答案:B7main( ){ int n; ( n=6*4,n+6),n*2; printf(“n=%d\n”,n); }此程序的输出结果是______________.A. 30B. 24C. 60D. 48本题共1分,参考答案:B8C语言中以只读方式打开一个文件应选择_______________参数。

C语言程序设计模拟试卷(2)

C语言程序设计模拟试卷(2)

C语⾔程序设计模拟试卷(2)模拟试卷⼀⼀、选择题(每题1分,共15分) 在每⼩题列出的四个选项中只有⼀个是符合题⽬要求的,请在正确答案前点选,错选或未选均不得分。

1. 以下选项中不合法的⽤户标识是:正确答案A. _123B. printfC. A$D. Dim2. 在C 语⾔中,char 型数据在内存中的存储形式是:正确答案A. 补码B. 反码C. 原码D. ASCII 码正确答案:D3. 设x,y,z 为int 型变量,且x=3,y=4,z=5 ,则下⾯表达式中值为0 的是:正确答案A. 'x'&&'y'B. !((xC. x||y+z&&y-zD. x<=y正确答案:B4. 若有定义:int a=2,b=4,c; 执⾏语句c=a/b+2.6 ;后,c 的值为:正确答案A. 2.6D. 2正确答案:D5. 设a 为整型变量,不能确定表达数学关系10正确答案A. 10B. a==11|| a==12|| a==13|| a==14C. a>10&&a<15D. !(a<=10)&&!(a>=15)正确答案:C6. 若i 、j 已定义为int 型,则以下程序段中语句printf( “ %d ” ,i*j); 的执⾏次数是:for (i=3;i>0;i-- )for (j=0;j<4;j++ )printf( “ %d ” ,i*j);正确答案A. 12B. 15C. 16D. 20正确答案:A7. 若有输⼊语句“ scanf( "%d%d%d",&x,&y,&z); ”,则不能使x值为5,y 值为6,z值为7的输⼊是:正确答案A. 5 ,6 ,7< 回车>B. 5 6 7< 回车>C. 5 6 < 回车> 7< 回车>D. 5< 回车> ,6< 回车> ,7< 回车>正确答案:A8.执⾏以下程序段后,x ,y 和z 的值分别是:int x=10,y=20,z=30;if(x>y) z=x; x=y; y=z;正确答案:B9. 以下程序段x = -1;do{ x=x*x;} while(!x); 正确的说法是:正确答案A. 死循环B. 循环⼀次C. 循环两次D. 有语法错正确答案:B10. 以下正确的函数声明形式是:正确答案A. double fun(int x ,int y)B. double fun(int x ;int y)C. double fun(int x ,int y) ;D. double fun(int x ,y) ;正确答案:C11.若有定义char ch[8] ,则以下表达式中不能代表数组元素ch[1] 的地址是:正确答案A. &ch[0]+1B. &ch[1]C. &ch[0]++D. ch+1正确答案:C12. 若有初始化语句“ int a[5]={1,2,3,4,5}; ”,值为4 的表达式是:正确答案:C13. 若已有以下函数定义:float fun(float a, int b){int c;c=(int)a%b;return c;}则主调函数中语句“ printf("%f",fun(fun(fun(34,7),4),3)); ”的输出结果是:正确答案A. 2.000000B. 因参数类型与形参类型不⼀致,函数调⽤产⽣错误C. 2D. 因变量c 的类型与fun 函数的返回值类型不符,故输出值为随机值正确答案:A14. 已知:int a[]={1,2,3,4,5,6,7,8,9,10,11,12},*p=a+2 ;则值为3 的表达式是:正确答案A. (*p)++B. *p++C. *++pD. ++*p正确答案:B15. 以下可作为函数fopen 中第⼀个参数的正确格式是:正确答案A. c:\user\file.txtB. "c:\user\file.txt"C. "c:\\user\\file.txt"⼆、填空题(共10题)1. 字符串存储时,末尾被系统⾃动加上字符。

《C语言程序设计》期末考试试卷(A卷)

《C语言程序设计》期末考试试卷(A卷)

《C语言程序设计》期末考试试卷(A卷)一、单项选择题(本大题共20题,每题2 分,共40分)1、以下不是C语言的特点的是。

A、C语言简洁、紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件进行操作D、C语言移植性好2、以下不正确的C语言标识符是A、ABCB、abcC、a_bcD、ab。

c3、一个C语言程序是由。

A、一个主程序和若干子程序组成B、函数组成C、若干过程组成D、若干子程序组成4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为A、intB、floatC、doubleD、不确定6、在C语言中,char型数据在内存中的存储形式是。

A、补码B、反码C、源码D、ASCII码7、有如下程序,输入数据:12345M678<cR>后(〈CR>表示回车),x的值是。

#include<stdio。

h>main(){int x;float y;scanf(”%3d%f”,&x,&y);}A、12345B、123C、45D、3458、若有以下定义int a,b; float x,则正确的赋值语句是。

A、a=1,b=2B、b++;C、a=b=5D、b=int(x);9、以下程序的执行结果是。

#include<stdio。

h〉{int i=10,j=10;printf(”%d,%d\n”,++i,j-—);}A、11,10B、9,10C、11,9D、10,910、巳知字母A的ASCII码是65,以下程序的执行结果是。

#include<stdio.h〉main(){char c1=’A’,c2='Y';printf("%d,%d\n”,c1,c2);A、A,YB、65,65C、65,90D、65,8911、下列运算符中优先级最高的是 .A、<B、十C、%D、!=12、设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是。

C语言程序设计(参考试卷+答案) (2)

C语言程序设计(参考试卷+答案) (2)

题号 一 二 三 四 五 六 总分 得分考试形式:■闭卷 □开卷 ■笔试 □机试 答卷要求:试卷答案需填写至答题卡内一、单项选择题(每小题 2 分,共 30 分)1 2 3 4 5 6 7 8 9 10 D C A B D B B B D A 11 12 13 14 15 BBBCD1、关于C 语言的叙述中,不正确的是(D )。

A) C 程序可由一个或多个函数组成 B) C 程序必须包含一个main()函数 C) C 程序的基本组成单位是函数D) 注释说明只能位于一条语句的后面2、C 语言源程序文件经过C 编译程序编译连接之后生成一个后缀为( C )的文件。

A) .cB) .objC) a#10 D) Pad C) .exe D) .basC) a#10 D) Pad3、若有定义:float x=3.5; int z=8; 则表达式x+z%3/4的值是( A ) A) 3.5B) 3.75C) 3D) 44、下列标识符中,不合法的用户标识符为( B )。

A) _intB) a#10C) abcD) Pad5、下面运算符优先级最低的是(D )。

A) !B) >=C) %D) +=6、若变量已正确定义,执行语句scanf (“%d,%d ”,&a, &b);若要求a 、b 的值分别为10和20,正确的数据输6入是( B ) A) 10 20B) 10,20C) a=10, b=20D) 10;207、对于整型变量x ,下述计语句与赋值句:x=x%2==0?1:0;不等价的是( B ) A) if (x%2!=0)x=0; else x=1; B) if (x%2)x=1; else x=0; C) if (x%2==0)x=1; else x=0; D) if (x%2==1)x=0; else x=1;8、以下程序运行后,循环体运行的次数为( B )int i=10,x; for( ;i<10;i++) x=x+i; A) 10B) 0C) 1D) 无限9、若有定义int a[2][3];则对数组元素的非法引用是( D ) A) a[0][1/2]B) a[1][1]C) a[4-4][0]D) a[0][3]10、在C 程序中,若对函数类型未加说明,则函数的隐含类型为(A )。

《c语言程序设计》2016-2017学年第二学期期末试卷(A卷)

《c语言程序设计》2016-2017学年第二学期期末试卷(A卷)

2016-2017学年第二学期《C语言程序设计》期末试卷(A)(考试对象:能源、材料、环境等专业2016级)学院专业班级学号姓名成绩一、选择题(用铅笔把选中的方格涂黑40×1=40分)1A B C D2A B C D3A B C D4A B C D5A B C D6A B C D7A B C D8A B C D9A B C D10A B C D11A B C D12A B C D 13A B C D14A B C D15A B C D16A B C D 17A B C D18A B C D19A B C D20A B C D 21A B C D22A B C D23A B C D24A B C D 25A B C D26A B C D27A B C D28A B C D 29A B C D30A B C D31A B C D32A B C D 33A B C D34A B C D35A B C D36A B C D 37A B C D38A B C D39A B C D40A B C D二、填空题(每空占一行,每行写一个答案20×2=40分)1. 2.3. 4.5. 6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.三、编程题(每小题10分,共20分)1.编写子函数,以判断一个整数n是否为素数,如果n是素数,则返回整数1;如果n不是素数,则返回整数0;并在主函数中调用该函数以统计0到200之间的素数的个数。

2.用起泡法排序实现任意输入10个数按由小到大排序。

一、选择题(用铅笔把选中的方格涂黑40×1=40分)1.下列语句有语法错误的是(1)。

A.printf("%d",0xAB);B.printf("%f",3.45E2.5);C.printf("%d",037);D.printf("%c",'\t');2.设有以下程序段,则值为6的表达式是(2)。

C语言程序设计模拟试题2(附答案)

C语言程序设计模拟试题2(附答案)

《C语言程序设计》模拟试卷二一、填空题。

(每空2分,共30分)1.设有变量说明语句int x=1,y=2;则执行下述printf语句的输出结果是___1.000000________。

printf("%f\n",1.0+x/y);2.执行下述程序#include <stdio.h>main(){int x,y;scanf("%2d%*2s%1d",&x,&y);printf("%d\n",x+y);}若从键盘输入12345671则程序的输出结果是__17______。

3.以下程序的功能是:从键盘上输入若干名学生的成绩(百分制,可带小数,以输入负数或0为结束标志),统计并输出最高成绩和最低成绩。

请填空。

#include <stdio.h>main(){float x,amax,amin;scanf("%f",&x);amax=x;amin=x;while ( X>0&&X<=100 ){if (x>amax)amax=x;else if (x<amin)amin=x;scanf("%f”,&x);}printf("\namax=%f\namin=%f\n",amax,amin);}4.设n 是整型变量,且已具有某正整数值。

根据下述数学式1114131312121+⋅++⋅+⋅+n n Λ求s 的值并输出。

可编写如下之程序段实现之。

请填空。

int k;double s,d;s=0.0;d=1.0;K=0;do{s=s+d;_k++ _________;d=1.0/(k*(k+1));} while (k<=n);printf("%f\n",s);5.执行下述程序的输出结果是_-3 -4 0 4 4 3___ ____。

C语言程序设计考试试题(附答案)

C语言程序设计考试试题(附答案)

C语言程序设计考试试题(附答案) C语言程序设计考试试题(附答案)一、选择题(共30题,每题2分,共60分)1. 下列哪个是C语言关键字?A. printB. variableC. whileD. calculate答案:C2. 在C语言中,下列哪个是合法的变量名?A. 1_helloB. _worldC. v-ariableD. continue答案:B3. 下列哪个是正确的C语言注释方式?A. // This is a commentB. # This is a commentC. /* This is a comment */D. <!-- This is a comment -->答案:C4. 下列哪个是正确的C语言函数定义格式?A. void addNumbers()B. addNumbers()C. function addNumbers()D. int addNumbers()答案:D5. 执行下面的C语言代码,输出的结果是什么?```c#include <stdio.h>int main(){int x = 5;int y = 2;float result = x / y;printf("%f", result);return 0;}```A. 2.5B. 2C. 2.000000D. 5答案:B6. 在C语言中,下列哪个是正确的if语句格式?A. if (x > 4) thenB. if (x > 4) { }C. if x > 4D. if (x > 4)答案:D7. 下列哪个是C语言中的逻辑运算符?A. ++B. &&C. %D. =答案:B8. 在C语言中,下列哪个是正确的for循环格式?A. for (x = 0; x < 5)B. for {x = 0; x < 5; x++}C. for (int x = 0; x < 5; x++)D. for (x = 0; x < 5;)答案:C9. 下列哪个是C语言中的自增运算符?A. ++B. +=C. =D. --答案:A10. 执行下面的C语言代码,输出的结果是什么?```c#include <stdio.h>int main(){int x = 2;x *= 3 + 4;printf("%d", x);return 0;}```A. 14B. 20C. 21D. 22答案:C11. 在C语言中,下列哪个是正确的switch语句格式?A. switch (x) {case 1;case 2;break;default;break;}B. switch (x) {case 1:case 2:break;default:break;}C. switch (x) case 1:case 2:break;default:break; D. switch (x) { case 1,case 2,break,default,break,}答案:B12. 下列哪个是C语言中的逗号运算符?A. &&B. !C. ,D. |答案:C13. 在C语言中,下列哪个是正确的数组声明?A. array[5]B. [5] arrayC. array[] = [5]D. int array[5]答案:D14. 执行下面的C语言代码,输出的结果是什么?```c#include <stdio.h>int main(){int i;for (i = 0; i <= 5; i++){printf("%d ", i);if (i == 3)continue;}return 0;}```A. 0 1 2 3 4 5B. 0 1 2 3 4C. 0 1 2 3 4 5 6D. 0 1 2 4 5答案:A15. 下列哪个是C语言中的求余运算符?A. /B. +C. %D. *答案:C16. 执行下面的C语言代码,输出的结果是什么?```c#include <stdio.h>int main(){int x = 4;int y = 5;if (x > 2 || y < 10){printf("True");}else{printf("False");}return 0;}```A. TrueB. FalseC. x > 2 || y < 10D. 4 5答案:A17. 在C语言中,下列哪个是正确的do-while循环格式?A. do (x < 5)B. do {x < 5} whileC. do {x < 5} while (x++)D. do {x < 5;} while (x < 5)答案:D18. 下列哪个是C语言中的逻辑非运算符?A. !B. &&C. <D. =答案:A19. 执行下面的C语言代码,输出的结果是什么?```c#include <stdio.h>int main(){int i;for (i = 1; i <= 10; i++){if (i % 2 == 0)continue;printf("%d ", i);}return 0;}```A. 1 2 3 4 5 6 7 8 9 10B. 1 3 5 7 9C. 2 4 6 8 10D. 1 2 4 8答案:B20. 下列哪个是C语言中的减法运算符?B. +C. -D. *答案:C21. 在C语言中,下列哪个是正确的数组初始化方式?A. int array[5] = {1, 2, 3}B. array[5] = {1, 2, 3}C. int array[] = {1, 2, 3}D. int array[5] = {1, 2, 3,}答案:C22. 执行下面的C语言代码,输出的结果是什么?```c#include <stdio.h>int main(){int x = 5;int y = 7;if (x > 2 && y < 10)printf("True");}else{printf("False");}return 0;}```A. TrueB. FalseC. x > 2 & y < 10D. x > 2 || y < 10答案:A23. 下列哪个是C语言中的除法运算符?A. /B. +C. %答案:A24. 执行下面的C语言代码,输出的结果是什么?```c#include <stdio.h>int main(){int x = 7;int y = (x > 5) ? 10 : 5;printf("%d", y);return 0;}```A. 7B. 5C. 10D. 15答案:C25. 在C语言中,下列哪个是正确的while循环格式?A. while (x < 5;)B. while {x < 5;}C. while (x < 5)D. while {x < 5}答案:C26. 下列哪个是C语言中的位运算符?A. ||B. &&C. !D. &答案:D27. 执行下面的C语言代码,输出的结果是什么?```c#include <stdio.h>int main(){int x = 2;int y = 3;if (x = y){printf("Equal");}else{printf("Not equal");}return 0;}```A. EqualB. Not equalC. 2D. 3答案:A28. 在C语言中,下列哪个是正确的goto语句格式?A. goto label;B. goto (label);C. gote labelD. go to label答案:A29. 下列哪个是C语言中的加法运算符?A. /B. +C. %D. *答案:B30. 执行下面的C语言代码,输出的结果是什么?```c#include <stdio.h>int main(){int x = 5;int y = 2;int result = x % y;printf("%d", result);return 0;}A. 2B. 1C. 3D. 0答案:B二、编程题31. 编写一个C语言程序,在屏幕上输出从1到100的所有偶数。

C语言测试题2

C语言测试题2
16、在C语言中,下列对于字符数组的定义与赋值正确的是().(选择二项)
A、char name[4]="ACCP";B、char name[4]={'A','C','C','P'};
C、char name[]="ACCP";D、char name={'A','C','C','P'};
17、有如下一组数据:25,15,5,10,51为了把该组织数据按升序排序,如果采用冒泡排序法,需要比较()次(选择一项)
2、定义函数fun,接收用户输入的10个数字,筛选出其中的奇数和偶数,分别用数组存放,将奇数数组按从小到大排序后输出,将偶数数组按从大到小排序后输出
如:输入45 89 52 13 66 102 99 11 73 100
分别放入数组a[]:45 89 13 99 11 73
b[]:52 66 102 100
{
switch(n%3)
{
case 2:
putchar('2');
case 1:
putchar('i');
break;
case 0:
putchar('H');
}
n++;
}
}
A)Hi2Hi2HiB)Hi2C)Hi2iHi2iD)Hi2iHi2iHi
13、已知下列C语言代码的输出结果是2008年是闰年,已知闰年的判定规则是:能被4整除但不能被100整除的年份,或能被400整除的年份。请问在空白处可以填写的代码是()(选择一项)
18、A、10 B、15 C、9 D、11

c语言二级程序设计试题及答案

c语言二级程序设计试题及答案

c语言二级程序设计试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述中,错误的是:A. C语言是一种高级语言B. C语言是面向对象的程序设计语言C. C语言具有丰富的数据类型D. C语言具有结构化的特点答案:B2. 在C语言中,用于定义一个整型数组的语句是:A. int a[10];B. int a[];C. int a(10);D. int a=10;答案:A3. 下列哪个选项是正确的C语言函数声明?A. int function(int a, int b);B. int function(int, int);C. int function(int a);D. int function();答案:B4. 在C语言中,用于输入一个字符的函数是:A. scanf()B. printf()C. getchar()D. puts()答案:C5. 下列哪个选项不是C语言中的控制语句?A. ifB. switchC. forD. do-while答案:B6. 在C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A7. 下列哪个选项是正确的C语言指针声明?A. int *p;B. int *p[];C. int (*p)[];D. int *p[10];答案:A8. 在C语言中,用于定义一个枚举类型的关键字是:A. enumB. typedefC. structD. union答案:A9. 下列哪个选项是正确的C语言文件操作函数?A. fopen()B. fclose()C. fprintf()D. All of the above答案:D10. 在C语言中,用于定义一个联合体的关键字是:A. unionB. structC. typedefD. enum答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义一个浮点型变量的关键字是________。

2021年山东省济宁市全国计算机等级考试C语言程序设计真题二卷(含答案)

2021年山东省济宁市全国计算机等级考试C语言程序设计真题二卷(含答案)

2021年山东省济宁市全国计算机等级考试C语言程序设计真题二卷(含答案) 学校:________ 班级:________ 姓名:________ 考号:________一、单选题(12题)1. 有以下程序:#include <stdio.h>point ( char * p) { p + = 3; }main( ) char b[4] = {'a','b','c','d'} , *p=b; point(p); printf( "% c \n" , * p);A.aB.bC.cD.d2.第24题下面程序段的运行结果是char *p="abcdefgh";p+=3;printf("%d\n",strlen(strcpy(p,"ABCD")));A.8B.12C.4D.73.有以下程序:#include <stdio.h>#include <string.h>main(){char str[ ][ 10]={“One”, “Three”, “Five”}, *p=str[0];printf(“%s,”, p+10);printf(“%d\n”, strlen(p+=10));}程序运行后的输出结果是()。

A.Three,4B.出错C.Three,5D.Five,54.有以下程序:#include<stdio.h>main(){int i, j, m=1;for(i=1; i<3; i++){for(j=3; j>0; j--){ if(i*j>3)break; m*=i*j; } }printf(“m=%d\n”, m); }程序运行后的输出结果是( )A.m=4B.m=2C.m=6D.m=55.若有以下程序则程序的输出结果是A.3B.7C.6D.106.7.下列说法中错误的是A.A.只能在循环体内使用break语句B.在循环体内使用break语句可以使流程跳出本层循环体,从而提前结束本层循环C.在while和do…while循环中,continue语句并没有使整个循环终止D.continue的作用是结束本次循环,即跳过本次循环体中余下尚未执行的语句,接着再一次进行循环判断8.有以下程序:#include <stdio.h>main(){int k=5;while(--k)printf(“%d”,k-=3);printf(“\n”);}程序运行后的输出结果是()。

C语言程序设计试卷含答案

C语言程序设计试卷含答案

C语言程序设计试卷含答案一、选择题(共20题,每题2分,共40分。

下面每题后面用小括号内标注了正确答案)1. 下列关键字中,用于定义变量的是(A)A. intB. ifC. whileD. for2. 变量的作用域是指变量的(C)A. 大小B. 类型C. 可访问范围D. 值3. 下列语句中,用于输出字符的是(B)A. scanfB. printfC. inputD. output4. 已知整型变量a和b,那么a += b; 等价于(D)A. a = a + b;B. a -= b;C. a = a - b;D. a = a + b;5. 在C语言中,用于表示“不等于”的运算符是(C)A. =B. ==C. !=D. >=6. 下面哪个for循环语句是正确的(A)A. for(int i=0; i<10; i++)B. for(int i<10; i++)C. for(int i=0; i<10)D. for(i=0; i<10; i++)7. 下列选项中,表示“或”运算符的是(D)A. &B. &&C. |D. ||8. 在C语言中,用于声明宏定义的关键字是(B)A. defineB. #defineC. constD. int9. 如果要判断一个整数是否为负数,正确的if条件语句是(C)A. if(n > 0)B. if(n => 0)C. if(n < 0)D. if(n <= 0)10. 下列哪个不是C语言的基本数据类型(D)A. intB. floatC. charD. string11. 下列关键字中,用于定义函数的是(C)A. mainB. includeC. voidD. for12. 在C语言中,表示“或者”的条件语句是(B)A. ifB. else ifC. switchD. while13. C语言中的“++”运算符表示(A)A. 自增B. 自减C. 相加D. 相减14. 下列哪个语句用于在C语言中声明字符类型的变量(C)A. String name;B. var name;C. char name;D. character name;15. 下列哪个不是C语言的关键字(D)A. enumB. longC. doubleD. true16. 在C语言中,用于跳出当前循环并继续执行下一次循环的关键字是(D)A. exitB. breakC. endD. continue17. 下列哪个函数用于从标准输入读取一个整数(A)A. scanfB. printfC. getsD. puts18. 在C语言中,用于声明一个指针变量的关键字是(A)A. int*B. pointC. newD. pointer19. 下列哪个运算符用于获取变量在内存中的地址(B)A. &B. *C. #D. %20. 下列哪个函数调用可以输出字符串(A)A. printf("Hello World!");B. scanf("Hello World!");C. gets("Hello World!");D. puts("Hello World!");二、填空题(共5题,每题4分,共20分。

C语言程序设计考试试卷二(A卷)

C语言程序设计考试试卷二(A卷)

C语言程序设计考试试卷二(A卷)一、选择题((1)~(10)每小题1分,(11)~(40)每小题2分,共70分。

下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。

请将正确选项填在答题卡相应位置上,答在试卷上不得分。

)(1)可在C程序中用作用户标识符的一组标识符是A) and B)Date C)Hi D)case_2007 y-m-d Dr.Tom Bigl(2)设有条件表达式:(EXP)?i++:j--,则以下表达式中与(EXP)完全等价的是A)(EXP==0) B)(EXP!=0) C)(EXP==1) D)(EXP!=1)(3)若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是A)函数的实参和其对应的形参共占同一存储单元B)形参只是形式上的存在,不占用具体存储单元C)同名的实参和形参占用同一存储单元D)函数的实参和形参分别占用不同的存储单元(4)已知字符'A'的ASCII代码值是65,字符变量c1的值是'A',c2的值是'D'。

执行语句printf("%d,%d" ,c1,c2-2);后,输出结果是A)A,B B)A,68 C)65,66 D)65,68(5)以下叙述中错误的是A)改变函数形参的值,不会改变对应实参的值B)函数可以返回地址值C)可以给指针变量赋一个整数作为地址值D)当在程序的开头包含头文件stdio.h时,可以给指针变量赋NULL(6) 以下正确的字符串常量是A) "\\\" B)'abc' C)Olympic Games D)""(7)设有定义:char p[]={'1', '2', '3'}, *q=p;,以下不能计算出一个char型数据所占字节数的表达式是A)sizeof(p) B)sizeof(char)C)sizeof(*q) D)sizeof(p[0])(8)若有定义语句:int a[3][6];,按在内存中的存放顺序,a数组的第10个元素是A)a[0][4]B)a[1][3] C)a[0][3]D)a[1][4](9)若有定义语句:int a[2][3],*p[3];,则以下语句中正确的是A)p=a; B)p[0]=a; C)p[0]=&a[1][2] D)p[1]=&a;(10)有以下函数int aaa(char *s){char *t=s;while(*t++);t--;return(t-s);}以下关于aaa函数的功能的叙述正确的是A)求字符串s的长度B)比较两个串的大小C)将串s复制到串t D)求字符串s所占字节数(11) 以下叙述中正确的是A)C程序中的注释只能出现在程序的开始位置和语句的后面B)C程序书写格式严格,要求一行内只能写一个语句得 分评卷人C语言课程·第1页(共16页) C语言课程·第2页(共16页)C)C程序书写格式自由,一个语句可以写在多行上D)用C语言编写的程序只能放在一个程序文件中(12)以下选项中不合法的标识符是A) print B)FOR C)&a D)_00(13)以下选项中不属于字符常量的是A) 'C' B) "C" C) '\xCC' D) '\072'(14)设变量已正确定义并赋值,以下正确的表达式是A)x=y*5=x+z B)int(15.8%5)C)x=y+z+5,++y D)x=25%5.0(15)以定义语句中正确的是A)int a=b=0;B)char A=65+1,b='b';C)float a=1, "b=&a,"c=&b;D)double a=0.0;b=1.1;(16)有以下程序段char ch; int k;ch='a'; k=12;printf("%c,%d,",ch,ch,k); printf("k=%d\n",k);已知字符a的ASCII十进制代码为97,则执行上述程序段后输出结果是A)因变量类型与格式描述符的类型不匹配输出无定值B)输出项与格式描述符个数不符,输出为零值或不定制C)a,97,12k=12D)a,97,k=12(17)已知字母A的ASCII代码值为65,若变量kk为char型,以下不能正确判断出kk中的值为大写字母的表达式是A) kk>='A'&& kk<='Z'B) !(kk>='A' ‖ kk<='Z')C) (kk+32)>='a' && (kk+32)<= 'z'D) isalpha(kk)&&(kk<91)(18)当变量c的值不为2、4、6时,值也为“真”的表达式是A) (c==2)‖(c==4)‖(c==6) B) (c>=2&&c<=6)‖(c!=3)‖(c!=5)C) (c>=2&&c<=6)&& !(c%2) D) (c>=2&&c<=6)&&(c%2!=1)(19)若变量已正确定义,有以下程序段int a=3,b=5,c=7;if(a>b) a=b; c=a;if(c!=a) c=b;;printf("%d,%d,%d\n",a,b,c);其输出结果是A)程序段有语法错B)3,5,3 C)3,5,5 D)3,5,7(20)有以下程序#include <stdio.h>main(){int x=1,y=0,a=0,b=0;switch(x){ case 1:switch(y){ case 0: a++; break;case 1: b++; break;C语言课程·第3页(共16页) C语言课程·第4页(共16页)}case 2: a++; b++; break;case 3: a++; b++;}printf("a=%d,b=%d\n",a,b);}程序的运行结果是A)a=1,b=0 B)a=2,b=2 C)a=1,b=1 D)a=2,b=1(21)有以下程序#include <stdio.h>main(){int x=8;for( ; x>0; x++){ if(x%3) { printf("%d,",x--); continue; }printf("%d,",--x);}}程序的运行结果是A)死循环输出8 B) 8,7,5,2, C)9,7,6,4, D)8,5,4,2,(22)以下不构成无限循环的语句或语句组是A) n=0; B) n=0;do{++n;}while(n<=0); while(1){n++;}C) n=10; D) for(n=0,i=1; ;i++)n+=i;while(n);{n--;} (23)有以下程序#include <stdio.h>main(){ int a[]={1,2,3,4},y,*p=&a[3];--p; y=*p; printf("y=%d\n",y);}程序的运行结果是A)y=0 B)y=1 C)y=2 D)y=3(24)以下错误的定义语句是A) int x[][3]={{0},{1},{1,2,3}};B) int x[4][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};C) int x[4][]= {{1,2,3},{1,2,3},{1,2,3},{1,2,3}};D) int x[][3]={1,2,3,4};(25)设有如以程序段char s[20]= "Beijing",*pp=s;则执行p=s;语句后,以下叙述正确的是A)可以用*p表示s[0]B)s数组中元素的个数和p所指字符串长度相等C)s和p都是指针变量D)数组s中的内容和指针变量p中的内容相同(26)若有定义:int a[2][3];,以下选项中对a数组元素正确引用的是A)a[2][!1] B)a[2][3] C)a[0][3] D)a[1>2][!1](27)有定义语句:char s[10];,若要从终端给s输入5个字符,错误的输入语句是A)gets(&s[0]); B)scanf("%s",s+1);C语言课程·第5页(共16页) C语言课程·第6页(共16页)C)gets(s); D)scanf("%s",s[1]);(28)以下叙述中错误的是A)在程序中凡是以“#”开始的语句行都是预处理命令行B)预处理命令行的最后不能以分号表示结束C)#define MAX 是合法的宏定义命令行D)C程序对预处理命令行的处理是在程序执行的过程中进行的(29)以下结构体类型说明和变量定义中正确的是A)typrdef struct B)struct REC;{ int n; char c;}REC; { int n; char c;};REC t1,t2; REC t1,t2;C)typedef struct REC ; D)struct{ int n=0;char c='A';}t1,t2; { int n; char c;}REC;REC t1,t2;(30)以下叙述中错误的是A)gets函数用于从终端读入字符串B)getchar函数用于从磁盘文件读入字符C)fputs函数用于把字符串输出到文件D)fwrite函数用于以二进制形式输出数据到文件(31)有以下程序#include <strio.h>main(){int s[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i;for(i=0;i<12;i++) c[s[i]]++;for(i=1;i<5;i++) printf("%d ",c[i]); }程序的运行结果是A) 1 2 3 4 B) 2 3 4 4 C)4 3 3 2 D) 1 1 2 3(32)有以下程序#include <stdio.h>void fun(int *s,int n1,int n2){ int i,j,t;i=n1; j=n2;while(i<j) {t=s[i];s[i]=s[j];s[j]=t; i++;j--;}}main(){ int a[10]={1,2,3,4,5,6,7,8,9,0},k;fun(a,0,3); fun(a,4,9); fun(a,0,9);for(k=0;k<10;k++) printf("%d",a[k]);printf("\n"); }程序的运行结果是A)0987654321 B)4321098765C)5678901234 D)0987651234(33)有以下程序#include <stdio.h>#include <string.h>void fun(char *s[],int n){ char *t; int i,j;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)C语言课程·第7页(共16页) C语言课程·第8页(共16页)if(strlen(s[i])>strlen(s[j])) {t=s[i];s[i]=s[j];s[j]=t;}}main(){char*ss[]={"bcc","bbcc","xy","aaaacc","aabcc"};fun(ss,5);printf("%s,%s\n",ss[0],ss[4]);}程序的运行结果是A)xy,aaaacc B)aaaacc,xy C)bcc,aabcc D)aabcc,bcc(34)有以下程序#include <stdio.h>int f(int x){ int y;if(x==0‖x==1) return(3);y=x*x-f(x-2);return(y);}main(){ int z;z=f(3); printf("%d\n",z);}程序的运行结果是A)0 B)9 C)6 D)8(35)有以下程序#include <stdio.h> void fun(char *a,char *b){ while(*a=='*') a++;while(*b=*a){b++;a++;}}main(){ char *s="*****a*b****",t[80];fun(s,t); puts(t);}程序的运行结果是A)*****a*b B)a*b C)a*b**** D)ab(36)有以下程序#include <stdio.h>#include <string.h>typedef struct{ char name[9];char sex;float score[2];}STU;void f(STU a){ STU b={"Zhao",'m',85.0,90.0}; int i;strcpy(,);a.sex=b.sex;for(i=0;i<2;i++) a.score[i]=b.score[i];}main(){ STU c={"Qian",'f',95.0,92.0};f(c);C语言课程·第9页(共16页) C语言课程·第10页(共16页)printf("%s,%c,%2.0f,%2.0f\n",,c.sex,c.score[0],c.score[1]); }程序的运行结果是A)Qian,f,95,92 B)Qian,m,85,90C)Zhao,f,95,92 D)Zhao,m,85,90(37) 有以下程序#include <stdio.h>main(){ FILE *fp; int a[10]={1,2,3},i,n;fp=fopen("d1.dat","w");for(i=0;i<3;i++) fprintf(fp,"%d",a[i]);fprintf(fp,"\n");fclose(fp);fp=fopen("d1.dat","r");fscanf(fp,"%d",&n);fclose(fp);printf("%d\n",n);}程序的运行结果是A)12300 B)123 C)1 D)321(38)变量a中的数据用二进制表示的形式是01011101,变量b中的数据用二进制表示的形式是11110000。

二级C语言程序设计题专项强化真题试卷2(题后含答案及解析)

二级C语言程序设计题专项强化真题试卷2(题后含答案及解析)

二级C语言程序设计题专项强化真题试卷2(题后含答案及解析) 题型有:1.1.下列程序定义了N×N的二维数组,并在主函数中自动赋值。

请编写函数fun(int a[][N]),该函数的功能是:将数组左下半三角元素中的值全部置成0。

例如a数组中的值为:197238456则返回主程序后a数组中的值应为:097008000注意:部分源程序给出如下。

请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

试题程序:#include&lt;conio.h&gt;#include&lt;stdio.h&gt;#nclude&lt;stdli(B)h&gt;#define N 5void fun(int a[][N]){}void main( ){int a[N][N],i,j;system(“CLS”);printf(“*****The array*****\n”);for(i=0;i<N;i++)/*产生一个随机的5*5矩阵*/{for(j=0;j<N;j++){a[i][j]=rand( )%10;printf(“%4d”,a[i][J]);}printf(“\n”);}fun(A);printf(“THE RESULT\n”);for(i=0;i<N;i++){for(j=0;j&lt;N;j++)printf(“%4d”,a[i][j]);printf(“\n”);}}正确答案:void fun(int a[][N]) { int i,j;if(a==NULL)return:for(i=0;i<N;i++) for(j=0;j<=i;j++) a[i][j]=0;/*将数组左下半三角元素中的值全部王成0*/}解析:本题考查:for循环语句,使用嵌套循环语句遍历二维数组的各个元素;二维数组元素的引用。

对于N×N二维数组,如何表示其左下半三角元素,可以通过以下语句实现。

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