2010-2011-2c语言试卷与答案1试卷NEW

合集下载

2010级C语言期末考试试卷(A卷)

2010级C语言期末考试试卷(A卷)

桂林电子科技大学信息科技学院试卷2010-2011 学年第 2 学期课号I04BT014课程名称C语言程序设计(A卷;、闭卷)适用班级(或年级、专业)10级、全院一单项选择题(每题2分,共40分)1 以下叙述正确的是。

A C程序基本组成单位是语句B 简单C语句必须以分号作为结束符C C程序每一行只能写一个语句D 注释语句可以嵌套2 设a和b均为int型变量,则执行以下语句后的输出为。

int a=20; int b=3; printf("%d\n",a+=(b%=2));A 0B 20C 21D 223 设int型占2个字节,且int i=-2;,则语句printf("%u",i);的输出结果为。

A -2B -32768C 65535D 655344 以下程序运行后的输出结果是。

main(){ double d=3.2; int x,y;x=1.2; y=(x+3.8)/5.0;printf("%d\n",d*y);}A 0B 3C 3.07D 3.25 以下程序运行后的输出结果是。

main(){ int a=2,b=-1,c=2;if(a<b)if(b<0) c=0;else c++;printf("%d\n",c);}A 0B 1C 2D 36 以下程序的执行结果是。

main(){ int n=9;while(n>6) { n--; printf("%d",n); }}A 987B 9876C 8765D 876void main(){ int x=15,y=21,z=0;switch (x/8){ case 2: z=z+1;break;case 1: z=z+1;switch (y/21){ default : z=z+1;case 0: z=z+1;break;}}printf("%d\n",z);}A 4B 3C 2D 18 以下程序的输出结果是。

2011年计算机等级考试二级C语言上机题库(含答案)(1)

2011年计算机等级考试二级C语言上机题库(含答案)(1)

重要说明:本题库为从题中一题一题复制出来工作量大,而且有许多表达式无法在word中快速表示出来(这样会加大工作量)故而省略,或者表达错位,有的地方可能或者肯定会有错,我相信准备参加C语言二级考试的同学应当能够对照参考答案看出来,这是2011年最新版最完整考试题库,相信大家一定都能通过!第一套程序填空给定程序中,函数fun的功能是:将形参n所指变量中,各位上为偶数的数去除,剩余的数按原来从高位到低位的顺序组成一个新的数,并通过形参指针n传回所指变量。

