文档库 最新最全的文档下载
当前位置:文档库 › C语言基础知识部分模拟试题

C语言基础知识部分模拟试题

C语言基础知识部分模拟试题
C语言基础知识部分模拟试题

C语言基础知识部分模拟试题

[1] 下面叙述中正确的是__B__。

A.调用函数时的实参只能是有确定值的变量

B.return( )语句中的括号中,可以是变量,常量或有确定值的表达式

C.C语言中,函数调用时实参变量和形参变量间的参数传递方式都不是值传递

D.实参和形参若类型不匹配,编译时将报错

[2]下面叙述中错误的是__A__

A.主函数中定义的变量在整个程序中都是有效的

B.在其它函数中定义的变量在主函数中也不能使用

C.形式参数也是局部变量

D.复合语句中定义的函数只在该复合语句中有效

[3]下列说法中正确的是__A__。

A.带参数的宏定义中的参数是没有类型的

B.宏展开将占用程序的运行时间

C.宏定义命令是C语言中的一种特殊语句

D.使用#include命令包含的头文件必须以“.h"为后缀

[4] 完成将文件指针fp重新指向文件的开头位置的函数是__D__。

A.feof(fp)

B.ferror(fp)

C.fseek(fp)

D.rewind(fp)

[5] 下面说法中错误的是_D___。

A.以二进制形式输出文件,则文件的内容与内存中完全一致

B.定义:int a=123;若以ASCII文件的形式存放,变量a将在磁盘上占三个字节

C.C语言中,没有输入输出语句,对文件的读写都是用库函数来实现的

D.C语言的文件中,数据以记录为界线,便于区分

[6]. C语言中,switch后的括号内表达式的值可以是__D__。

A.只能为整型

B.只能为整型,字符型,枚举型

C.只能为整型和字符型

D.任何类型

[7.] 若函数的形参为一维数组,则下列说法中正确的是_B___。

A.调用函数时的对应实参必为数组名

B.形参数组可以不指定大小

C.形参数组的元素个数必须等于实参数组的元素个数

D.形参数组的元素个数必须多于实参数组的元素个数

[8]. 系统的标准输出文件是_D___。

A.键盘

B.硬盘

C.内存

D.显示器

[9]. C语言的switch语句中case后__B__。

A.只能为常量

B.只能为常量或常量表达式

C.可为常量或表达式或有确定值的变量及表达式

D.可为任何量或表达式

[10]. 下面叙述中正确的是__C__。

A.对于用户自己定义的函数,在使用前必须加以说明

B.说明函数时必须明确其参数类型和返回类型

C.函数可以返回一个值,也可以什么值也不返回

D.空函数在不完成任何操作,所以在程序设计中没有用处

[11]. 整型变量x=1,y=3,经下列计算后,x的值不等于6的是_C___。

A. X=(x=1+2,x*2)

B. X=y>2?6:5

C. X=9-(--y)-(--y)

D. X=y*4.8/2

[12.] 下面叙述中正确的是___B_。

A.全局变量在定义它的文件中的任何地方都是有效的

B.全局变量在程序的全部执行过程中一直占用内存单元

C.同一文件中的变量不能重名

D.使用全局变量有利于程序的模块化和可读性的提高

[13.] 下列变量中合法的是__C__。

A. B.C.Tom

B. 3a6b

C. _6a7b

D. $ABC

[14]. 下面叙述中错误的是__C__。

A.函数的形式参数,在函数未被调用时就不被分配存储空间

B.若函数的定义出现在主调函数之前,则可以不必再加说明

C.若一个函数没有return语句,则什么值也不会返回

D.一般来说,函数的形参和实参的类型应该一致

[15]. 下面说法中错误的是__D__。

A.共用体变量的地址和它各成员的地址都是同一地址

B.共用体内的成员可以是结构变量,反之亦然

C.在任一时刻,共用体变量的各成员只有一个有效

D.函数可以返回一个共用体变量

[16]. C语言函数的隐含存储类别是__D__。

A.static

B.auto

C.register

D.extern

[17]. C程序的基本结构单位是__C__。

A.文件

B.语句

C.函数

D.表达式

[18]. C语言的if语句中,用作判断的表达式为__A__。

A.任意表达式

B.逻辑表达式

C.关系表达式

D.算术表达式

[19]. 下列说法中正确的是__A__。

A.在进行宏定义时,可以引用已经定义过的宏名

B.在宏名作用域内所有与宏名相同的字符串都将被替换

C.宏展开时若出现语法错误,将立即报错

D.宏名必须是大写字母

[20]有宏定义:#define E 2.718则编译预处理时将E替换成一个__D__。

A.单精度常量

B.单精度变量

C.双精度变量

D.字符串

[21] 对于定义,char *aa[2]={"abcd","ABCD"},选项中说法正确的是_D___。

A.aa数组元素的值分别是"abcd"和"ABCD"

B.aa是指针变量,它指向含有两个数组元素的字符型一维数组

C.aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址

D.aa数组的两个元素中各自存放了字符'a'和'A'的地址

[22]. 任何一个C语言的可执行程序都是从__B__开始执行的。

A.程序中的第一个函数

B.main( )函数的入口处

C.程序中的第一条语句

D.编译预处理语句

C简单程序部分模拟试题

[1]. 以下程序的执行结果是___B_____。

main()

{ int x = 0, s = 0;

while( !x != 0 ) s += ++x;

printf( "%d ",s );}

A.0

B.1

C.语法错误

D.无限循环

[2]. 若有下面的说明和定义,则sizeof(struct aa)的值是_____D___。struct aa

{ int r1;double r2;float r3;

union uu { char u1[5];

long u2[2];} ua;

}mya;

A.30

B.29

C.24

D.22

[3]. 以下程序的执行结果是_____B___。

main()

{ int a = 1, b = 10;

do { b -= a;a++;} while( b-- < 1 );

printf( "a=%d,b=%d \n ",a,b );}

A.a=3,b=11

B.a=2,b=8

C.a=1,b=-1

D.a=4,b=9

[4]. 以下程序的执行结果是______D__。

main()

{ static int x[]={0,1,2,3,4,5,6,7,8,9 };

int s, i, *p;

s=0;p=&x[0];

for( i=1;i<10;i+=2 ) s+=*( p + i );

printf( "%d ",s );}

A.55

B.16

C.18

D.25

[5]. 以下程序的执行结果是_____C___。

void num()

{ extern x, y;int a = 15, b = 10;

x = a - b;y = a + b;}

int x , y ;

main()

{ int a = 7, b = 5;

x = a + b;y = a - b;num();printf( "%d , %d ",x,y);}

A.12 , 2

B.不确定

C.5 , 25

D.1 , 12

[6]. 以下程序的执行结果是_____D___。

main()

{ static int x[]={0,1,2,3,4,5,6,7,8,9 };

int s, i, *p;

s=0;p=&x[0];

for( i=1;i<10;i+=2 ) s+=*( p + i );

printf( "%d ",s );}

A.55

B.16

C.18

D.25

[7]. 以下程序的执行结果是______C__。

main()

{ int num = 0;

while( num <= 2 ) { num++;printf( "%d,",num );} }

A.0,1,2,

B.1,2,

C.1,2,3,

D.1,2,3,4,