如输入一个数:27638496,新的数为729第一空:{ t=*n%10;第二空:if(t%2!=0)第三空:*n=x;2.程序修改给定程序modi1.c中函数fun的功能是:计算n!。

例如,给n输入5,则输出120.000000。

double fun(int n ){ double result=1.0;/*****found******/if(n==0)return 1.0;while(n>1&&n<170)/*****found******/result*=n--;return result;}程序设计请编写一个函数fun,它的功能是:将一个数字字符串转换为一个整数(不得调用C语言提供的将字符串转换为整数的函数)。

例如,若输入字符串“-1234”,则函数把它转换为整数值-1234。

long fun(char *p){int i,len,t;long x=0;len=strlen(p);if(p[0]==‘-‗){ t=-1;len--;p++;}else t=1;while(*p)x=x*10-48+(*p++);return x*t;}第二套1. 给定程序中,函数fun的功能是将形参给定的字符串、整数、浮点数写到文本文件中,再用字符方式从此文本文件中逐个读入并显示在终端屏幕上。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

C语言程序设计重修试题

C语言程序设计重修试题

C语⾔程序设计重修试题南阳理⼯学院2010-2011学年第⼆学期重修试卷课程:C语⾔程序设计评卷⼈(签名):复核⼈(签名):(答案直接填写在试卷上)⼀、选择题(每题2分,共50分)1. 在C语⾔中,字符型数据在内存中是以(D )形式存放的。

A.原码B.BCD码C.反码D.ASCII码2. 若有以下类型说明语句char w; int x; float y; double z;则表达式w*x+z-y 的结果是(D)类型。

A.floatB.charC.intD.double3. 语句 char s='\092';的作⽤是( )A.s包含1个字符B.说明不合法, s的值不定。

C.使 s包含4个字符D.使 s包含3个字符4. 在C语⾔中,int, char, 和short三种类型数据所占⽤的内存( C)A.均为2个字节B.由⽤户⾃⼰定义C.由所⽤机器的机器字长决定D.是任意的5. 以下(C)是不正确的转义字符。

A.'\\'B.'\'C.'081'D.'\0'B.⼀个C源程序必须包含⼀个main函数C.C程序的基本组成单位是函数D.在C程序中注释说明只能位于⼀条语句的后⾯7. ⼀个C程序的执⾏是从( )A.本程序的main函数开始,到main函数结束B.本程序⽂件的第⼀个函数开始,到本程序的最后⼀个函数结束C.本程序的main函数开始,到本程序的最后⼀个函数结束D.本程序⽂件的第⼀个函数开始,到本程序main函数结束8. 若i, j已定义为int类型,则以下程序段中内循环体的总的执⾏次数是( ) for (i=5; i; i--) for(j=0; j<4; j++) {...} A. 20 B. 25 C. 24 D. 309. 若数组名作实参⽽指针变量作形参,函数调⽤实参传给形参的是 ( )A.数组的长度B.数组第⼀个元素的值C.数组所有元素的值D.数组第⼀个元素的地址10.若变量已正确定义并赋值,下⾯符合C语⾔语法的表达式是( )A. a:=b+1B. a=b=c+2C. int 18.5%3D. a=a+7=c+b11. 有如下程序main( ){ int y=3,x=3,z=1;printf(“%d %d\n”,(++x,y++),z+2);}运⾏该程序的输出结果是( )A. 3 4B. 4 2C. 4 3D. 3 312. 有如下程序int main( ){ int x=1, a=0, b=0;switch(x)case 2: a++; b++; }printf(“a=%d,b=%d\n”,a,b); return 0; }该程序的输出结果是( )A. a=2,b=1B. a=1,b=1C. a=1,b=0D. a=2,b=213. 有如下程序main(){ float x=2.0, y;if(x<0.0) y=0.0;else if(x<10.0) y=1.0/x;else y=1.0;printf(“%f\n”,y); }该程序的输出结果是( )A. 0.000000B. 0.250000C. 0.500000D. 1.00000014.有如下程序main ( ){ int x=23;do{ printf(“%d”,x--);} while(!x); }该程序的执⾏结果是( )A. 321B. 23C. 不输出任何内容D. 陷⼊死循环15.设有说明语句:char a=’\72’;则变量a( )A. 包含1个字符B. 包含2个字符C. 包含3个字符{ return(a+b); }main( ){ int x=2,y=5,z=8,r;r=func(func(x,y),z);printf(“%\d\n”,r); }该程序的输出的结果是( )A. 12B. 13C. 14D. 1517. 有如下程序段int *p, a=10,b=1;p=&a a=*p+b;执⾏该程序段后,a的值为( )A. 12B. 11C. 10D. 编译出错18. 在C语⾔中,函数的隐含存储类别是( )A. autoB. staticC. externD. ⽆存储类别19. 有如下说明int a[10]={1,2,3,4,5,6,7,8,9,10}, *p=a;则数值为9的表达式是( )A. *p+9B. *(p+8)C. *p+=9D. p+820.函数调⽤strcat(strcpy(str1,str2),str3)的功能是( )A. 将串str1复制到串str2中后再连接到串str3之后B. 将串str1连接到串str2之后再复制到串str3之后C. 将串str2复制到串str1中后再将串str3连接到串str1之后21.有如下程序,输出的结果()#includeint main(){int i,j,x=0;for(i=0;i<=2;i++){x++;for(j=0;j<3;j++){if(j%2)continue;x++;}x++;}x++;printf(“%d\n”,x)return 0; }A. 12B.13C.14D.722. 该源程序执⾏后,屏幕上显⽰() void main(){int a;float b;a=4;b=9.5;printf("a=%d,b=%4.2f\n",a,b);}A. a=%d,b=%f\nB. a=%d,b=%fD. a=4,b=9.523.已知有共⽤体变量data1定义如下:union data{ int i;char ch;float f;} data1; 则变量data1所占的内存存储空间可表⽰为()A. size of(int) B. size of(char)C. size of(float)D. size of(int)+size of(char)+size of(float)24. 下⾯语句执⾏完后,b的值为。

历年计算机二级c语言考试真题以及答案详解

历年计算机二级c语言考试真题以及答案详解

2010年9月全国计算机二级C语言笔试试题(11)以下关于结构化程序设计的叙述中正确的是A)一个结构化程序必须同时由顺序、分支、循环三种结构组成B)结构化程序使用goto语句会很便捷C)在C语言中,程序的模块化是利用函数实现的D)由三种基本结构构成的程序只能解决小规模的问题(12)以下关于简单程序设计的步骤和顺序的说法中正确的是A)确定算法后,整理并写出文档,最后进行编码和上机调试B)首先确定数据结构,然后确定算法,再编码,并上机调试,最后整理文档C)先编码和上机调试,在编码过程中确定算法和数据结构,最后整理文档D)先写好文档,再根据文档进行编码和上机调试,最后确定算法和数据结构(13)以下叙述中错误的是A) C程序在运行过程中所有计算都以二进制方式进行B)C程序在运行过程中所有计算都以十进制方式进行C)所有C程序都需要编译链接无误后才能运行D)C程序中整型变量只能存放整数,实型变量只能存放浮点数(14)有以下定义:int a; long b;double x,y;则以下选项中正确的表达式是A)a%(int)(x-y)B)a=x!=y;C)(a*y)%bD)y=x+y=x(15)以下选项中能表示合法常量的是A)整数:1,200B)实数:1.5E2.0C )字符斜杠:‘\’D)字符串:"\007" (16)表达式a+=a-=a=9的值是A)9B)_9C)18D)0(17)若变量已正确定义,在if (W)printf (“%d\n,k”);中,以下不可替代W的是A)a<>b+cB)ch=getchar()C)a==b+cD)a++(18)有以下程序#include<stdio.h>main(){int a=1,b=0;if(!a) b++;else if(a==0)if(a)b+=2;else b+=3;printf(”%d\n”,b);}程序运行后的输出结果是A)0B)1C)2D)3(19)若有定义语句int a, b;double x;则下列选项中没有错误的是A)switch(x%2) B)switch ((int)x/2.0{case 0: a++;break; {case 0: a++; break;case 1: b++;break; case 1: b++; break;default : a++;b++; default : a++; b++;}}C)switch((int)x%2) D)switch((int)(x)%2){case 0: a++;break; {case 0.0: a++; break;case 1: b++;break; case 1.0:b++; break;default : a++;b++; default : a++; b++;}}(20)有以下程序#include <stdio.h>main(){int a=1,b=2;while(a<6){b+=a;a+=2;b%二10;}printf(”%d,%d\n”,a,b);}程序运行后的输出结果是A)5,11B)7,1C)7,11D)6,1(21)有以下程序#include<stdio.h>main(){int y=10;while(y--);printf(”Y=%d\n”,Y);}程序执行后的输出结果是A)y=0B)y= -1C)y=1D)while构成无限循环(22)有以下程序#include<stdio .h>main(){char s[」=”rstuv";printf(”%c\n”,*s+2);}程序运行后的输出结果是A)tuvB)字符t的ASCII码值C)tD)出错(23)有以下程序#include<stdio.h>#include<string.h>main(){char x[]=”STRING”;x[0」=0;x[1]=’\0’;x[2」=’0’;printf(”%d %d\n”,sizeof(x),strlen (x));}程序运行后的输出结果是A)6 1B)7 0C)6 3D)7 1(24)有以下程序#include<stdio.h>Int f(int x);main(){int n=1,m;m=f(f(f(n)));printf(”%d\n”,m);}int f(int x){return x*2;}程序运行后的输出结果是A)1B)2C)4D)8(25)以下程序段完全正确的是A)int *p; scanf("%d",&p);B)int *p; scanf(“%d”,p);C)int k, *p=&k; scanf("%d",p);D)int k, *p:; *p= &k; scanf(“%d”,p);(26)有定义语句:int *p[4];以下选项中与此语句等价的是A)int p[4];B)int **p;C)int *(p「4」);D)int (*p)「4」;(27)下列定义数组的语句中,正确的是A)int N=10;B)#define N 10int x[N]; i nt x[N];C)int x[0..10]; D)int x[];(28)若要定义一个具有5个元素的整型数组,以下错误的定义语句是A)int a[5]=﹛0﹜;B)int b[]={0,0,0,0,0};C)int c[2+3];D)int i=5,d[i];(29)有以下程序#include<stdio.h>void f(int *p);main(){int a[5]={1,2,3,4,5},*r=a;f(r);printf(”%d\n”;*r);}void f(int *p){p=p+3;printf(”%d,”,*p);}程序运行后的输出结果是A)1,4B)4,4C)3,1D)4,1(30)有以下程序(函数fun只对下标为偶数的元素进行操作)# include<stdio.h>void fun(int*a;int n){int i、j、k、t;for (i=0;i<n一1;1+=2){k=i;‘for(j=i;j<n;j+=2)if(a[j]>a〔k])k=j;t=a〔i];a〔i]=a[k];a〔k]=t;}}main(){int aa「10」={1、2、3、4、5、6、7},i;fun(aa、7);for(i=0,i<7; i++)printf(”%d,”,aa [i]));printf(”\n”);}程序运行后的输出结果是A)7,2,5,4,3,6,1B)1,6,3,4,5,2,7C)7,6,5,4,3,2,1D)1,7,3,5,6;2,1(31)下列选项中,能够满足“若字符串s1等于字符串s2,则执行ST"要求的是A)if(strcmp(s2,s1)==0)ST;B)if(sl==s2)ST;C)if(strcpy(s l ,s2)==1)ST;D)if(sl-s2==0)ST;(32)以下不能将s所指字符串正确复制到t 所指存储空间的是A)while(*t=*s){t++;s++;}B)for(i=0;t[i]=s[i];i++);C)do{*t++=*s++;}while(*s);D)for(i=0,j=0;t[i++]=s[j++];);(33)有以下程序( strcat函数用以连接两个字符串)#include<stdio.h>#include<string .h>main(){char a[20]=”ABCD\OEFG\0”,b[]=”IJK”;strcat(a,b);printf(”%s\n”,a);}程序运行后的输出结果是A)ABCDE\OFG\OIJKB)ABCDIJKC)IJKD)EFGIJK(34)有以下程序,程序中库函数islower (ch)用以判断ch中的字母是否为小写字母#include<stdio.h>#include<ctype.h>void fun(char*p){int i=0;while (p[i]){if(p[i]==’ ’&& islower(p「i-1」))p[i-1]=p[i-1]-‘a’+‘A’;i++;}}main(){char s1[100]=”ab cd EFG!”;fun(s1); printf(”%s\n”,s1);}程序运行后的输出结果是A)ab cd EFG!B)Ab Cd EFg!C)aB cD EFG!D)ab cd EFg!(35)有以下程序#include<stdio.h>void fun(int x){if(x/2>1)fun(x/2);printf(”%d”,x);}main(){fun(7);printf(”\n”);}程序运行后的输出结果是A)1 3 7B)7 3 1C)7 3D)3 7(36)有以下程序#include<stdio.h>int fun(){static int x=1;x+=1;return x;}main(){int i;s=1;for(i=1;i<=5;i++)s+=fun();printf(”%d\n”,s);}程序运行后的输出结果是A)11B)21C)6D)120(37)有以下程序#inctude<stdio.h>#include<stdlib.h>Main(){int *a,*b,*c;a=b=c=(int*)malloc(sizeof(int));*a=1;*b=2,*c=3;a=b;printf(“%d,%d,%d\n”,*a,*b,*c);}程序运行后的输出结果是A)3,3,3 B)2,2,3 C)1,2,3 D)1,1,3(38)有以下程序#include<stdio.h>main(){int s,t,A=10;double B=6;s=sizeof(A);t=sizeof(B);printf(“%d,%d\n”,s,t);}在VC6平台上编译运行,程序运行后的输出结果是A)2,4 B)4,4 C)4,8 D)10,6(39)若有以下语句Typedef struct S{int g; char h;}T;以下叙述中正确的是A)可用S定义结构体变量B)可用T定义结构体变量C)S是struct类型的变量D)T是struct S类型的变量(40)有以下程序#include<stdio.h>main(){short c=124;c=c_______;printf(“%d\n”、C);}若要使程序的运行结果为248,应在下划线处填入的是A)>>2 B)|248 C)&0248 D)<<I二、填空题(每空2分,共30分)请将每空的正确答案写在答题卡【1】至【15】序号的横线上,答在试卷上不得分。