[8]. 以下程序的执行结果是_______B_。

main()

{ int x = 2, y = -1, z = 2;

if( x

if( y<0 ) z = 0;else z += 1;

printf( " %d",z );}

A.3

B.2

C.1

D.0

[9]. 设有以下说明和定义,则输出语句printf("%d",sizeof(struct date)+sizeof(max));的执行结果是_____B___。

typedef union

{ long i;int k[5];char c;} DATE;

struct date

{ int cat;DATE cow;double dog;} too;

DATE max;

A.26

B.30

C.18

D.8

[10]. 若有下面的说明和定义,则sizeof(struct aa)的值是_____D___。

struct aa

{ int r1;double r2;float r3;

union uu { char u1[5];

long u2[2];} ua;

}mya;

A.30

B.29

C.24

D.22

[11]. 以下程序的执行结果是_____B___。

main()

{ int y = 2;

do { printf( "*" );y--;} while( !y == 0 );}

A.*

B.**

C.***

D.空格

[12]. 以下程序的输出结果是___B_____。

main()

{ int a[]={1,2,3,4,5,6}, *p=a;

*(p+2)+=2;

printf("%d,%d\n",*p,*(p+2));}

A.0,5

B.1,5

C.0,4

D.1,4

[13]. 以下程序的执行结果是____B____。

increment()

{ static int x=0;x+=1;printf("%d " , x );} main()

{ increment();increment();increment();}

A.1 1 1

B.1 2 3

C.0 1 2

D.0 0 0

[14]. 以下程序的执行结果是______D__。

main()

{ int w = 1, x = 2, y = 3, z = 4;

w =( w < x ) ? x : w;

w =( w < y ) ? y : w;

w =( w < z ) ? z : w;

printf( "%d " , w );}

A.1

B.2

C.3

D.4

[15]. 以下程序的输出结果是____B____。

main()

{ int y=30;prt(&y);}

prt(int *x)

{ printf("%d,%d\n",*x,++*x);}

A.30,30

B.31,31

C.30,31

D.31,32

[16]. 以下程序的输出结果是_____A___。

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", z, y, x);}

A.30,20,10

B.10,20,30

C.456,567,678

D.678,567,456

[17]. 循环语句for(a=0,b=0;a<3 && b!=3;a++,b+=2) a++;___C_____

A.是无限循环

B.循环次数不定

C.循环2次

D.循环4次

[18]. 以下程序的执行结果是_____D___。

main()

{ static char a[80] = "AB" , b[80] = "LAMP" ;int i = 0;

strcat( a , b );

while( a[i++] != '\0' ) b[i] = a[i];

puts( b);}

A.LB

B.ABLAMP

C.AB

D.LBLAMP

[19]. 执行下列程序段后,m的值是__D______。

int w=2,x=3,y=4,z=5,m;

m=(w

m=(m

m=(m

A.4

B.3

C.5

D.2

[20]. 若x=2,y=3则x||y的结果是_____B___。

A.0

C.2

D.3

[21]. 以下程序的执行结果是_____B___。

main()

{ int x = 0, s = 0;

while( !x != 0 ) s += ++x;

printf( "%d ",s );}

A.0

B.1

C.语法错误

D.无限循环

[22]. 对于如下的结构定义,若对变量person的出生年份进行赋值,_____C___是正确的赋值语句。

struct date

{ int year,month,day;};

struct worklist

{ char name[20];

char sex;

struct date birthday;

}person;

A.year=1976

B.birthday.year=1976

C.person.birthday.year=1976

D.29 person.year=1976

[23]. 以下程序的执行结果是_____B___。

main()

{ int a = 1, b = 10;

do { b -= a;a++;} while( b-- < 1 );

printf( "a=%d,b=%d \n ",a,b );}

A.a=3,b=11

B.a=2,b=8

C.a=1,b=-1

D.a=4,b=9

[24]. 以下程序的执行结果是____B____。

#define MOD( x , y ) x%y

{ int z, a=15, b=100;

z=MOD( b, a );

printf("%d ",z++ );}

A.11

B.10

C.6

D.宏定义不合法

[25]. 以下程序的执行结果是_____C___。

main()

{ static char s[20]="abcd";char *sp=s;

sp++ ;puts( strcat( sp , "ABCD" ));}

A.abcdABCD

B.aABCD

C.bcdABCD

D.ABCD

[26]. 以下程序的执行结果是___C_____。

main()

{ int i;

for( i=1;i<=5;i++ )

{ if( i%2 ) printf( "*" );

else continue;

printf("#");}

printf( "$\n") ;}

A.*#*#$

B.#*#*#*$

C.*#*#*#$

D.#*#*$

[27]. 设有以下说明和定义,则输出语句printf("%d",sizeof(struct date)+sizeof(max));的执行结果是_____B___。

typedef union

{ long i;int k[5];char c;} DATE;

struct date

{ int cat;DATE cow;double dog;} too;

DATE max;

A.26

B.30

C.18

C语言复杂程序部分模拟试题

[1]. 下面函数用来求出两个整数之和,并通过形参传回两数相加之和值,请填空。

int add(int x, int y,____int *z__________)

{ *z=x+y;}

[2]. 下面程序的功能是将字符串a 下标值为偶数的元素由小到大排序,其它元素不变。请填空。

#include "stdio.h"

main()

{ char a[]="labchmfye",t;

int i,j;

for(i=0;i<7;i+=2)

for(j=i+2;_____j<9_________ ;j++)

if(__(a[I]>a[j])&&(j%2= =0)____________)

{ t=a[i];a[i]=a[j];a[j]=t;j++;}

puts(a);putchar('\n');}

[3]. 以下程序的输出结果是__ga______。

main()

{ char a[]="programming", b[]="language";

char *p1=a, *p2=b;

int i;

for(i=0;i<7;i++)

if(*(p1+i)==*(p2+i)) printf("%c",*(p1+i));}

[4]. 以下程序运行后,输出结果是__a=2,b=1______。

#include

{ int x=1, y=0, a=0, b=0;

switch(x)

{ case 1: switch(y)

{ case 0: a++;break;

case 1: b++;break;}

case 2: a++;b++;break;

case 3: a++;b++;}

printf("\na=%d, b=%d", a, b);}

[5]. 函数pi的功能是根据以下近似公式求π值,请在下面的函数中填空,完成求π的功能。

(π*π)/6=1+1/(2*2)+1/(3*3)+…+1/(n*n)

#include

double pi(long n)

{ double s=0.0, m;long i;

for(i=1;i<=n;i++) { m=1.0/(i*i);s=______________;}

return( sqrt( 6*s ) );}

[6]. 以下程序运行后,如果从键盘上输入:

book<回车>

book<空格><回车>

则输出结果是________。

#include

main()

{ char a1[80],a2[80],*s1=a1,*s2=a2;

gets(s1);gets(s2);

if( !strcmp(s1,s2)) printf("*");

else printf("#");

printf("%d\n",strlen(strcat(s1,s2)));}

[7]. 以下程序运行后,输出结果是__x=8______。

main()

{ int j, k, x=0;

for(j=0;j<2;j++)

{ x++;

for(k=0;k<=3;k++)

{ if(k%2) continue;

x++;}

x++;}

printf("x=%d\n", x);}

[8]. 以下程序运行后的输出结果是__10010______。

main()

{ int y=18,i=0,j,a[8];

do

{ a[i]=y%2;i++;

y=y/2;

} while(y>=1);

for(j=i-1;j>=0;j--) printf("%d",a[j]);

printf("\n");}

[9]. 下面程序的功能是将字符串a 下标值为偶数的元素由小到大排序,其它元素不变。请填空。

#include "stdio.h"

main()

{ char a[]="labchmfye",t;

for(i=0;i<7;i+=2)

for(j=i+2;____j<9__________ ;j++)

if(_(a[I]>a[j])&&(j%2= =0)_____________)

{ t=a[i];a[i]=a[j];a[j]=t;j++;}

puts(a);putchar('\n');}

[10]. 以下程序的功能是从键盘上输入一行字符并存入一个字符数组中,然后输出该字符串,请填空。

#include "stdio.h"

main()

{ char str[81], *sptr;

int i;

for(i=0;i<80;i++)

{ str[i]=getchar();

if(str[i]=='\n') break;}

str[i]=______________ ;

sptr=str;

while(*sptr) putchar(*sptr______________ );}

[11]. 下面程序能找出数组中最大值和该值所在的元素下标,数组元素值从键盘输入,请填空。

main()

{ int x[10],*p1,*p2,k;

for(k=0;k<10;k++) scanf("%d",x+k);

for(p1=x, p2=x;p1-x<10;p1++)

if(*p1>*p2) p2=______________;

printf("MAX=%d,INDEX=%d\n",*p2,______________);}

[12]. 下面程序把从终端读入的10个整数以二进制方式写到一个名为bi.dat的新文件中,请填空。

#include "stdio.h"

FILE *fp;

main()

{ int i, j;

if((fp=fopen(_”bi.dat”_______, "wb"))==NULL) exit(0);

for(i=0; i<10; i++)

{ scanf("%d", &j);

fwrite(&j, sizeof(int), 1,__fp______);

}

fclose(fp);

}

[13]. 以下程序是实现输出x,y,z 三个数中的最大者。

{ int x = 4, y = 6;z = 7;

int u , ____v_____ ;

if(x>y) u = x;else u = y;

if(u>z) v = u;else ____v=z__________;

printf("the max is %d",v );}

[14]. 下面程序的功能是从键盘输入的10个整数中,找出第一个能被7整除的数,若找到,打印此数后退出循环;若未找到,打印"not exist"。请填空。

main()

{ int i, a;

for( i=1;i<=10;i++ )

{ scanf("%d", &a);

if(a%7==0) { printf("%d", a);____break__________ ;} }

if( i==11) printf("not exist \n");}

[15]. 以下程序运行后,如果从键盘上输入:

book<回车>

book<空格><回车>

则输出结果是________。

#include

main()

{ char a1[80],a2[80],*s1=a1,*s2=a2;

gets(s1);gets(s2);

if( !strcmp(s1,s2)) printf("*");

else printf("#");

printf("%d\n",strlen(strcat(s1,s2)));}

[16]. 设有以下结构类型说明和变量定义,则变量 a 在内存所占字节数是____22__________。

struct stud

{ char num[6];

int s[4];

double ave;

} a, *p;

[17]. 下面程序能找出数组中最大值和该值所在的元素下标,数组元素值从键盘输入,请填空。

main()

{ int x[10],*p1,*p2,k;

for(k=0;k<10;k++) scanf("%d",x+k);

for(p1=x, p2=x;p1-x<10;p1++)

if(*p1>*p2) p2=______________;

printf("MAX=%d,INDEX=%d\n",*p2,______________);}

[18]. 以下程序可计算10名学生1门课程的平均分,请填空。

float average( float array[10] )

{ int i;float aver, sum = array[0];

for( i=1;i<10;i++ ) sum += array[i];

aver = sum /10;r eturn aver;}

main()

{ float score[10], aver;int i;

for( i=0;i<10;i++ ) scanf("%f",____&score[ i]__________);

aver =_____average(score)_________;

printf( "average score is %5.2f \n",aver );}

[19]. 以下fun函数的功能是累加数组元素中的值。n 为数组中元素的个数,累加的和值放入x 所指的存储单元中,请填空。

fun(int b[],int n,int *x)

{ int k, r=0;

for(k=0;______________ ;k++) r=r+b[k];

______________ = r;}

[20]. 下面程序由终端键盘输入字符,存放到文件a.dat中,用!结束输入,请填空。

main()

{ FILE *fp;char ch;

if((fp = fopen("a.dat","w")) == NULL )

{ printf("cannot open \n" );exit( 0 );}

printf( "Enter data : \n " );

while(___ch=getchar()!=’!’_______________ ) fputc(___ch,fp___________ );

fclose(fp);}

[21]. 函数fun的功能是使一个字符串按逆序存放,请填空。

void fun(char str[])

{ char m;int i,j;

for(i=0, j=strlen(str);i<____j-1__________ ;i++, j--)

{ m=str[i];str[i]= ____str[j-1]__________;str[j-1]=m;}

C语言基础知识_测试题

C语言程序设计基础测试题 一、单选 [1] 下面叙述中错误的是____。 A. 复合语句中定义的函数只在该复合语句中有效 B. return( )语句中的括号中,可以是变量,常量或有确定值的表达式 C. 形式参数也是局部变量 D. 主函数中定义的变量在整个程序中都是有效的 [2]下列说法中正确的是____。 A.带参数的宏定义中的参数是没有类型的 B.宏展开将占用程序的运行时间 C.宏定义命令是C语言中的一种特殊语句 D.使用#include命令包含的头文件必须以“.h"为后缀 [3.] 若函数的形参为一维数组,则下列说法中正确的是____。 A.调用函数时的对应实参必为数组名 B.形参数组可以不指定大小 C.形参数组的元素个数必须等于实参数组的元素个数 D.形参数组的元素个数必须多于实参数组的元素个数 [4]. 系统的标准输出设备是____。 A.键盘 B.硬盘 C.内存 D.显示器 [5] 下面叙述中正确的是____。 A.全局变量在定义它的文件中的任何地方都是有效的 B.全局变量在程序的全部执行过程中一直占用内存单元 C. C语言的switch语句中case后可为常量或表达式或有确定值的变量及表达式 D. 说明函数时必须明确其参数类型和返回类型 [6]. C程序的基本结构单位是____。 A.文件 B.语句 C.函数 D.表达式 [7] 对于定义,char *aa[2]={"abcd","ABCD"},选项中说法正确的是____。 A.aa数组元素的值分别是"abcd"和"ABCD" B.aa是指针变量,它指向含有两个数组元素的字符型一维数组 C.aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址 D.aa数组的两个元素中各自存放了字符'a'和'A'的地址 [8]. 任何一个C语言的可执行程序都是从____开始执行的。 A.程序中的第一个函数 B.main( )函数的入口处

C语言程序设计基础试题及答案

第一部分C语言基础 一、选择题 1、以下正确得C语言标识符就是() A。%X B。a+b?C.a123 D.test! 2、已定义int a,b;则以下不正确得C语句就是() A.a*=5;??B。b/=2;? C.a+=1、75;?D.b&&=a; 3、若x、i、j与k都就是整型变量,则执行下面表达式后x得值为( ) x=(i=4,j=16,k=32) A.4?B.16 ?C.32 D.52 4、C语言中得标识符只能由字母、数字与下划线三种字符组成,且第一个字符( ) A.必须就是字母???B.必须为下划线? C.必须为字母或下划线D.可以就是字母、数字、下划线中得任一字符 5、下面正确得字符常量就是( ) A.“c”? B。’\\”? C.‘w’??D.” 6、设int a=2,b=0,c;则执行语句c+=b&&a--后, c得结果为( )。 A.0,1B.1,0 ?C.2,0 D.不确定 7、以下不正确得C语言标识符就是()?A) int B)a_1_2?C)ab1exe D)_x 8、以下就是正确得C语言标识符就是( )。?A)#define?B)_123 C) %d D) \n 9、下列四组字符串中都可以用作C语言程序标识符得一组就是() 。?A) prin tB)i\am C)Pxq D)str_l ???oodbs tart$it line# _3d one_half My-〉bookCpp ? pow 10、下面各选项组中,均就是C语言关键字得组就是()。?A)auto,enu

m,include B)switch,typedef,continue?C)signed,union,scanf?D)if,s truct,type 11、下列不属于C语言关键字得就是( ) 。 A)default?B)register C)enum ?D)external 12、C语言程序从main()函数开始执行,所以这个函数要写在( )。?A) 程序文件得开始?B)程序文件得最后?C)它所调用得函数得前面 D) 程序文件得任何位置 13、下列关于C语言得叙述错误得就是( ) A)大写字母与小写字母得意义相同?B) 不同类型得变量可以在一个表达式中 C)在赋值表达式中等号(=)左边得变量与右边得值可以就是不同类型?D) 同一个运算符号在不同得场合可以有不同得含义 14、在C语言中,错误得int类型得常数就是( ) 。?A)32768?B)0 C)037?D) 0xAF 15、将字符g赋给字符变量c,正确得表达式就是( )。 A) c=\147 ?B)c="\147" ?C)c='\147' 16、下列转义字符中错误得一个就是( )。 A) ’\000’ B)'\0014' ?C) ’\x111’ D) ’\2’ 17、将空格符赋给字符变量c,正确得赋值语句就是( )。 A) c=’\0’ B) c=NULL C)c=0 D)c=32 18、已知:char a=’\70’;则变量a中()。 A)包含1个字符?B)包含2个字符?C) 包含3个字符?D) 说明非法 19、字符串"\”EOF\n=-\61\””得长度就是( )。 A)8 ?B) 9?C)14?D)非法字符串