(1)2011年计算机二级C语言考试(试题及答案详解)

(1)2011年计算机二级C语言考试(试题及答案详解)

A)6566456 B)66656 C)66666
D)6666656
(20)有以下程序段
int i,n;
for(i=0;i<8;i++) { n=rand( )%5; switch (n)
{ case 1: case 3:printf("%d\n",n); break;
case 2: case 4:printf("%d\n",n); continue;
B)11
C)20
D)21
(39)有以下程序
#include<stdio>
main()
{ unsigned char a=8,c;
c=a>>3;
printf("%d\n",c);
#include<stdio>
main() { char s[]="012xy\08s34f4w2"; int i,n=0;
for(i=0;s[i]!=0;i++) if(s[i]>='0'&&s[i]<='9') n++; printf("%d\n",n); }
程序运行后的输出结果是
A)0
B)3
C)7
B)4,1
C)3,4
D)2,3
(38)有以下程序
#include<stdio>
struct S
{ int a,b;}data[2]={10,100,20,200}; main()
{ struct S p=data[1];
printf("%d\n",++(p.a));

苏职大c语言考试填空题大全

苏职大c语言考试填空题大全

苏州市职业大学2010─2011学年第二学期试卷《计算机语言C》答案与评分标准一、填空题 (每空1分,共161分)1. 下列程序由两个源程序文件:t4.h 和t4.c 组成,程序编译运行的结果是:【】。

t4.h 的源程序为:#define N 10#define f2(x) (x*N)t4.c 的源程序为:#include <stdio.h>#define M8#define f(x)((x)*M)#include "t4.h"main( ){ int i,j;i=f(1+1); j=f2(1+1);printf("%d%d\n",i,j);}【答案】16 112. 执行以下程序后,输出'#'号的个数是【】。

#include <stdio.h>main(){ int i,j;for(i=1; i<5; i++)for(j=2; j<=i; j++) putchar('#');}【答案】63. 请在以下程序第一行的下划线处填写适当内容,使程序能正确运行。

【】( double,double);main(){ double x,y;scanf("%lf%lf",&x,&y );printf("%lf\n",max(x ,y));}double max(double a,double b){ return(a>b ? a:b); }【答案】double max4. 下面程序把从终端读入的10个整数以二进制的方式写到一个名为bi.dat的新文件中。

请填空。

#include<stdio.h>FILE *fp;main( ){ int i,j;if((fp=fopen("【】","wb"))==NULL) exit(0);for(i=0;i<10;i++){ scanf("%d",&j);fwrite(&j,sizeof(int),1,【】);}fclose(fp);}【答案】bi.dat fp5. 以下程序中函数fun 的功能是:统计person 所指结构体数组中所有性别(sex)为M的记录的个数,存入变量n 中,并作为函数值返回。

2010上半年计算机等考二级C语言真题及答案

2010上半年计算机等考二级C语言真题及答案

一、选择题:1、一个C程序的执行是从(A)。

A本程序的main函数开始,到main函数结束B本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C本程序的main函数开始,到本程序文件的最后一个函数结束D本程序文件的第一个函数开始,到本程序main函数结束2、在C 语言中,每个语句必须以(D )结束。

A. 回车符B. 冒号C. 逗号D. 分号3、C 语言规定:在一个源程序中,main函数的位置( C )。

A. 必须在最开始B. 必须在系统调用的库函数的后面C. 可以任意D. 必须在最后4、一个C 语言程序是由(B )。

A. 一个主程序和若干子程序组成B. 函数组成C. 若干过程组成D. 若干子程序组成5、下列说法中错误的是( D )。

A. 主函数可以分为两个部分:主函数说明部分和主函数体B. 主函数可以调用任何非主函数的其他函数C. 任何非主函数可以调用其他任何非主函数D. 程序可以从任何非主函数开始执行6、用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( C )。

A. 生成可执行目标文件B. 生成目标文件C. 输出运行结果D. 自动保存源文件二、填空题:1、C 语言只有32 个关键字和9 种控制语句。

2、每个源程序有且只有一个main 函数,系统总是从该函数开始执行C语言程序。

3、C 语言程序的注释可以出现在程序中的任何地方,它总是以\* 符号作为开始标记,以*/ 符号作为结束标记。

4、C 语言中,输入操作是由库函数scanf 完成的,输出操作是由库函数printf 完成的。

5、系统默认的C 语言源程序文件的扩展名是.c ,经过编译后生成的目标文件的扩展名是.obj,经过连接后生成的可执行文件的扩展名是.exe 。

6、C 语言的标识符只能由字母、数字和下划线三种字符组成。

第三章数据类型、运算符和表达式一、选择题:1、以下选项中,不正确的 C 语言浮点型常量是(C )。

A. 160.B. 0.12C. 2e4.2D. 0.02、以下选项中,( D )是不正确的C 语言字符型常量。

历届国家二级c语言考试真题及其答案,word版

历届国家二级c语言考试真题及其答案,word版

2010年3月计算机二级C语言笔试真题一、选择题(1)下列叙述中正确的是A)对长度为n的有序链表进行查找,最坏清况下需要的比较次数为nB)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(nlog2n)(2)算法的时问复杂度是指A)算法的执行时间B)算法所处理的数据量C)算法程序中的语司或指令条数D)算法在执行过程中所需要的基本运算次数(3)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。

下面属于系统软件的是A)编辑软件B)操作系统C)教务管理系统D)浏览器(4)软件(程序)调试的任务是A)诊断和改正程序中的错误B)尽可能多地发现程序中的错误C)发现并改正程序中的所有错误D)确定程序中错误的性质(5)数据流程图(DFD图)是A)软件概要设计的工具B)软件详细设计的工具C)结构化方法的需求分析工具D)面向对象方法的需求分析工具(6)软件生命周期可分为定义阶段,开发阶段和维护阶段。

详细设计属于A)定义阶段B)开发阶段C)维护阶段D)上述三个阶段(7)数据库管理系统中负责数据模式定义的语言是A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言(8)在学生管理的关系数据库中,存取一个学生信息的数据单位是A)文件B)数据库C)字段D)记录(9)数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的A)需求分析阶段B)逻辑设计一阶段C)概念设计阶段D)物理设计阶段(10)有两个关系R和T如下:则由关系K得到关系T的操作是A)选择B)投影C)交D)并(11)以下叙述正确的是A)C语言程序是由过程和函数组成的B)C语言函数可以嵌套调用,例如:fun(fun(x))C)C语言函数不可以单独编译D)C语言中除了main函数,其他函数不可作为单独文件形式存在(12)以下关于C语言的叙述中正确的是A)C语言中的注释不可以夹在变量名或关键字的中间B)C语言中的变量可以在使用之前的任何位置进行定义C)在C语言算术表达式的书写中,运算符两侧的运算数类型必须一致D)C语言的数值常量中夹带空格不影响常量值的正确表示(13)以下C语言用户标识符中,不合法的是A)_1B)AaBcC)a_bD)a—b(14)若有定义:double a=22;int i=0,k=18;,则不符合C语言规定的赋值语句是A)a=a++,i++;B)i=(a+k)<=(i+k);C)i=a%11;D)i=!a;(15)有以下程序#includemain(){ char a,b,c,d;scanf(“%c%c”,&a,&b);c=getchar(); d=getchar();printf(“%c%c%c%c\n”,a,b,c,d);}当执行程序时,按下列方式输入数据(从第1列开始,代表回车,注意:回车也是一个字符)1234则输出结果是A)1234B)12C)123D)1234(16)以i关于C语言数据类型使用的叙述中错误的是A)若要准确无误差的表示自然数,应使用整数类型B)若要保存带有多位小数的数据,应使用双精度类型C)若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型D)若只处理“真”和“假”两种逻辑值,应使用逻辑类型(17)若a是数值类型,则逻辑表达式(a==1)||(a!=1)的值是A)1B)0C)2D)不知道a的值,不能确定(18)以下选项中与if(a==1)a=b; else a++;语句功能不同的switch语句是A)switch(a){case:a=b;break;default:a++;}B)switch(a==1){case 0:a=b;break;case 1:a++;}C)switch(a){default:a++;break;case 1:a=b;}D)switch(a==1){case 1:a=b;break;case 0:a++;}(19)有如下嵌套的if语句if (aif(aelse k=c;elseif(belse k=c;以下选项中与上述if语句等价的语句是A)k=(aB)k=(ac)?b:c);C)k=(aD)k=(a(20)有以下程序#includemain(){in i,j,m=1;for(i=1;i<3;i++) {for(j=3;j>O;j--){if(i*j)>3)break;m=i*j;}}printf("m=%d\n",m); }程序运行后的输出结果是A)m=6B)m=2C)m=4D)m=5(21)有以下程序#include(stdio.h> main(){int a=l;b=2; for(;a<8;a++) {b+=a;a+=2;}printf("%d,%d\n",a,b);}程序运行后的输出结果是A)9,18B)8,11C)7,11D)10,14(22)有以下程序,其中k的初值为八进制数#includemain(){int k=011;printf("%d\n",k++);}程序运行后的输出结果是A)12B)11C)10D)9(23)下列语句组中,正确的是A)char *s;s="Olympic";B)char s[7];s="Olympic";C)char *s;s={"Olympic"};D)char s[7];s={"Olympic"};(24)以下关于return语句的叙述中正确的是A)一个自定义函数中必须有一条return语句B)一个自定义函数中可以根据不同情况设置多条return语句C)定义成void类型的函数中可以有带返回值的return语句D)没有return语句的自定义函数在执行结束时不能返回到调用处(25)下列选项中,能正确定义数组的语句是A)int num[0..2008];B)int num[];C)int N=2008;int num[N];D)#define N 2008int num[N];(26)有以下程序#includevoid fun(char *c,int d){*c=*c+1;d=d+1;printf("%c,%c,",*c,d);main(){char b=''a'',a=''A'';fun(&b,a);printf("%e,%e\n",b,a);}程序运行后的输出结果是A)b,B,b,AB)b,B,B,AC)a,B,B,aD)a,B,a,B(27)若有定义int(*Pt)[3];,则下列说法正确的是A)定义了基类型为int的三个指针变量B)定义了基类型为int的具有三个元素的指针数组ptC)定义了一个名为*pt、具有三个元素的整型数组D)定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组(28)设有定义double a[10],*s=a;,以下能够代表数组元素a[3]的是A)(*s)[3]B)*(s+3)C)*s[3]D)*s+3(29)有以下程序#include(stdio.h)main(){int a[5]={1,2,3,4,5},b[5]={O,2,1,3,0},i,s=0;for(i=0;i<5;i++) s=s+a[b[i]]);printf("%d\n", s);}程序运行后的输出结果是A)6B)10C)11D)15(30)有以下程序#includemain(){int b [3][3]={O,1,2,0,1,2,O,1,2},i,j,t=1;for(i=0;i<3;i++)for(j=ij<=1;j++) t+=b[i][b[j][i]];printf("%d\n",t);}程序运行后的输出结果是A)1B)3C)4D)9(31)若有以下定义和语句char s1[10]="abcd!",*s2="\n123\\";printf("%d %d\n", strlen(s1),strlen(s2));则输出结果是A)5 5B)10 5C)10 7D)5 8(32)有以下程序#include#define N 8void fun(int *x,int i){*x=*(x+i);}main(){int a[N]={1,2,3,4,5,6,7,8},i;fun(a,2);for(i=O;i{printf("%d",a[i]);}printf("\n");}程序运行后的输出结果是A)1313B)2234C)3234D)1234(33)有以下程序#includeint f(int t[],int n);main{ int a[4]={1,2,3,4},s;s=f(a,4); printf("%d\n",s);}int f(int t[],int n){ if(n>0) return t[n-1]+f(t,n-1); else return 0;}程序运行后的输出结果是A)4B)1OC)14D)6(34)有以下程序#includeint fun(){ static int x=1;x*2; return x;}main(){int i,s=1,for(i=1;i<=2;i++) s=fun(); printf("%d\n",s);}程序运行后的输出结果是A)O B)1 C)4 D)8 (35)有以下程序#include#define SUB(a) (a)-(a)main(){ int a=2,b=3,c=5,d;d=SUB(a+b)*c;printf("%d\n",d);}程序运行后的输出结果是A)0B)-12C)-20D)10(36)设有定义:struct complex{ int real,unreal;} data1={1,8},data2; 则以下赋值语句中错误的是A)data2=data1;B)data2=(2,6);C)data2.real=data1.real;D)data2.real=data1.unreal;(37)有以下程序#include#includestruct A{ int a; char b[10]; double c;};void f(struct A t);main(){ struct A a={1001,"ZhangDa",1098.0};f(a); printf("%d,%s,%6.1f\n",a.a,a.b,a.c);}void f(struct A t){ t.a=1002; strcpy(t.b,"ChangRong");t.c=1202.0;}程序运行后的输出结果是A)1001,zhangDa,1098.0B)1002,changRong,1202.0C)1001,ehangRong,1098.OD)1002,ZhangDa,1202.0(38)有以下定义和语句struct workers{ int num;char name[20];char c;struct{int day; int month; int year;}s;};struct workers w,*pw;pw=&w; 能给w中year成员赋1980的语句是A)*pw.year=198O;B)w.year=1980;C)pw->year=1980;D)w.s.year=1980;(39)有以下程序#includemain(){ int a=2,b=2,c=2;printf("%d\n",a/b&c);}程序运行后的输出结果是A)OB)1C)2D)3(40)有以下程序#includemain(){ FILE *fp;char str[10];fp=fopen("myfile.dat","w");fputs("abc",fp);fclose(fp); fpfopen("myfile.data","a++"); fprintf(fp,"%d",28);rewind(fp);fscanf(fp,"%s",str); puts(str); fclose(fp); }程序运行后的输出结果是 A)abc B) 28c C) abc28D)因类型不一致而出错 二、填空题(1)一个队列的初始状态为空。