年C语言程序设计基础期末考试试卷‘B’及答案

年C语言程序设计基础期 末考试试卷‘B’及答案 The following text is amended on 12 November 2020.

一、单项选择题 1. 在C语言中,下面字符串能用作变量名的是( )。 A、a+b B、auto C、2-and D、a2 2. 若double x=2,y;则执行y=x+3/2;后,y的值是( )。 A、 B. C. D. 3 3. 下列关于C语言中字符常量与字符串常量的叙述中,错 误的是( )。 A、字符常量是用单撇号括起来的一个字符 B、空格字符也可用作字符常量 C、字符串常量是用单撇号括起来的一个字符序列 D、字符串常量是用双撇号括起来的一个字符序列 4. 若有以下变量说明和数据的输入方式,则正确的输入语 句为( )。

变量说明:float x1,x2; 数据的输入方式:<回车> <回车> A、scanf(“%f,%f”,&x1,&x2); B、scanf(“%f%f”,&x1,&x2); C、scanf(“%,%”,&x1,&x2); D、scanf(“%%”,&x1,&x2); 6. 在一个源文件中定义的全局变量的作用域为()。 A. 本文件的全部范围 B. 从定义该变量开始至本文件结束 C. 本函数的全部范围 D. 本程序的全部范围

7. 当调用函数时,实参是一个数组名,则向函数传送的是( )。 A、数组的长度 B、数组的首地址 C、数组每一个元素的地址 D、数组每个元素中的值 8.若j为整型变量,则下面while循环( )。 j=10; while(j!=0) j=j-1; A、执行0次 B、执行1次 C、执行10次 D、执行无限次 9. 在while(x)语句中的x与下面条件表达式等价的 是:( )。 A、x!=0 B、 x==1 C、x!=1 D、x==0 10. 以下对C语言函数的描述中,正确的是( )。 A、调用函数时,参数可以是表达式

C语言试题及答案

第1章 C语言概述习题 1. 单项选择题 (1) C 语言是在 B 语言的基础上产生的。 A. A B. B C. D D. E (2) 在 C 语言中,每个语句必须以 D 结束。 A. 回车符 B. 冒号 C. 逗号 D. 分号 (3) 标识符和关键字间,要用 C 隔开。 A. 回车符 B. 冒号 C. 空格 D. 分号 (4) 用 C 语言编写的源文件经过编译,若没有产生编译错误,则系统将( B )。 A. 生成可执行目标文件 B. 生成目标文件 C. 输出运行结果 D.自动保存源文件 (5) 下列说法中正确的是( B )。 A. 由于 C 源程序是高级语言程序,因此一定要在 TC 软件中输入 B. 由 C 源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入 C. 由于C 程序是高级语言程序,因此输入后即可执行 D. 由于 C 程序是高级语言程序,因此它由命令组成 (6) 下列说法中正确的是( A )。 A. C 语言程序由主函数和 0 个或多个函数组成 B. C 语言程序由主程序和子程序组成 C. C 语言程序由子程序组成 D. C 语言程序由过程组成 (7) 下列说法中错误的是( D )。 A. 主函数可以分为两个部分:主函数说明部分和主函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 2. 填空题 (1) C 语言只有 32 个关键字和 9 种控制语句。 (2) C 语言是一种“中级语言”,既具有高级语言的特点又具有低级语言的特点;既适合于开发系统软件又适合于编写应用程序。 (3) 每个源程序有且只有一个主函数,系统总是从该函数开始执行C语言程序。 (4) 在 C 语言程序中允许出现的字符集是 ASCII码字符集。 (5) C 语言的程序中有特殊含义的英语单词称为保留字。 (6) C 语言标识符的长度是前 8 位有效。 (7) C 语言中,标识符的定义规则是以字母或下划线为开头。 (8) C 语言程序的注释可以出现在程序中的任何地方,它总是以 /* 符号作为开始标记,以 */ 符号作为结束标记。 第2章数据类型运算符和表达式习题 1. 单项选择题 (1) 以下选项中,正确的 C 语言整型常量是 D 。 A. 32L B. 510000 C. -1.00 D. 567 (2) 以下选项中, D 是不正确的 C 语言字符型常量。

C语言考试试题基础版