2010和2011年计算机c程序设计真题及答案

2010和2011年计算机c程序设计真题及答案

二O一O年硕士学位研究生招生入学考试试题考试科目:计算机程序设计代码:9271.填空题20题,每题1分1)程序的三种基本的控制结构是:顺序结构、选择结构、循环结构。

2)外部函数的储存类型是,它既可以在本编译单位中被调用,又可以在中被调用。

3)若a函数中调用了b函数,而b函数又调用了c函数,这种调用称为调用。

若a函数中调用了b函数,而b函数又调用了a函数,这种调用称为调用。

4)“*”称为指针运算符,“&”称为取值运算符。

5)表示结构体成员的“ . ”称为成员(分量)运算符,“ -> ”称为分量运算符。

6)如果调用fopen函数不成功,则函数返回值为0;如果调用fclose函数不成功,则函数返回值为EOF。

7)C++语言中有//和/*与*/ 二种注释方法。

8)在C++中用关键字 class来定义新的类。

9)若有以下定义,则不移动指针p,且通过指针p引用值98的数组元素的表达式是。

int w[10]={23,54,10,33,47,98,72,80,61,102}, *p=w;10)位运算:0x1a2c&0x1a79 的运算结果是(用八进位制形式写出)015050 。

2.程序填空题4题,每题5分1)下列程序的功能是计算1-10之间偶数之和,请填空。

#include <iostream.h>void main( ){ int a, b,i:a=0;b=0;for ( i=0;__i<=10_____;i+=2){ a+=i;(2) ;}cout<<“偶数之和为:”<<a<<endl;}2)下列程序是将一个正整数n的各个位向左循环移动4位,请在程序的横线上填写适当的内容。

#include <stdio.h>void main(void){ int k,n,a;scanf(“%d”,&n);k=n&0xf000;k= >>12 ;a=n<<4;a=k | a;printf(“n=%o\n a=%o\n”,n,a);}3)下面是字符串拷贝函数,请填空。

C语言试题

C语言试题

A DB A B B ACBBB BD BD1.编程输入x的值,求y=x20-2*x10+5的值,程序文件命名为program1.c,保存到D:\I文件夹中。

2.编程输入年份,判断它是否是闰年(两个条件:能被4整除但不能被100整除或者能被400整除),程序文件命名为program2.c,保存到D:\I文件夹中。

3.编程求出100~999的所有的水仙花数(所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身),程序文件命名为program3.c,保存到D:\I文件夹中。

4.编程求出1~100之间的全部素数。

程序文件命名为program4.c,保存到D:\I文件夹中。

5.使用数组编写程序,输入5个学生6门课程的成绩,输出5个学生中平均分最高的学生的平均分。

程序文件命名为program5.c,保存到D:\I文件夹中。

应学院2010~2011学年第一学期《C语言程序设计》考试题(I卷)参考答案及评分标准选择题参考答案选择题评分标准:单选题每小题选对得1.5分,共45分。

错选、漏选均不给分。

本题由计算机软件阅卷。

编程题编程题评分标准:第1、2、3、4题,每题10分;第5题15分。

共55分。

程序文件名命名错误不得分。

参考程序:program1.c:#include <stdio.h>#include <math.h>void main(){float x,y;printf("请输入x的值:");scanf("%f",&x);y=pow(x,20)-2*pow(x,10)+5;printf("y=%f\n",y);}评分标准:1、变量定义正确得2分。

2、输入正确得2分。

3、输出正确得2分。

4、中间处理过程及其他得4分。

参考程序:program2.c:#include <stdio.h>void main(){int year;printf("请输入一个年份:");scanf("%d",&year);if((year%4==0 && year%100!=0)||(year%400==0)) printf("%d是闰年!\n",year);elseprintf("%d不是闰年!\n",year);}评分标准:1、变量定义正确得2分。

C语言A

C语言A

《C 语言程序设计》试卷 共10页 第1页 《C 语言程序设计》试卷 共10页 第2页安徽师范大学皖江学院2010-2011学年第二学期2010级信息管理专业《C 语言程序设计》期末考试试卷(A )(时间 120分钟,答案一定要写在答题纸上)1.下列C 程序用户标识符中正确的一组标识符是 ( )A)void B)as_b3 C)For D)2c define _123 -abc DO WORD If case SIG 2.以下叙述中正确的是( )A) a 是实型变量,C 允许进行以下赋值a=10,因此可以这样说:实型变量允许赋值整型值。

B) 在赋值表达式中,赋值号左边既可以是变量也可以是任意表达式。

C) 执行表达式a=b 后,在内存中a 和 b 存储单元中的原有值都将被改变,a 的值已由原值改变为b 的值, b 的值由原值变为0。

D) 已有a=3,b=5。

当执行了a=b;b=a; 之后, a 中的值为5,b 中的值为3。

3.c 语言中运算对象必须是整型的运算符是( )A )% B) / C ) ! D ) *4.若有代数表达式bcae3,则不正确的c 语言表达式是( )A )a/b/c*e*3B )3*a*e /b/cC )3*a*e /b*cD )a*e/c /b *3 5.下列运算符中优先级最高的运算符是( )A) ! B ) % C ) -= D )&&6.若变量已正确说明,要求用以下语句:scanf(“ a=%f,b=%f ”,&a,&b);给a 赋予3.12,给b 赋予9.0,则正确的输入形式是(Ц代表空格,CR 代表回车) ( ) A) 3.12ЦЦ9.0<CR> B) a=ЦЦ3.12b=ЦЦЦ9<CR> C) a=3.12,b=9<CR> D) a=3.12ЦЦ,b=9ЦЦЦЦ<CR>7. 以下选项中不是C 语句的是( )A){int i ; i++; printf(“%d\n ”,i);} B);C)a=5,c=10 D){ ; } 8.若有以下程序段,c3中的值是( )int c1=1,c2=2,c3; c3=c1/c2;A)0 B)1/2 C)0.5 D)19.为了避免在嵌套的条件语句if-else 中产生二义性,c 语言规定:else 子句总是与( )配对。