一、选择题 1. 在每个C 程序中都必须包含有这样一个函数,该函数的函数名为 。 A. main B. MAIN C. name D. function 2. 在以下关于C 语言的注释的叙述中,不正确的是 。 A .注释可用"/*"、"*/"形式表示,也可用"//"形式表示 B .编译器在编译一个程序时,将跳过注释,不对其进行处理 C .编译器在编译一个程序时,可发现注释中的单词拼写错误 D .程序中注释的多少不会影响所生成的可执行文件的长度 3. 以下叙述不正确的是 。 A .在C 程序中,严格区分大小写字母 B .一个C 源程序有且仅有一个main 函数 C .在C 程序中,注释只能位于一条语句的后面 D .一个C 程序总是从main 函数开始执行 4. 下列合法的标识符为 A. abde+ B. #KDJF C. 67KDJ D. DK3_ 5. 关于字符串和字符的关系正确的是 A. “A ”与’A ’是相同的 B. 字符串是常量,字符是变量 C. “A ”与’A ’是不同的 D. “A ”与“A ”是相同的 6. 下面关于语句的说法正确的是 A. 下面这两段程序的执行效果是一致的 B. 空语句是只有一个分号的语句,它其实什么也不干 C. 语句的构成不一定需要分号 D. 语句的书写对程序的运行不起作用,因此可以随便写都可以 7. 以下各标识符中,合法的用户标识符组为 。 A. PAd ,P#d ,b-b ,abc ,_0123,ssiped B. cin ,a10,CPP ,float ,del_word ,signed C. void ,max ,hiy ,,list ,*jer if (x>y) {z=x; s=z*z;} else {z=y;s=1/(z*z);} if (x>y) z=x; s=z*z; else z=y;s=1/(z*z);

C语言编程基础考试试题

C语言编程基础考试试题 文档名称文档密级 C语言编程基础考试 [考前说明]本题目中不考虑头文件引用问题(假定已经包含正确的头文件),C 语言的标 准函数都可用;如果不特别说明, 假定程序运行环境为:操作系统Windows 2000, VC6.0编译环境,缺省为四字节对齐, X86(80586)CPU处理器(32位小字节序处理器). 一、单选题 1、给出以下定义: char acX[ ]= "abcdefg"; char acY[ ]= {'a','b','c','d','e','f','g'}; 则正确的叙述为( ) A) 数组acX和数组acY等价 B) 数组acX和数组acY的长度相同 C) 数组acX的长度大于数组acY的长度 D) 数组acX的长度小于数组Y的长度 2、 void example(char acHello[]) { printf("%d", sizeof(acHello)); return; } void main()

{ char acHello[] = "hello"; example(acHello); return; } 的输出是( ) A 4 B 5 C 6 D不确定 3、以下叙述中不正确的是( ) A) 在不同的函数中可以使用相同名字的变量 B) 函数中的形式参数是在栈中保存 C) 在一个函数内定义的变量只在本函数范围内有效 D) 在一个函数内的复合语句中定义的变量在本函数范围内有效(复合语句指函数 中的成对括号构成的代码) 4、设有如下定义: unsigned long pulArray[] = {6, 7, 8, 9, 10}; unsigned long *pulPtr; 则下列程序段的输出结果为( ) 1 文档名称文档密级 pulPtr = pulArray; *(pulPtr + 2) += 2; printf ("%d,%d\n", *pulPtr, *(pulPtr + 2)); A)8,10 B)6,8 C)7,9 D)6,10

c语言期末测试题(附答案)

课程代码:A100002座位号: 《计算机技术基础(C语言)》试卷A 姓名: 学号: 专业: 学院: 班级: 20 年月日 第一部分 选择题(共 30 分) 一、单项选择题(本大题共 15 小题,每题只有一个正确答案,答对一题得 2 分,共 30 分) 1、以下关于C语言标识符的描述中,正确的是【】。 A)标识符可以由汉字组成B)标识符只能以字母开头 C)关键字可以作为用户标识符D)Area与area是不同的标识符 2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【】。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d\n”,i,j,k); A)12345678 B)123,456,78 C)123,45678 D)123,*45678 3、判断char类型的变量c1是否为数字字符的正确表达式为【】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是【】。 A)’a’&&’b’ B)a<=b C)((a>b)||(b

A. *(a[0]+2) B. a[1][3] C . a[1][0] D. *(*(a+1)+2) 6、在循环语句的循环体中执行break语句,其作用是【】。A)跳出该循环体,提前结束循环 B)继续执行break语句之后的循环体各语句 C)结束本次循环,进行下次循环 D)终止程序运行 7、执行语句for(i=10;i>0;i--);后,变量i的值为【】。A)10 B)9 C)0 D)1 8、若有int *p1, *p2,k; 不正确的语句是【】 A. p1=&k B. p2=p1 C. *p1=k+12 D. k=p1+p2 9、在函数中未指定存储类别的局部变量,其隐含的存储类别是【】 A. 静态(static) B. 外部(extern) C. 自动(auto)D. 寄存器(register) 10、如下程序的输出结果是【】 main( ) { int x=2,a=0,b=0; switch(x) { case 2: a++; b++; case 1: ++a; b--; break; case 0: b++;} printf("a=%d, b=%d\n", a, b);} A. a=2, b=0 B. a=2, b=1 C. a=1, b=1 D. a=1, b=0 11、表示关系a main() {int x; scanf(“%d”,&x); if(x<=3) ; else if(x !=10)printf(“%d\n”,x); } 程序运行时,输入的值在哪个范围才会有输出结果。【】

国家二级C语言机试(C语言基础知识)模拟试卷8

国家二级C语言机试(C语言基础知识)模拟试卷8 (总分:60.00,做题时间:90分钟) 一、选择题(总题数:30,分数:60.00) 1.我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是 (分数:2.00) A.一条C语句可能会被转换成多条机器指令 B.一条C语句对应转换成一条机器指令√ C.一条C语句可能会被转换成零条机器指令 D.某种类型和格式的C语句被转换成机器指令的条数是固定的 解析:解析:由C语言编写的程序,通过编译、链接转换成可以让机器识别的01二进制指令。这些二进制指令命令机器计算,这些就是机器指令,而C语言的语句条数和机器指令的条数不是一对一的关系。 2.以下选项中不属于C语言程序运算符的是 (分数:2.00) A.sizeof B.() C.<> √ D.&& 解析:解析:sizeof为测试内存的运算符,()为算术运算符,&&为逻辑运算符。而<>不是C语言的运算符,C语言中!=表示不等于。 3.若变量已正确定义并赋值,以下不能构成C语句的选项是 (分数:2.00) A.A=a+b: B.B++; C.a=a+b √ D.A?a:b; 解析:解析:C语言语句的表示为分号,不加分号的表达式不能看成C语句。 4.以下叙述中正确的是 (分数:2.00) A.程序必须包含所有三种基本结构才能成为一种算法 B.如果算法非常复杂,则需要使用三种基本结构之外的语句结构,才能准确表达 C.只有简单算法才能在有限的操作步骤之后结束 D.我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令√ 解析:解析:C语句构成了函数,函数构成的程序,经过编译转换成二进制代码后可以运行,算法是指为解决某个特定问题而采取的确定且有限的步骤,可以利用代码来捕述算法,而算法+数据结构才是程序,结构化的程序由顺序结构、循环结构和选择结构三种基本结构组成。由这三种基本结构组成的算法可以解决任何复杂的问题,反之则不一定,所有算法必须在有限步骤后结束。 5.下列选项中,不能用作标识符的是 (分数:2.00) A._1234 B._1_2 C.int_2_ D.2_int_ √ 解析:解析:C语言中标以符必须以字母或者下划线开始,选项D)中是以数字开始的不能作为标识符。6.以下选项中作为C语言合法常量的是 (分数:2.00) A.-80.√ B.-080