2011年计算机等级考试二级C语言上机题库(含答案)

2011年计算机等级考试二级C语言上机题库(含答案)

认识实习报告9月初,我们先前往了山东威海滨田印刷机械有限公司进行认识实习。

此后我们又去了一家大型零件加工厂进行了参观。

通过这次的实习,我们了解到机械行业第一线的一些具体情况,了解了工业生产实施的具体过程,同时也对一些工厂的技术实施,管理方法有了一定的认识。

前往滨田印刷机械有限公司以后,我们在指导老师和工程师的带领下,分批开始了对该厂的参观。

这一切对我们而言陌生有新鲜。

开始,我们在一位严谨的工程师的带领下,去了零件加工厂了解了各类零件的加工。

其中参观了各种自动化得机床,我们还从一部分机床中看到了上学期我们金工实习那些机床的影子。

但给我最大的感触是整个车间里,国产的机床并不是很多。

整个过程纪律严明,一边参观零件的加工,一边聆听了工程师给予我们的讲解了解了整个工厂的第一道程序。

此后,我们前往了三间组装车间,参观了52系列,66系列和47系列三种印刷机的组装。

这次给我们介绍的是一位年轻的工程师,他详细的向我们介绍了这三种印刷机的一些知识。

我们也了解了刚知道这几个型号产生的疑惑,原来,47,52和66的意思是最大用纸尺寸的长。

其中47系列是单色印刷机,可用于印号码,打孔线和树脂凸版印刷。

使用的集中供油系统可以有效的防止因局部遗忘加油造成的零件磨损,延长零件的精度和使用寿命,杜绝润滑油浪费,保护环境卫生。

52系列性能较高,大都是以高级胶印机所具有的高耐久性、高精度的部件为基础,生产的高性能印刷机。

同时也是可适合文字、线条印刷,实地印刷等各种印刷需要。

另外通过添加多种备选装置,使机器升级到更高效率的印刷机。

到66系列时,工程师大哥向我们介绍的较为详细,它分为两款:WEIHAI HAMADA66-NP 实现精美平版印刷及号码印刷的高品质重型印刷机和WEIHAI HAMADA66 真正高品质的重型印刷机。

WEIHAI HAMADA66系列是以真正高质量印刷为目标而生产的大四开重型胶印机。

这款先进的机械拥有按扭式与触摸式键盘,所需操作全部集中在3处操作盘上。

河北农业大学2010-2011学年本科C语言期末考试真题及答案

河北农业大学2010-2011学年本科C语言期末考试真题及答案

河北农业大学课程考试试卷2010—2011学年第2学期 2010 级 本科专业 卷别:A考试科目: C 语言程序设计 考核方式: 闭卷考试 姓 名: 学号: 专业班级: (注:考生务必将答案写在答题纸上,写在本试卷上无效)本试卷共( 4 )页一、选择题(共30分,每题1分)1、()是C 程序的基本构成单位。

A 、函数B 、函数和过程C 、超文本过程D 、子程序2、C 语言规定,必须用()作为主函数名。

A 、functionB 、includeC 、mainD 、stdio3、以下()是C 语言提供的关键字。

A 、continueB 、procedureC 、beginD 、append4、下列可以作为变量名的是()。

A 、+aB 、123425eC 、a3BD 、5e+05、在C 语言中以下合法的字符常量是()。

A 、‟\0824‟B 、‟\x243‟C 、‟0‟D 、”\0”6、设d 为字符变量,则下列表达式不正确的是()。

A 、d=‟m ‟B 、d=97C 、d=”a ”D 、d=‟\101‟7、表达式(double )(23/3)的值是()。

A 、4 B 、7.0 C 、7.7 D 、3 8、下列程序的输出结果是()。

main( ){ int x=4, y=0,z; x*=3+2;printf(“%d\t ”,x); x*=(y= =(z=4));printf(“%d ”,x);}A 、14 40B 、20 0C 、20 4D 、14 49、已知year 为整型变量,不能使表达式(year%4==0&&year%100!=0)||(year%400= =0)的值是1的整型数据是()。

A 、1990B 、1988C 、1992D 、2000 10、若x=4,y=z=3,则下列表达式的值分别是()。

(1)(z>=y>=x)?1:0(2)y+=z, x*=yA 、0 24B 、1 8C 、0 8D 、1 1211、若已定义a 和b 为double 类型,则表达式:a=1,b=a+3/2的值是()。

2011年计算机二级C语言上机题库及答案

2011年计算机二级C语言上机题库及答案

2011年计算机二级C语言上机题库及答案(一部分)一、填空题:给定程序中,函数fun的功能是:对形参s所指字符串中下标为奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出,存入形参p所指字符数组中,形成一个新串。

例如,形参s所指的字符串为:baawrskjghzlicda,执行后p所指字符数组中的字符串应为:aachjlsw。

请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。

注意:源程序存放在考生文件夹的BLANK1.C中。

不得增行或删行,也不得更改程序的结构!给定源程序:#includevoid fun(char *s, char *p){int i, j, n, x, t;n=0;for(i=0; s[i]!='\0'; i++) n++;for(i=1; i< i="i+2)">/**********found**********/___1___;/**********found**********/for(j=___2___+2 ; jif(s[t]>s[j]) t=j;if(t!=i){x=s[i]; s[i]=s[t]; s[t]=x;}}for(i=1,j=0; i/**********found**********/p[j]=___3___;}main(){char s[80]="baawrskjghzlicda", p[50];printf("\nThe original string is : %s\n",s);fun(s,p);printf("\nThe result is : %s\n",p);}解题答案:/**********第一空**********/t=i;/**********第二空**********/for(j=i+2; j/**********第三空**********/p[j]=0;******************************************二、改错题:给定程序MODI1.C中函数fun 的功能是:用下面的公式求π的近似值,直到最后一项的绝对值小于指定的数(参数num )为止:π 1 1 1┄┄≈1 - ┄┄+ ┄┄- ┄┄+ ...4 35 7例如, 程序运行后, 输入0.0001, 则程序输出3.1414。

2010-2011年第二学期《C语言》试卷B

2010-2011年第二学期《C语言》试卷B

课程代码: 座位号:新疆大学2010—2011学年度第二学期期末考试《计算机技术基础 C 语言》试卷B (南区)姓名: 学号: 专业:学院: 班级:2011 年6 月第一部分 选择题(共30分)一、单项选择题(本大题共15小题,每题只有一个正确答案,答对一题得2分,共30分)1、关于C 语言程序说法不正确的是: 【 】 A. C 程序由函数构成,但只有一个main()函数。

B. C 程序中main()函数可以在程序的任何位置。

C. C 程序由main()函数开始执行,由main()结束执行。

D. 在C 程序中main()函数的位置必须在程序的第一行。