C语言基础测试题

C语言基础测试题 一选择题(每题2分) 1. C语言程序的基本单位是( A )。 A. 函数 B. 过程 C. 语句 D. 子程序 2. 对于whil e语句,错误的说法是( C )。 A.用条件控制循环体的执行次数 B.循环体至少要执行一次 C.循环体有可能一次也不执行 D.循环体中可以包含若干条语句 3. 定义语句int a=3;则执行语句a+=a-=a*a后,变量a的值是(C)。 A.3 B.0 C.9 D.-12 4. 关于局部变量和全局变量的叙述中,错误的是(A)。 A.全局变量的重复赋值不会影响局部变量的使用。 B.主函数中定义的变量在整个程序中都是有效的 C.形式参数也是局部变量。 D.不论是局部变量还是全局变量,都以最近的一次赋值为准。 5. 已知:int a=13;那么:printf("%02d",a)结果是(A)。 A.13 B.013 C.01 D.03 6. 在main函数中调用scanf给变量a赋值的方法是错误的,原因是()。 int *p,a; p=&a; printf("input a:"); scanf("%d",*p); A. *p表示的是指针变量p的地址 B. *p表示的是变量a 的值,而不是变量a的地址 C. *p表示的是指针变量p的值 D. *p只能用来说明p是一个指针变量 7.若有以下定义,则对a数组元素地址的正确引用是()。 A.a+5 B.*a+1 C.&a+1 D.&a[0] 8. 若int k=4,a=3,b=2,c=1;则kb); A. 1,3 B. 1,4 C. 2,3 D. 2,4 二.填空题。(每空3分) 1.写一个宏MIN,这个宏输入两个参数并返回较小的一个_________。2.main函数中:for(int i=0; i<3; i++){printf("%d",i);}输出结果是_________。3.设int a=9,b=20;则printf("%d,%d",a--,--b);的输出结果是_________。

C语言基础选择试题(一)

C语言基础选择试题(一) 2123 答案 :C 所谓“裸机”是指( )。 a:没有安装机箱 b:没有安装应用软件 c:没有安装任何软件的计算机 c:只安装操作系统的计算机 2145 答案 :D 可用于大小写字母转换的键是( )。 a:Esc b:CapsLock c:Shift c:CapsLock或Shift 1068 答案 :D 计算机病毒的主要特征是()。 a:只会感染不会致病 b:造成计算机器件永久失效 c:格式化磁盘 c:传染性、隐蔽性、破坏性和潜伏性 1054 答案 :D 个人计算机属于( ) 。 a:小型计算机 b:中型计算机 c:巨型计算机 d:微型计算机 1080 答案 :B 用汉语拼音输入“长沙”两个汉字,输入“changsha”8个字符,那么,“长沙”两字的内码所占用的字节数是()。 a:2 b:4 c:8 c:16 1053 答案 :A 操作系统的功能是( )。 a:提高系统资源的利用率,方便用户使用计算机 b:负责给程序和数据分配内存空间 c:负责各种文件的管理 c:管理磁盘文件和I/O设备管理 1055 答案 :C 组建以太网时,通常都是用双绞线把若干台计算机连到一个中心的设备上,这个设备叫做()。 a:网络适配器 b:服务器 c:集线器 c:总线 1057 答案 :D

应用软件是指( )。 a:所有能够使用的软件 b:能被各应用单位共同使用的某种软件 c:所有微机上都应用的基本软件 c:专门为某一应用目的而编制的软件 1078 答案 :B 为网络提供共享资源并对这些资源进行管理的计算机称之为()。 a:网卡 b:服务器 c:工作站 c:网桥 1082 答案 :B 在Windows98中运行应用程序时,下列哪个操作调不出帮助信息()。 a:按F1键 b:按F10键 c:单击“帮助”菜单 c:单击窗口右上角“”按钮 1068 答案 :A ISO/ OSI参考模型七层协议中第一层是()。 a:物理层 b:数据链路层 c:网络层 c:传输层 2083 答案 :A 解释程序的功能是()。 a:解释执行高级语言程序 b:解释执行汇编语言程序 c:将汇编语言程序翻译成目标程序 c:将高级语言程序翻译成目标程序 1071 答案 :B 在计算机网络术语中,WAN的中文意义是()。 a:以太网 b:广域网 c:互联网 c:局域网 1055 答案 :C 主存储器又称为()。 a:RAM b:ROM c:内存 c:外存 1056 答案 :D 把同种或异种类型的网络相互连接起来称为()。 a:广域网 b:万维网(WWW c:城域网 c:互联网

(完整版)C语言基础知识综合练习题

一、C语言基本知识和基本语句 (一)选择题 1.设a,b和c都是int型变量,且a=3,b=4,c=5则下面的表达式中,值为零的表达式是()。 A)‘a’&&’b’ B) a<=b C) a || b+c&&b-c D) ! ((a= ‘A’ && ch <=‘Z’) ? ( ch + 32):ch,则表达式ch的值是()字符。 A) A B) a C) Z D) z 3.若x和y都是int 型变量,x=100,y=200,且有程序段:printf (“%d”,(x,y));则输出结果是()。 A) 200 B)100 C) 100,200 D)输出格式不够,输出不确定的值4.C语言中最简单的数据类型包括()。 A)整型、实型、逻辑型 B) 整型、单精度型、双精度、字符型 C) 整型、字符型、逻辑型 D) 整型、实型、逻辑型、字符型5.C语言中,运算对象必须是整型的运算符是()。 A)% B) / C) % 和 / D) ** 6.数学关系x≥y≥z ,它对应C语言表达式是()。 A)(x>=y)&& (y>=z ) B) (x>=y) AND (y>=z ) C) (x>=y>=z) D) (x>=y) & (y>=z ) 7.以下说法中正确的是()。 A)C语言程序总是从第一个定义的函数开始执行 B) 在C语言程序中,要调用的函数必须在main()函数中定义 C) C语言程序总是从main()函数开始执行 D) C语言程序中的main()函数必须放在程序的开始部分 8.设int x=10,y=3,z;则语句printf (“%d\n”,z=(x%y,x/y));的输出结果是()。 A) 1 B) 0 C) 4 D) 3 9.C语言表达式10 != 9 的值是()。 A)true B) 非零值 C) 0 D) 1 10.合法的C语言字符常量是()。 A)’\t’B) “A” C) 65 D) A 11.若int类型数据占两个字节,则下列语句的输出为()。 int k = -1 ; printf (“%d,%u\n ”,k,k); A)- 1,- 1 B) – 1,32767 C) –1,32768 D) –1,65535 12.组成C语言程序的是()。 A)子程序 B) 过程 C) 函数 D) 主程序和子程序

计算机二级《C语言》基础练习题及答案最新版本

2016年计算机二级《C语言》基础练习题及答案(1) 1[简答题]下列给定程序中函数fun的功能是:通过某种方式实现两个变量值的交换,规定不允许增加语句和表达式。 例如,变量a中的值原为8,b中的值原为3,程序运行后a中的值为3,b中的值为8。 请改正程序中的错误,使它得出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更 改程序的结构! 试题程序: 参考解析: 【参考答案】 (1)t=*x;*X=Y;(2)return(t);或return t;