2、C 语言中的表示符只能由字母、数字和下划线三种字符组成,且第一个字符必须为: 【 】 A. 字母 B. 字母或下划线 C. 字母、数字和下划线中任一种字符 D. 下划线3、字符型常量在内存中存放的是: 【 】A. ASCII码B. BCD码C. 内部码D. 十进制码4、以下选项中合法的实型常数是:【】A. 5E2.0B.E-3C. .E3D. 1.3E35、若x,i,j和k都是int型变量,则执行语句i=10;j=7;k=32;x=i>j?j: k;后x的值为【】A. 4B. 16C. 32D. 76、C语言中用于结构化程序设计的三种基本结构是:【】A.顺序结构、选择结构、循环结构B.if、switch、breakC.for、while、do-while D.if、for、continue7、以下描述中不正确的是【】A. 语句for(i=0 ; ; i++)表示无限循环B. 语句for( ; ; )表示无限循环C. 语句for()也表示无限循环D. while(1) 表示无限循环8、在C语言中,二维数组元素在内存中的存放顺序是【】A. 由编译器决定B. 按行存放C. 由用户自定义D. 按列存放9、若有以下定义:char a; int b; float c; double d;则表达式a*b+d-c值的类型为【】A. floatB. intC. charD. double10、C语言中函数返回值的类型是由什么决定的?【】A. return语句中的表达式的类型决定B. 调用该函数的主调函数决定C. 调用函数时临时决定D. 定义函数时所指定的函数类型决定11、用数组名作为函数调用时的实参,则传递给形参的是【】A. 数组首元素的地址。

全国计算机二级考试《C语言》真题与答案

全国计算机二级考试《C语言》真题与答案

全国计算机二级考试《C语言》真题与答案全国计算机二级考试《C语言》真题与答案通过真题的练习,我们可以了解计算机等级考试的题型,有针对性的复习。

以下是店铺搜索整理的一份全国计算机二级考试《C语言》真题与答案,供参考练习,预祝考生们考出自己理想的成绩!想了解更多相关信息请持续关注我们店铺!全国计算机二级考试《C语言》真题与答案篇11.下列叙述中正确的是。

A.程序执行的效率与数据的存储结构密切相关B.程序执行的效率只取决于程序的控制结构C.程序执行的效率只取决于所处理的数据量D.以上三种说法都不对正确答案:A2.下列与队列结构有关联的是A.函数的递归调用B.数组元素的引用C.多重循环的执行D.先到先服务的作业调度正确答案:D3.一个栈的初始状态为空。

现将元素1,2,3,A,B,C依次入栈,然后再依次出栈,则元素出栈的顺序是A.1,2,3,A,B,CB.C,B,A,1,2,3C.C,B,A,3,2,1D.1,2,3,C,B,A正确答案:C4.下面属于白盒测试方法的是______。

A.等价类划分法B.逻辑覆盖C.边界值分析法D.错误推测法正确答案:B5.下面对对象概念描述正确的是()。

A.对象间的通信靠消息传递B.对象是名字和方法的封装体C.任何对象必须有继承性D.对象的多态性是指一个对象有多个操作正确答案:A6.软件设计中模块划分应遵循的准则是()。

A.低内聚低耦合B.高内聚低耦合C.低内聚高耦合D.高内聚高耦合正确答案:B7.下面描述中不属于数据库系统特点的是()。

A.数据共享B.数据完整性C.数据冗余度高D.数据独立性高正确答案:C8.数据库设计过程不包括()。

A.概念设计B.逻辑设计C.物理设计D.算法设计正确答案:D9.以下叙述正确的是()。

A.C语言函数可以嵌套调用,例如:fun(fun(x))B.C语言程序是由过程和函数组成的C.c语言函数不可以单独编译D.c语言中除了main函数,其他函数不可作为单独文件形式存在正确答案:A10.以下选项中合法的标识符是A)1_1B)1-1C)_11D)1_ _正确答案:C11.表达式3.6-5/2+1.2+5%2的值是()A.4.3B.4.8C.3.3D.3.8正确答案:D12.设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。

2010-2011C语言试题及答案

2010-2011C语言试题及答案

一、判断共10题(共计10分)第1题(1.0分)题号:1488函数即可以嵌套定义,又可以嵌套调用.答案:N第2题(1.0分)题号:1256unsigned 和void 在C 中都是保留字.答案:Y第3题(1.0分)题号:1280表达式++i 表示对变量i 自加1.答案:Y第4题(1.0分)题号:1282C 语言源程序的基本结构单位是main 函数.答案:N第5题(1.0分)题号:1276字符常量的长度肯定为1.答案:Y第6题(1.0分)题号:1469char a[]={'a','b','c'};char b[]={"abc"};数组a 和数组b 占用的内存空间大小不一样.答案:Y第7题(1.0分)题号:1249若有int i=10,j=2; 则执行完i*=j+8;后i 的值为28.答案:N第8题(1.0分)题号:33int i,*p=&i;是正确的C 说明。

答案:Y第9题(1.0分)题号:1250While 循环语句的循环体至少执行一次. 答案:N第10题(1.0分)题号:1510有数组定义int a[2][2]={{1},{2,3}};则a[0][1] 的值为0.答案:Y二、单项选择共30题(共计30分)第1题(1.0分)题号:456执行下面程序后,输出结果是()。

main(){ a=45,b=27,c=0;c=max(a,b);printf("%d\n",c);} int max(x,y)int x,y;{ int z;if(x>y) z=x;else z=y;return(z);}A:45B:27C:18D:72答案:A第2题(1.0分)题号:437下列数组说明中,正确的是()。

A:int array[][4];B:int array[][];C:int array[][][5];D:int array[3][];答案:A第3题(1.0分)题号:2396下面有关for 循环的正确描述是()A:for 循环只能用于循环次数已经确定的情况B:for 循环是先执行循环体语句,后判断表达式C:在for 循环中,不能用break 语句跳出循环体D:for 循环的循环体语句中,可以包含多条语句,但必须用花括号括起来答案:D第4题(1.0分)题号:2817以下程序的输出结果是().main(){int i,j,k,a=3,b=2;i=(--a==b++)?--a:++b;j=a++;k=b;printf("i=%d,j=%d,k=%d\n",i,j,k);}A:i=2,j=1,k=3B:i=1,j=1,k=2C:i=4,j=2,k=4D:i=1,j=1,k=3答案:D2010-2011C语言试题及答案第5题(1.0分)题号:2866若有下列定义,则对a 数组元素地址的正确引用是().int a[5],*p=a;A:*(p+5)B:*p+2C:*(a+2)D:*&a[5]答案:C第6题(1.0分)题号:711下列选项中正确的语句组是()。

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

浙江科技学院考试试卷浙江科技学院2010 - 2011 学年第 2 学期考试试卷 A 卷考试科目 C 语言程序设计 考试方式 闭 完成时限 2小时 拟题人 题库 审核人 批准人 2011年6月25日 建工、生化、艺术、轻工、理学 学院 2010 年级 理工科专业命题:说明:1. 应将全部答案写在答卷纸对应的题号处;否则作无效处理;2. 编程题应写明题号,若答卷纸不够,请写在背面,不要另添卷纸;3. 考试完成后,必须将试卷与答卷同时交回。

一、判断题(本大题共12小题,每题小1分,共12分)1. 在定义数组时,数组的长度可以用整型常量或者整型变量表示。

2. 执行“int x=3,y=4; float z ;z=x/y;”后,z 的值为0.75。

3. C 语言中,关系表达式的值是1和0,分别表示“真”和“假”。

4. else 语句一定要与if 语句配对使用,程序中else 语句的个数一定小于或者等于if 语句的个数。

5. C 语言是一种结构化程序设计语言,结构化程序由顺序、选择、循环三种基本结构组成。

6. 函数中可以使用多个return 语句,也可以没有return 语句。

如果使用多个return语句可以向主函数返回多个值。

7. 使用”w”方式打开一个已经存在的文本文件,将在该文件原有数据的基础上添加新的数据。

8. 定义语句“char s[]={“Hello ”};”和“char s[]={…H ‟, …e ‟, …l ‟, …l ‟, …o ‟};”定义的两个字符数组是等价的。

专业班 学 姓 ………………………………………………………………………装订线……………………………………………………………………………………9.调用函数时,若实参是一个数组名,则向函数传送的是数组的首地址。

10.使用do……while 语句实现循环时,不管条件真假,都将首先无条件的执行一次循环。

11.假定int类型变量占用两个字节,若有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是6。

12.语句“c=*p++”的执行过程是p所指向的存储单元的值赋值给变量c,然后p变量自增。

二、单选题(本大题共20小题,每题1分,共20分)1.一个C程序总是从()开始执行。

A. 书写顺序的第一个函数B. 书写顺序的第一条执行语句C. 主函数main()D. 不确定2.程序设计一般包含以下4个步骤,其中首先应该完成的是()。

A. 设计数据结构和算法B. 建立数学模型C. 编写程序D. 调试运行程序3.以下不能..正确计算代数式2((0.5))3sin值的C语言表达式是()。

A. 1/3*sin(1/2)*sin(1/2)B. sin(0.5)*sin(0.5)/3C. pow(sin(0.5),2)/3D. 1/3.0*pow(sin(1.0/2),2)4.下列语句执行后,变量n的值是()。

for(i=1;i<=3;i++){ n=1;n=n*i;}A. 1B. 3C. 4D. 65.对下列语句的描述正确的是()。

int i=1;do{ i++;}while(i=10);A. 执行后i的值是1B. 执行后i的值是2C. 执行后i的值是10D. 死循环6.能正确表示逻辑关系“a≥10或a≤0”的C语言表达式是()。

A. a>=10 or a<=0B. a>=0|a<=10C. a>=10 &&a<=0D. a>=10||a<=07.设a、b、c、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为()。

A. 0B. 1C. 2D. 语法错误8.下列程序段不是..死循环的是()。

A. int i=100;while(1){ i=i%100+1;if(i>100)break;} B. int k=0;do{++k;} while(k>=0);C. for( ; ;);D. int s=36;while(s) ––s;9.已知int x=10, y=20, z=30;,以下语句执行后x、y、z的值是()。

if (x>y) z=x; x=y; y=z;A. x=10, y=20, z=30B. x=20, y=30, z=30C. x=20, y=30, z=10D. x=20, y=30, z=2010.请阅读以下程序:#include <stdio.h>void main(){ float a,b;scanf ("%f",&a);if(a<0.0) b=0.0;else if ((a<5.0) && (a!=2.0)) b=1.0/(a+2.0);else if (a<10.0) b=1.0/a;else b=10.0;printf("%f\n",b);}若运行时输入2.0<回车>,则上面程序的输出结果是()。

A. 0.000000B. 0.500000C. 1.000000D. 0.25000011.有以下程序段:int n=0,p;do{scanf("%d",&p);n++;}while(p!=12345 && n<3);此处do-while循环的结束条件是()。

A. p的值不等于12345并且n的值小于3B. p的值等于12345并且n的值大于等于3C. p的值不等于12345或者n的值小于3D. p的值等于12345或者n的值大于等于312.若有如下定义,则下面在scanf函数调用语句中对结构体成员的引用不正确...的.是( )。

struct pupil{char name[20];int age;int sex;}pup[5],*p;A. scanf("%d",p.age);B. scanf("%s",pup[0].name);C. scanf("%d",&pup[0].age);D. scanf("%d",&(pup[1].sex));13.有如下数组定义语句“int a[2][3]={1,2,3,4,5,6};”,则*(a+1)+2的值是()。

A. 2B. 6C. 元素2的地址D. 元素6的地址14.执行以下程序后,输出结果是()。

main(){ int a[10]={1,2,3,4,5,6,7,8,9,0},*p;p=a;printf(“%d ”,*p); printf(“%d\n”,*(p+8));}A. 1 0B. 1 7C. 1 8D. 1 915.有如下程序,执行后的输出结果是()。

#define M 3#define N M+1#define NN N*N/2main(){ printf(“%d\n”,NN);}A. 3B. 4C. 6D. 816.设x,y,i,j均为整型变量,且x=10,y=3,则执行i=x––; j= ––y;语句后,i和j的值是()。

A. 10,3B. 9,3C. 9,2D. 10,217.下面程序的输出结果为()。

void main(){ char *p;char s[]= "ABCD";for(p=s;p<s+4;p++) printf("%s\n",p);}A. ABCDBCDCDD B. ABCDC. DCBAD. ABCDABCABA18.表达式“strcmp("Windows98","Windows95")”的值为()。

A. 0B. 大于0C. 小于0D. 无法比较19.返回值为void的函数,其含义是()。

A. 调用函数之后,被调用的函数没有返回值B. 调用函数之后,被调用的函数不返回C. 调用函数之后,被调用的函数返回值为任意类型D. 以上三种说法均不正确20.求0到50的总和,不正确...的程序段是()。

A. int i,sum;sum=0;for(i=0;i<51;i++) sum+=i; B. int i,sum;for(i=0,sum=0;i<51;sum+=i++);C. int i,sum;i=0;sum=0;for(i<51) {sum+=i;i++;} D. int i,sum=0;for(i=0; ;i++){ if(i>50) break;sum+=i;}三、程序填空题(本大题共4小题,每空2分,共24分)1.以下程序的功能是计算:s=1+12+123+1234+12345。

请填空。

#include <stdio.h>void main(){ int t=0,s,i;___(1)___;for( i=1; i<=5; i++) {t=i+__(2)___;s=s+t;}printf("s=%d\n",s);}(1) A. s=0 B. s=1C. int n=0D. int n=1(2) A. n B. n*10C. t*10D. t2.下面程序是从键盘输入学号,然后输出学号中百位数字是3的学号,输入0时结束循环。

请选择填空。

#include <stdio.h>void main(){ long int num;do {scanf("%ld",&num);if(___(3)___ ) printf("num=%ld\n",num);}while (___(4)___ );}(3) A. num%100/10==3 B. num/100%10==3C. num%10/10==3D. num/10%10==3(4) A. ! num B. num==0C. numD. num==13.函数fun实现把数字字符从源字符串中删除,其余字符保持原样。

void fun( char s[ ] ){ int i=0,j;while ( (5) )if ( (s[i]>=‟0‟ &&s[i]<=‟9‟) )for ( j= i ; s[j]!=‟\0‟; j++ ) (6) ;else i++;}(5) A. s[i]==0 B. s[i]<‟\0‟C. s[i]!=‟\0‟D. s[i]==‟\0‟(6) A. s[j-1]=s[j] B. s[j]=s[j-1]C. s[j+1]=s[j]D. s[j]=s[j+1]4.输出50到70之间的所有素数,其中函数isprime(m)用于判断m是否为素数,若m为素数则返回1,否则返回0。

相关文档
最新文档