【考点分析】 本题考查:指针型变量的使用;通过return语句完成函数值的返回。 【解题思路】 首先,定义变量t作为中间变量,然后进行数据交换,注意参数x是指针变量,交换时应使用*x,最后确定返回值;根据代码b=fun(8a'b),可以知道返回值将赋给变量b,而b中应存放交换前*x中的值,所以函数应返回变量t。 2[单选题] 有以下程序 程序运行后的输出结果是 A.3 B.1 C.2 D.4 参考答案:C 参考解析:本题考查函数的递归调用,将函数参数带入函数中,一步步递归即可得到结果,结果为2,选项C正确。 3[单选题] 以下叙述中正确的是( ) A.在算法设计时,可以把复杂任务分解成一些简单的子任务 B.在C语言程序设计中,所有函数必须保存在一个源文件中

C.只要包含了三种基本结构的算法就是结构化程序 D.结构化程序必须包含所有的三种基本结构.缺一不可 参考答案:A 参考解析:C语言的程序中,函数不一定都放在同一个源文件中,可以分别放在不同源文件中,通过#inClude命令来引用,所以B错误。结构化程序可以包含三种基本结构中的一种或几种,所以C,D错误。 4[单选题] 若有语句:int a[3][4],(。P)[4];P=a;,则以下选项中叙述错误的是( )。 A.系统将开辟一个名为P的二维数组,“o][o]中的值即为a[o][o]中的值 B.P+1代表a[1][0]的地址 C.P中将存放a数组的首地址 D.P+2代表a数组最后一行的首地址 参考答案:A 参考解析:(+P)[4]定义了一个数组指针。P可以指向类似于arry[][4]的数组,题设中,P 不是一个二维数组,只是可以指向这类二维数组,因此选项A错误。P+1代表了第一行第一个元素的地址,P=a指向数组a的首地址,则B、C选项正确,同理可知选项D也正确。故答案为A选项。 5[单选题] 有以下程序: 程序运行后的输出结果是( )。 A.11,11 B.29,29 C.26,29 D.121.121 参考答案:B 参考解析:#define命令是c语言中的一个宏定义命令,标识符一般使用大写,为了区分其他标识符,它用来将一个标识符定义为一个字符串,该标识符被称为宏名,被定义的字符串称为替换文本。宏定义不进行其他操作,仅仅只是替换标识符。S(k+j+2)=k+j+2}k+j+2

C语言基础知识总复习(考前突击专用)

C语言基础知识总复习(考前突击专用) 总体上必须清楚的: 1)程序结构是三种: 顺序结构、选择结构(分支结构)、循环结构。 2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数。 3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址. 4)bit是位是指为0 或者1。byte是指字节, 一个字节= 八个位. 概念常考到的: 1、编译预处理不是C语言的一部分,不占运行时间,不要加分号。C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。 2、define PI 3.1415926; 这个写法是错误的,一定不能出现分号。 3、每个C语言程序中main函数是有且只有一个。 4、在函数中不可以再定义函数。 5、算法:可以没有输入,但是一定要有输出。 6、break可用于循环结构和switch语句。 7、逗号运算符的级别最低,赋值的级别倒数第二。 第一章C语言的基础知识 第一节、对C语言的基础认识 1、C语言编写的程序称为源程序,又称为编译单位。 2、C语言书写格式是自由的,每行可以写多个语句,可以写多行。 3、一个C语言程序有且只有一个main函数,是程序运行的起点。 第二节、熟悉vc++ 1、VC是软件,用来运行写的C语言程序。

2、每个C语言程序写完后,都是先编译,后链接,最后运行。(.c---→.obj---→.exe)这个过程中注意.c和.obj文件时无法运行的,只有.exe文件才可以运行。(常考!) 第三节、标识符 1、标识符(必考内容): 合法的要求是由字母,数字,下划线组成。有其它元素就错了。 并且第一个必须为字母或则是下划线。第一个为数字就错了 2、标识符分为关键字、预定义标识符、用户标识符。 关键字:不可以作为用户标识符号。main define scanf printf 都不是关键字。迷惑你的地方If是可以做为用户标识符。因为If中的第一个字母大写了,所以不是关键字。 预定义标识符:背诵define scanf printf include。记住预定义标识符可以做为用户标识符。 用户标识符:基本上每年都考,详细请见书上习题。 第四节:进制的转换 十进制转换成二进制、八进制、十六进制。 二进制、八进制、十六进制转换成十进制。 第五节:整数与实数 1)C语言只有八、十、十六进制,没有二进制。但是运行时候,所有的进制都要转换成二进制来进行处理。(考过两次) a、C语言中的八进制规定要以0开头。018的数值是非法的,八进制是没有8的,逢8进1。 b、C语言中的十六进制规定要以0x开头。 2)小数的合法写法:C语言小数点两边有一个是零的话,可以不用写。 1.0在C语言中可写成1. 0.1在C语言中可以写成.1。 3)实型数据的合法形式:

C语言基础题(含答案)

第一章C语言基础知识 1.1 选择题 1. 以下不是C语言的特点的是()。 A、语言简洁紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件操作 D、C语言移植性好 2.下列字符序列中,不可用作C语言标识符的是()。 A.abc123 B.no.1 C._123_ D.-_ok 3.正确的C语言标识符是()。 A._buy_2 B.2_buy C.?_buy D.buy? 4. 请选出可用作C语言用户标识符的一组标识符()。 A.void B.a3_b3C.For D.2a define _123 -abc DO WORD IF Case sizeof 5.下列符号中,不属于转义字符的是()。 A.\\ B.\0xAA C.\t D.\0 6.不属于C语言关键字的是()。 A.int B.break C.while D.character 7.是C语言提供的合法关键字的是()。 A.Float B.signed C.integer D.Char

8.以下不能定义为用户标示符的是()。 A.scanf B.V oid C._3com_ D.int 9.一个C程序是由()。 A.一个主程序和若干子程序组成 B.一个或多个函数组成 C.若干过程组成 D.若干子程序组成 10. C语言程序的基本单位是()。 A.程序行B.语句C.函数D.字符 11.下列说法中,错误的是()。 A.每个语句必须独占一行,语句的最后可以是一个分号,也可以是一个回车换行符号 B.每个函数都有一个函数头和一个函数体,主函数也不例外C.主函数只能调用用户函数或系统函数,用户函数可以相互调用 D.程序是由若干个函数组成的,但是必须有、而且只能有一个主函数 12.以下说法中正确的是()。 A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行 D.C语言程序中的main( )函数必须放在程序的开始部分13. C编译程序是()。 A.C程序的机器语言版本 B.一组机器语言指令

C语言基础练习100题(含标准答案)

C语言基础练习100题(含答案) 雷柳青编排 1、下面程序的输出是________ #include void main() { int k=11。 printf("k=%d,k=%o,k=%x\n",k,k,k)。 } A) k=11,k=12,k=11 B) k=11,k=13,k=13 C) k=11,k=013,k=0xb D) k=11,k=13,k=b 2、在下列选项中,不正确的赋值语句是________. A) ++t。B) n1=(n2=(n3=0))。 C) k=i=j。D) a=b+c=1。 3、下面合法的C语言字符常量是__________. A) '\t' B) "A" C) 65 D) A 4、字符(char)型数据在微机内存中的存储形式是____. A) 反码B) 补码C) EBCDIC码D) ASCII码 5、设int a=12,则执行完语句a+=a-=a*a后,a的值是________ A) 552 B) 264 C) 144 D) -264 6、执行下面程序中的输出语句后,输出结果是______. #include void main() {int a。 printf("%d\n",(a=3*5,a*4,a+5))。 } A) 65 B) 20 C) 15 D) 10 7、下面程序的输出是__________. #include void main() {int x=023。 printf("%d\n",--x)。 } A) 17 B) 18 C) 23 D) 24 8、下面程序的输出是___________. #include void main() {char ch1,ch2。 ch2='A'+'6'-'3'。 printf("%d,%c\n",ch1,ch2)。 } A) 67,D B) B,C C) C,D D) 不确定的值 9、以下程序的输出结果是________. #include void main() { int x=10,y=10。 printf("%d %d\n",x--,--y)。 } A) 10 10 B) 9 9 C) 9 10 D) 10 9 10、若x和y都是int型变量,x=100,y=200,且有下面的程序片段: printf("%d",(x,y))。 上面程序片段的输出结果是_______. A) 200 B) 100 C) 100 200 D) 输出格式符不够,输出不确定的值 11、阅读下面的程序 #include void main() { int i,j。 i=010。 j=9。 printf("%d,%d",i-j,i+j)。 } 则程序的运行结果是________. A) 1,19 B) -1,19C) 1,17 D) -1,17 12、阅读下面的程序 #include void main() { int i,j,m,n。 i=8。j=10。 m=++i。 n=j++。 printf("%d,%d,%d,%d",i,j,m,n)。 } 程序的运行结果是_________. A) 8,10,8,10 B) 9,11,8,10

大学C语言期末考试试题及答案

大学C语言期末考试试题 一选择题(7分,每小题0.5分) 1.C语言源程序的基本单位是()。 A 过程 B 函数 C 子程序 D 标识符 2.下列程序的输出结果是()。 main( ) { int a=7,b=5; printf("%d\n",b=b/a); } A 5 B 1 C 0 D不确定值 3.假设变量a,b均为整型,表达式(a=5,b=2,a>b?a++:b++,a+b)的值是()。 A 7 B 8 C 9 D 2 4.设a为int型变量,执行下列赋值语句后,a的取值分别是()。 a=125.534; a=(int)125.521%4; a=5<<2; A 125,31,1 B 125,1,20 C 125,31,20 D 125.534,2,20 5.设有如下程序段,下面描述中正确的是()。 int k=10; while(k=0) k=k-1; A 循环执行一次B循环是无限循环C循环体语句一次也不执行D循环体语句执行一次 6.以下程序的输出结果为()。 int i; void prt( ) { for(i=5;i<8;i++) printf("%c",'*'); printf("\t"); } main( ) { for(i=5;i<=8;i++) prt( ); } A *** B *** *** *** *** C *** *** D * * * 7.在C语言程序中,以下说法正确的是()。 A函数的定义可以嵌套,但函数的调用不可以嵌套 B函数的定义不可以嵌套,但函数的调用可以嵌套 C函数的定义和函数的调用都不可以嵌套 D函数的定义和函数的调用都可以嵌套 8.以下函数调用语句中含有()个实参。 func((e1,e2),(e3,e4,e5)); A 2 B 3 C 5 D 语法错误 9.以下程序的输出结果为()。 #define ADD(x) x*x main( ) { int a=4,b=6,c=7,d=ADD(a+b)*c; printf("d=%d",d); }

C语言考试试题基础版

如对你有帮助,请购买下载打赏,谢谢! 一、选择题 1. 在每个C 程序中都必须包含有这样一个函数,该函数的函数名为 。 A. main B. MAIN C. name D. function 2. 在以下关于C 语言的注释的叙述中,不正确的是 。 A .注释可用"/*"、"*/"形式表示,也可用"//"形式表示 B .编译器在编译一个程序时,将跳过注释,不对其进行处理 C .编译器在编译一个程序时,可发现注释中的单词拼写错误 D .程序中注释的多少不会影响所生成的可执行文件的长度 3. 以下叙述不正确的是 。 A .在C 程序中,严格区分大小写字母 B .一个 C 源程序有且仅有一个main 函数 C .在C 程序中,注释只能位于一条语句的后面 D .一个C 程序总是从main 函数开始执行 4. 下列合法的标识符为 A. abde+ B. #KDJF C. 67KDJ D. DK3_ 5. 关于字符串和字符的关系正确的是 A. “A ”与’A ’是相同的 B. 字符串是常量,字符是变量 C. “A ”与’A ’是不同的 D. “A ”与“A ”是相同的 6. 下面关于语句的说法正确的是 A. 下面这两段程序的执行效果是一致的 B. 空语句是只有一个分号的语句,它其实什么也不干 C. 语句的构成不一定需要分号 D. 语句的书写对程序的运行不起作用,因此可以随便写都可以 7. 以下各标识符中,合法的用户标识符组为 。 A. PAd ,P#d ,b-b ,abc ,_0123,ssiped B. cin ,a10,CPP ,float ,del_word ,signed C. void ,max ,hiy ,,list ,*jer if (x>y) {z=x; s=z*z;} else {z=y;s=1/(z*z);} if (x>y) z=x; s=z*z; else z=y;s=1/(z*z);

C语言基础知识测试题

基础知识测试题一.单项选择题 1.以下不正确的C语言标识符是() A. ABC B. abc C. a_bc D. ab.c 2.以下正确的C语言标识符是(C ) A. %x B. a+b C. a123 D. test! 3.一个C语言程序的执行是从()。 A. main( )函数开始,直到main( )函数结束 B. 第一个函数开始,直到最后一个函数结束 C. 第一个语句开始,直到最后一个语句结束 D. main( )函数开始,直到最后一函数结束 4.在C语言程序中,main( )的位置()。 A .必须作为第一个函数 B. 必须作为最后一个函数 C. 任意 D. 必须放在它所调用的函数之后 5.一个C语言程序是由()。 A. 一个主程序和若干个子程序组成 B.一个或多个函数组成 C.若干过程组成 D.若干子程序组成 6.C语言源程序的基本单位是()。 A. 过程 B. 函数 C. 子程序 D. 标识符 7.编辑程序的功能是()。 A. 建立并修改程序 B. 将C源程序编译成目标程序 C. 调试程序 D. 命令计算机执行指定的操作 8.C编译程序是()。 A. C语言程序的机器语言版本 B. 一组机器语言指令. C. 将C源程序编译成目标程序的程序 D. 由制造厂家提供的一套应用软件 9.不属于字符型常量的是() A.'A' B."B" C.'\n' D.'\x72' 10 .设char ch; 以下正确的赋值语句是:() A.ch='123'; B.ch='\xff'; C.ch='\08'; D.ch="\"; 11 .以下使i的运算结果为4的表达式是() A.int i=0,j=0; (i=3,(j++)+i);

相关文档
相关文档 最新文档