文档库 最新最全的文档下载
当前位置:文档库 › (完整版)C语言考试题库之填空题

(完整版)C语言考试题库之填空题

(完整版)C语言考试题库之填空题
(完整版)C语言考试题库之填空题

二,填空题(10道小题,共20分)

1、一个C源程序中至少应包含一个[main]函数。

2、a是整型变量,则执行表达式a=25/3%3后a的值为。[2]

3、int m=5,y=2;则表达式y+=y- =m*=y的值为。[-16]

4、执行下列语句: int a=1, b=2; a=a+b; b=a-b; a=a-b; printf("%d , %d \n", a,b );的输出结果分别是[2,1]

5、条件表达式的格式为表达式1?表达式2:表达式3,若表达式2和表达式3的类型不同,此时条件表达式的值的类型为二者中较[高]的类型

6、当运行以下程序时,从键盘键入right?(代表回车),则下面程序的运行结果是。#include

main( )

{ char c;

while((c=getchar())!='?') putchar(++c)

}

[sjhiu?]

7、C语言中的数组必须先[定义],然后使用。

8、如果需要从被调用函数返回一个函数值,被调用函数必须包含【return】语句。

9、已知:float f1=3.2,f2,*pf1=&f1;f2=f1,则*f2的值为。[3.2]

10、以下程序

void fun(char *a, char *b)

{ a=b; (*a)++; }

main ()

{ char c1="A", c2="a", *p1, *p2;

p1=&c1; p2=&c2; fun(p1,p2);

printf(“&c&c\n”,c1,c2);

}

运行后的输出结果是。[&c&c]

11、字符串常量“123”在内存中的字节数是。[4字节]

12、已有定义:int x=3 ;则表达式:x=x+1.78 的值是。【4】

13、int a=24; printf("%o ", a );输出结果是。【30】

14、当a=3,b=2,c=1时,表达式f=a>b>c的值是。【0】

15、下面程序的运行结果是。【x=1,y=20】

#include

main()

{ int i,x,y;

i=x=y=0;

do {++i;

if(i%2!=0) {x=x+i;i++;}

y=y+i++;

} while (i<=7);

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

}

16、以下语句char str[10]={"China"}; printf("%d",strlen(str))的输出结果是。[5]

17、为了便于区别全局变量和局部变量,通常将全局变量的首字母。[用大写字母表示]

18、已知:int b=5,*p=&b;并且b的地址为4000,则“printf("%d,%d",p,*p);”的输出结果是。【4000,5】

19、程序main()

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

int m,*ptr;

ptr=&a[0][0];

m=(*ptr)*(*(ptr+2))*(*(ptr+4));

printf("%d\n",m);

}

的运行结果是。【15】

20、引用C语言标准库函数,一般要用【文件包含】预处理命令将其头文件包含进来。

21、在C语言程序中,符号常量的定义要使用【宏定义】预处理命令。

22、逻辑运算符!是[自右至左]结合性。

23、下面的程序的运行结果是。【s=254】

#include

main( )

{int a,s,n,count;

a=2;s=0;n=1;count=1;

while(count<=7) {n=n*a; s=s+n; ++count;}

printf("s=%d",s);

}

24[strcat](字符数组名1,字符数组名2)把字符数组2中的字符串连接到字符数组1 中字符串的后面,并删去字符串1后的串标志“\0”。

25、C语言允许函数值类型缺省定义,此时该函数值隐含的类型是[整形]。

26、数组在内存中占用一段连续的存储空间,它的首地址由【数组名】表示

27若有定义:int a[2][3]={2,4,6,8,10,12};则*(&a[0][0]+2*2+1)的值是【12】

28、在一个C源程序中,注释部分二侧的分界符为。【/*和*/】

29、在C语言程序中,转义字符“\n”的功能是[换行]。

30、当a=5,b=4,c=2时,表达式a>b!=c的值是。【1】

32、在C

33若m

34、执行下列语句:float a; int b; a = b =24.5/5; printf(“%f,%d”, a, b); 输出结果是【4.000000,4】

35、若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n++后x的值为

n

36、若a=6,b=4,c=2,则表达式!(a-b)+c-1&&b+c/2的值是。[1]

37、当运行以下程序时,从键盘输入-1 0(表示回车),则下面程序的运行结果是。[m=4,n=2]

#include

main()

{ int a,b,m,n;

m=n=1;

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

do{ if(a>0) {m=2*n; b++;}

else{n=m+n; a+=2; b++;}

}while(a==b);

printf("m=%d n=%d",m,n);

}

38、C语言规定了以字符[‘\0’]作为字符串结束标志。

39、如果一函数只允许同一程序文件中的函数调用,则应在该函数定义前加上[static]修饰。

40、对数组元素的引用方法有下标法和[指针法]两种。

41、对于“int a[4];”可理解为数组a有4个元素,每个元素都是整型数据,那么,对于“int *a[4];”的理解就是数组a

有4个元素,每个元素都是[指针变量]。

42、在C语言中,八进制整型常量以【0】作为前缀。

43、已有定义:int x=0,y=0;, 则计算表达式:(x+=2,y=x+3/2,y+5) 后, 表达式的值是。【8】

44、下面程序段的运行结果是【a=-5】。

int i=1,a=0,s=1;

do{a=a+s*i; s=-s; i++;} while (i<=10);

printf("a=%d",a);

45、要使指针变量与变量之间建立联系,可以用运算符[*]来定义一个指针变量

46、设int a[10],*p=a;则对a[3]的引用可以是p[3]或[*(p+3)]。

47、C语言程序是由[函数]构成的。

48、在C语言程序中,用关键字【float】定义单精度实型变量。

49、若m是一个三位数,则十位数字为[m/10-m/100*10]。

50、int a=24; printf("%x ", a );输出结果是。[18]

51、设x,y,z均为int型变量,请写出描述“x或y中有一个小于z”的表达式。

[x

52、下面程序的运行结果是。[x=1,y=20]

#include

main()

{ int i,x,y;

i=x=y=0;

do {++i;

if(i%2!=0) {x=x+i;i++;}

y=y+i++;

} while (i<=7);

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

}

53、形式参数也是【局部】变量。

54、以下程序

#include

fun(int x, int y, int *cp, int *dp)

{

*cp=x+y;

*dp=x-y;

}

main( )

{

int a,b,c,d;

a=30; b=50;

fun(a, b, &c, &d);

printf("%d,%d\n", c, d);

return 0;

}

输出结果是。【80,-20】

55、程序main()

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

int m,*ptr;

ptr=&a[0][0];

m=(*ptr)*(*(ptr+2))*(*(ptr+4));

printf("%d\n",m);

}

的运行结果是【15】

56、运算符%、*=、||、==中,优先级最低的是。【*=】

57、在C语言中,"x"在内存中占【2】字节。

58、设y为int型变量,请写出描述“y是偶数”的表达式。【y%2==0】

59、下面程序段中循环体的执行次数是[3次]。

a=10;

b=0;

do{b+=2;a-=2+b; }while (a>=0);

60、程序的输出值是。[10]

#include

void f(int *p)

{

*p=10;

}

int *p;

void main( )

{

f(p);

printf("%d",(*p)++);

}

61、在C语言的赋值表达式中,赋值号左边必须是[变量]。

62、当a=3,b=2,c=1时,表达式f=a>b>c的值是。【0】

63、以下程序的输出结果是。[5,2,3]

#include

int sub(int x, int y, int *z)

{ *z=x-y; }

main( )

{

int a,b,c;

sub(10,5,&a);

sub(7,a,&b);

sub(a,b,&c);

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

return 0;

}

64、下面程序的输出是。[k=2 a=3 b=2]

#include

main(int argc, char argv[ ])

{

char *s="121";

int k=0, a=0, b=0;

do

{

k++;

if(k%2==0)

{

a=a+s[k]-'0';

continue;

}

b=b+s[k]-'0';

a=a+s[k]-'0';

}while (s[k+1]);

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

return 0;

}

65、运算符的结合性有[2]种。

66、己有定义:float f=13.8;, 则表达式:(int)f% 3 的值是。[1]

67、判断char型变量ch是否为大写字母的正确表达式是。[ch>=’A’&&ch<=’Z’]

68、下面程序段的运行结果是。[a=-5]

int i=1,a=0,s=1;

do{a=a+s*i; s=-s; i++;} while (i<=10);

printf("a=%d",a);

69、C语言中的字符数组中的一个元素存放[1]个字符。

70、已知:int a[5],*p=a;则p指向数组元素a[0],那么p+1指向[a[1]]。

71、设有如下定义:

int a[5]={0,1,2,3,4},*p1=&a[1],*p2=&a[4];则p2-p1的值为。[6]

72、己有定义:float f=13.8;, 则表达式:(int)f% 3 的值是。[1]

73、下面程序段的运行结果是。[a=-5]

int i=1,a=0,s=1;

do{a=a+s*i; s=-s; i++;} while (i<=10);

printf("a=%d",a);

74、已知:int a[5],*p=a;则p指向数组元素a[0],那么p+1指向[a[1]]。

75、引用C语言标准库函数,一般要用[文件包含]预处理命令将其头文件包含进来。

76、在C语言中,运算符++和—的运算量必须是【变量】。

77、逻辑运算符!是【自右至左】结合性。

78、下面的程序的运行结果是。【s=25】

#include

main( )

{int a,s,n,count;

a=2;s=0;n=1;count=1;

while(count<=7) {n=n*a; s=s+n; ++count;}

printf("s=%d",s);

}

79、局部变量只在该[函数]有效。

80、设char *s=”\ta\017bc”; 则指针变量s指向的字符串所占的字节数是【2】个

81、以下程序的输出结果是。【10】

main()

{ int arr[ ]={30,25,20,15,10,5}, *p=arr;

p++;

printf(“%d\n”,*(p+3));

}

82、在C语言中,八进制整型常量以【0】作为前缀。

83、表达式3.6/6+1/2+55%10的值是。【5.6】

85、C语言的三种逻辑运算符中优先级最高的为【逻辑非!】。

86、[全局变量]可以被本文件中的其他函数所共用。

87、以下程序

#include

fun(int x, int y, int *cp, int *dp)

{

*cp=x+y;

*dp=x-y;

}

main( )

{

int a,b,c,d;

a=30; b=50;

fun(a, b, &c, &d);

printf("%d,%d\n", c, d);

return 0;

}

输出结果是。【80,-20】

88、int a=2,b=3;float x=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y的值为。【3.5】

89、下面程序的运行结果是。[1,-2]

y=2;a=1;

while(y--!=-1)

{do{a*=y; a++;}while(y--);}

printf("%d,%d",a,y);

90、用数组元素作为函数的实参时,与用变量做实参一样,是[值]传递。

91、以下程序的输出结果是。【5,2,3】

#include

int sub(int x, int y, int *z)

{ *z=x-y; }

main( )

{

int a,b,c;

sub(10,5,&a);

sub(7,a,&b);

sub(a,b,&c);

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

return 0;

}

92、程序main()

{ int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,13};

int (*ptr)[4];

int sum=0,i,j;

ptr=a;

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

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

sum+=*(*(ptr+i)+j);

printf("%d\n",sum);

}

的运行结果是。【60】

93、字符串常量“123”在内存中的字节数是。【4】

94、当a=3,b=2,c=1时,表达式f=a>b>c的值是。【0】

95、按序排列的同类型变量的集合称为【数组】

96、C语言中按函数在程序中出现的位置来分,函数的调用有函数语句、函数参数和【函数表达式】三种方式。

97、请定义一个指向字符类型数据的指针变量p, 。【char *p 】

98、请定义一个指向指针数据的指针变量p,其基类型是字符型。[char**p]

99、double d1=1.2,d2=2.4;将表达式d1+2*d2强制转换为整型值的语句是。

100、下面的程序的运行结果是。[s=254]

#include

main( )

{int a,s,n,count;

a=2;s=0;n=1;count=1;

while(count<=7) {n=n*a; s=s+n; ++count;}

printf("s=%d",s);

}

101、如果被调用函数的实参列表包含多个实参,则各参数间用[逗号]隔开。(使用汉字填102、下列程序段的输出结果是。【1,23 4】

void fun(int *x, int *y)

{ printf(“%d ,%d”, *x, *y);

*x=3; *y=4;

}

main()

{ int x=1,y=2;

fun(&x,&y);

printf(“%d %d”,x, y);

}

103、设int a[10],*p=a;则对a[3]的引用可以是p[3]或【*(p+3)】。

104、double d1=1.2,d2=2.4;将表达式d1+2*d2强制转换为整型值的语句是。[(int)(d1+2*d2);]

105、定义一个整型数组a[10],则下标最大的数组元素为[a[9]]。

106、要使指针变量与变量之间建立联系,用运算符[*] 来建立指针变量与变量之间的联系。107、下列程序的输出结果是[0]。

void fun(int *n)

{ while( (*n)--);

printf(“%d”,++(*n));

}

main()

{ int a=100;

fun(&a);

}

108、char c=’\010’;则变量c中包含字符的个数为[1]。

109、int m=5,y=2;则表达式y+=y- =m*=y的值为。[-16]

110、以下程序

#include

fun(int x, int y, int *cp, int *dp)

{

*cp=x+y;

*dp=x-y;

}

main( )

{

int a,b,c,d;

a=30; b=50;

fun(a, b, &c, &d);

printf("%d,%d\n", c, d);

return 0;

}

输出结果是。【80,-20】

111、若有以下定义和语句:int a[4]={0,1,2,3}, *p; p=&a[1]; 则++(*p)的值是【1】

112、运算符=的结合性是【自右至左】。

113、若x为整型变量,执行语句x='b'-'A';后,x的值为[33]。

114、int a=24; printf("%o ", a );输出结果是。

115、程序

void fun(char *c,int d)

{ *c=*c+1;d=d+1;

printf(“%c,%c,”,*c,d);

}

main()

{ char a=’A’,b=’a’;

fun(&b,a); printf(“%c,%c\n”,a,b);

}

运行后的输出结果是。[b,A,B,b]

116、设main函数的说明为:main(int argc, char *argv[]), 且有命令行为:FILE1 1 2 3(代表回车),则argc

的值是。[4]

117、x是整型变量,表达式:(x=8,x%=x+5)的值是。[8]

118、执行下列语句: int a=1, b=2; a=a+b; b=a-b; a=a-b; printf("%d , %d \n", a,b );的输出结果分别是。[2,1]

119、条件“22&&x<3||x<-10]。

120、设有如下定义:

int a[5]={0,2,4,6,8},*p1=&a[1],*p2=&a[4];则*p2-*p1的值为。【6】

121、x是整型变量,表达式:(x=8,x%=x+5)的值是。【8】

122、下面程序的运行结果是。【x=1,y=20】

#include

main()

{ int i,x,y;

i=x=y=0;

do {++i;

if(i%2!=0) {x=x+i;i++;}

y=y+i++;

} while (i<=7);

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

}

123、请定义一个指向字符类型数据的指针变量p, 。[char*p;]

10、已知:int a[5],*p=a;若“printf("%d",p);”的输出结果是200,那么:“printf("%d",p+1);”的输出结果是。[202]

124、把al 、a2 定义为长整型变量的定义语句是。[long a1,a2;]

125、若已有定义语句:int k=7;,赋值表达式:k+=k%=k-3的值是。[6]

126、逻辑运算符!是[从右至左] 结合性。

_

127、以下程序的输出结果是。【efgh】

main()

{ char *p="abcdefgh",*r;

long *q;

q=(long*)p;

q++;

r=(char*)q;

printf("%s\n",r);

}

128、程序# include

void prtv(int *x)

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

}

main()

{ int a=25;

prtv(&a);

}

的运行结果为[26]

129、a是整型变量,则执行表达式a=25/3%3后a的值为。[2]

130、用来存放[字符数据]的数组称为字符数组。

131、【全局变量】可以被本文件中的其他函数所共用。

132、程序main()

{ int var, *p;

var=100;

p=&var;

var=*p+10;

printf("%d",var);

}

的运行结果为。【110】

133、若有定义:int a[2][3]={2,4,6,8,10,12};则*(&a[0][0]+2*2+1)的值是【12】

134、访问变量的方式有直接访问和【间接访问】。

135、C语言允许函数值类型缺省定义,此时该函数值隐含的类型是【整形】。

136、已知:int a[2][3]={1,2,3,4,5,6},*p=&a[0][0];则*(p+1)的值为。【4】

137、有如下程序

main()

{ char ch[2][5]={“6937”,”8254”},*p[2];

int i,j,s=0;

for(i=0;i<2;i++) p[i]=ch[i];

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

for(j=0;p[i][j]>’\0’;j+=2)

s=10*s+p[i][j]-‘0’;

printf(“%d\n”,s);

}

该程序的输出结果是。【6385】

138、引用C语言标准库函数,一般要用【文件包含】预处理命令将其头文件包含进来。139、若m是一个三位数,则个位数字为。【m%10】

140、下面程序段的运行结果是。[a=-5]

int i=1,a=0,s=1;

do{a=a+s*i; s=-s; i++;} while (i<=10);

printf("a=%d",a);

141、若有以下定义和语句:int a[4]={1,2,3,4},*p; p=&a[2]; 则*- - p的值是[2]

142、若有定义:double x[3][5];则x数组中列下标的上限为。[4]

143、当被调用函数的定义出现在主调函数的[前面],可以不加以声明。

144、以下程序运行后的输出结果是。【9876 876】

main()

{ char s[ ]=“9876”,*p;

for ( p=s ; p

145、程序main()

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

int m,*ptr;

ptr=&a[0][0];

m=(*ptr)*(*(ptr+2))*(*(ptr+4));

printf("%d\n",m);

}

的运行结果是。【15】

146、下面程序的运行结果是。

main()

{ int i,x,y;

i=x=y=0;

do {++i;

if(i%2!=0) {x=x+i;i++;}

y=y+i++;

} while (i<=7);

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

}

147、C程序的执行从【main】函数开始,调用其他函数后流程返回该函数,并在该函数中结束整个程序的运行。

148、下列程序的运行结果是。[3 6]

void fun(int *a, int *b)

{ int *k;

k=a; a=b; b=k;

}

main()

{ int a=3, b=6, *x=&a, *y=&b;

fun(x,y);

printf(“%d %d”, a, b);

}

149、下面程序的运行结果是。[1,-2]

y=2;a=1;

while(y--!=-1)

{do{a*=y; a++;}while(y--);}

printf("%d,%d",a,y);

150、程序main()

{ int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,13};

int (*ptr)[4];

int sum=0,i,j;

ptr=a;

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

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

sum+=*(*(ptr+i)+j);

printf("%d\n",sum);

}

的运行结果是。[60]

151、如果在所有函数定义之前,在函数的【前面】已作了函数声明,则在各个主调函数中不必对所调用的函数再做声明。

152、以下程序的输出结果是【7】

#include

main()

{ char b1[8]="abcdefg",b2[8],*pb=b1+3;

while (--pb>=b1) strcpy(b2,pb);

printf("%d\n",strlen(b2));

}

153、程序# include

void prtv(int *x)

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

}

main()

{ int a=25;

prtv(&a);

}

的运行结果为。【26】

154、在C语言中的标识符只能由3种字符组成,它们是。【字母、数字、下划线】

155、下面程序段的运行结果是。【a=-5】

int i=1,a=0,s=1;

do{a=a+s*i; s=-s; i++;} while (i<=10);

printf("a=%d",a);

156、形式参数也是[局部变量]变量。

157、要使指针变量与变量之间建立联系,可以用运算符【*】来定义一个指针变量。158、对于“int a[4];”可理解为数组a有4个元素,每个元素都是整型数据,那么,对于“int *a[4];”的理解就是数组a有4个元素,每个元素都是【指针变量】。

159、int x=12, n=5;则执行表达式x%=(n%=2)后x的值为。【0】

160、下面的程序的运行结果是。【254】

#include

main( )

{int a,s,n,count;

a=2;s=0;n=1;count=1;

while(count<=7) {n=n*a; s=s+n; ++count;}

printf("s=%d",s);

}

161、执行下列语句:float a; int b; b=a=24.5/5; printf(“%f,%d”, a, b); 输出结果是。【4.900000,4】

162、在C语言中,二维数组元素的内存中的存放顺序是【按行存放】

163、在C程序中,指针变量能够赋【变量的地址】值或空值

164、已有定义:double x=3.5;, 则表达式:x=(int)x+1 的值是。[4.0]

165、局部变量只在【该该函数中】有效。

166、若有以下定义和语句:int a[4]={0,1,2,3}, *p; p=&a[1]; 则++(*p)的值是[2]

167、已知:int a=10,*p=&a;则“printf("%d,%d\n",a,*p);”的输出结果是。[10,10]

168、在C语言程序中,符号常量的定义要使用[宏定义]预处理命令。

169、若a=6,b=4,c=2,则表达式!(a-b)+c-1&&b+c/2的值是。【1】

170、下面程序段的运行结果是。【231】

for(a=1,i=-1;i<1;i++)

{a++; printf("%d",a);}

printf("%d",i);

171、用来存放【字符数据】的数组称为字符数组。

172、C语言中每个变量和函数有两个属性:数据类型和数据的【存储】类别。

173、已知:下面程序段中第一个printf语句的输出是200,则第二个printf语句的输出是。【200】

int a[3][4],*p=*a;

printf("%d",a);

printf("'%d",p);

174、下面程序

void ss(char *s,char t)

{ while(*s)

{ if(*s==t) *s=t-‘a’+’A’;

s++;

}

}

main()

{ char str1[100]=“abcddfefdbd”,c=’d’;

ss(str1,c); printf(“%s\n”,str1);

}

运行后的输出结果是。【abcDDfefDbD】

175、若有定义:int b=7;float a=2.5,c=4.7;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值为。[5.5] 176、如果一函数直接或间接地调用自身,这样的调用称为[递归调用]。

177、以下程序的输出结果是。[7]

main()

{ int x=0;

sub(&x,8,1);

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

}

sub(int *a,int n,int k)

{ if(k<=n) sub(a,n/2,2*k);

*a+=k;

}

178、int s=6;则表达式s%2+(s+1)%2的值为。[1]

179、int a=2,b=3;float x=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y的值为。

180、以下程序的输出结果是[9]

#include

#include

fut (int **s, int p[2][3])

{

**s=p[1][1];

}

int main(int argc, char argv[])

{

int a[2][3]={1,3,5,7,9,11},*p;

p=(int*)malloc(sizeof(int));

fut(&p,a);

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

return 0;

}

181、在C语言中,十六进制整型常量以[0x ]作为前缀。

182、函数内部可以在复合语句中定义变量,这些变量在[该函数中]的范围内有效。183、对数组元素的引用方法有下标法和【指针法】两种。

2019年电大C语言考试题库(c语言小题+编程)

C语言程序设计课程期末复习练习 一、单选题 1.在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为( )。 A. main B. MAIN C. name D. function 2.每个C语言程序文件的编译错误分为()类。 A. 1 B. 2 C. 3 D. 4 3. 字符串"a+b=12\n"的长度为()。 A. 6 B. 7 C. 8 D. 9 4. 在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写为()语句。 A. for B. if C. do D. while 5. 在下面的do-while循环语句中,其循环体语句被执行的次数为()。 int i=0; do i++; while(i<10); A. 4 B. 3 C. 5 D. 10 6. 将两个字符串连接起来组成一个字符串时,选用的函数为()。 A. strlen() B. strcap() C. strcat() D. strcmp() 7. 若用数组名作为函数调用的实参,传递给形参的是()。 A. 数组的首地址 B. 数组中第一个元素的值 C. 数组中全部元素的值 D. 数组元素的个数 8. 假定a为一个整数类型的数组名,整数类型的长度为4,则元素a[4]的地址比a数组的首地址大( )个字节。 A. 4 B. 8 C. 16 D. 32 9. 假定s被定义为指针类型char *的变量,初始指向的字符串为"Hello world!",若要使变量p指向s所指向的字符串,则p应定义为()。 A. char *p=s; B. char *p=&s; C. char *p;p=*s; D. char *p; p=&s; 10. 从一个数据文件中读入以换行符结束的一行字符串的函数为()。 A. gets() B. fgets() C. getc() D. fgetc() 11. 由C语言目标文件连接而成的可执行文件的缺省扩展名为( )。 A. cpp B. exe C. obj D. c 12. 设有两条语句为“int a=12; a+=a*a;”,则执行结束后,a的值为( )。 A. 12 B. 144 C. 156 D. 288 13. 带有随机函数调用的表达式rand()%20的值在( )区间内。 A. 1~19 B. 1~20 C. 0~19 D. 0~20 14. for循环语句“for(i=0; i

江苏大学大一c语言期末复习题汇总

选择题1.下列字符序列中,不可用作C语言标识符的是()。 A.abc123 B.C._123_ D._ok 2.请选出可用作C语言用户标识符的一组标识符()。 A.void B.a3_b3 C.For D.2a define _123 -abc DO WORD IF Case sizeof 3.不属于C语言关键字的是()。 A.int B.break C.while D.character 4.以下不能定义为用户标示符的是()。 A.scanf B.Void C._3com_ D.int 5.C语言程序的基本单位是()。 A.程序行B.语句C.函数D.字符 6.以下说法中正确的是()。 A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行 D.C语言程序中的main( )函数必须放在程序的开始部分 7.以下选项中,合法的用户标识符是()。 A.long B._2abc C.3dmax D. 8.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示 的字符常量’\101’是()。 A.字符A B.字符a C.字符c D.非法的常量 9.以下选项中,正确的字符常量是()。 A.”F”B.’\\’’C.’W’D.’’ 10.下列变量定义中合法的是 A.short _a=; B.double b=1+; C.long do=0xfdaL; D.float 2_and=1-e-3; 11.为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。 A.缩排位置相同的if B.在其之前未配对的if C.在其之前未配对的最近的if D.同一行上的if 12.下列运算符中优先级最高的是()。 A.< B.&& C.+ D.!= 13.判断char型变量s是否为小写字母的正确表达式是()。 A.’a’ <= s<=’z’B.(s>=’a’) & (s<=’z’) C.(s>=’a’) && (s<=’z’) D.(’a’<=s) and (’z’>=s)

C语言常见复习题(选择填空)及参考答案

C语言常见复习题及参考答案 一、选择题 1.下述标识符中,()是合法的用户标识符。 A.A#C B.getch C.void D.ab* 2.在C语言中,字符型数据在内存中是以()形式存放的。 A.原码 B.BCD码 C.反码 D.ASCII码 3.以下选项中不合法的用户标识符是()。 A.abc.c B.file C.Main D.PRONTF 4.以下选项中不合法的用户标识符是()。 A.123 B.printf C.Anbsp; D.Dim 5.可以在C语言程序中用做用户标识符的一组标识符是()。 A.void B.as-b3 C.for D.2c define -123 -abc Do WORD If cas SIG 6.在以下各组标识符中,合法的用户标识符是(1)、(2)、(3)。 (1)A.001 B.table_1 C.0_t D.k% Int t*.1 W10 point (2)A.Fast_ B.void C.pbl D. Fast+Big abs fabs beep (3)A.xy_ B.longdouble C.*p D.CHAR 变量1 signed history Float 7.()是构成C语言的基本单位。 A.函数 B.过程 C.子程序 D.子例程 8.若有说明:char s1='\067';char s2="1";char s3='1';则s1中(1),s2中(2),s3中(3)。

(1).A.包含3个字符 B.包含2个字符 C.包含1个字符 D.无定值,说明不合法 (2).A.包含1个字符 B.包含2个字符 C.包含3个字符 D.无定值,说明不合法 (3).A.包含1个字符 B.包含2个字符 C.包含3个字符 D.无定值,说明不合法 9.若x为int型变量,则执行以下语句后,x的值为 x=6; x+=x-=x*x A.36 B.-60 C.60 D.-24 10.在C语言中,char 型数据在内存中是以()形式存储的。 A.原码 B.补码 C.ASCII码 D.反码 11.以下运算符中优先级最低的算符为(),优先级最高的为()。 A.&& B.& C.|= D.|| E.?: F.!= 12.若有运算符>、*=、<<、%、sizeof,则它们按优先级(由低至高)的正确排列顺序为 A.*= << > % sizeof B.<< *= > % sizeof C.*= > << sizeof % D.*= > << % sizeof 13.若有以下类型说明语句 char w; int x; float y; double z; 则表达式w*x+z-y 的结果是()类型。 A.float B.char C.int D.double 14.若w,x,y,z 均为int 型变量,则执行下面的语句后, w=(1), x=(2), y=(3), z=(4)。 w=5; x=4; y=w++*w++*w++; z=--x*=--x*--x;

C语言题库(填空题部分)

二、填空题 1、C语言中对文件读写之前必须先打开文件,文件的打开是通过调用________函数来实现。 答案: 1:fopen#fopen()#fopen() 知识点:知识点/基本理论/C11文件/C11_2文件函数 2、C语言中文件操作结束节后,必须关闭文件。而且关闭文件是通过调用__________函数来实现。 答案: 1:fclose#fclose()#fclose() 知识点:知识点/基本理论/C11文件/C11_2文件函数 3、字符串函数________用于从指定的磁盘文件中读出一个字符串。 答案: 1:fgets#fgets() 知识点:知识点/基本理论/C11文件/C11_2文件函数 4、字符串函数___________用于把一个字符串写入指定的磁盘文件中。 答案: 1:fputs#fputs() 知识点:知识点/基本理论/C11文件/C11_2文件函数 5、字符读写函数____________是用于从磁盘文件中读出一个字符。 答案: 1:fgetc#fgetc()#getc#getc() 知识点:知识点/基本理论/C11文件/C11_2文件函数 6、字符读写函数____________是用于把一个字符写入磁盘文件。 答案: 1:fputc#fputc()#putc#putc() 知识点:知识点/基本理论/C11文件/C11_2文件函数 7、共用体类型变量的定义关键字是________。 答案: 1:union 知识点:知识点/基本理论/C10共用体与枚举类型 8、定义枚举类型时采用的关键字是__________。 答案: 1:enum 知识点:知识点/基本理论/C10共用体与枚举类型 9、在C语言中,从参数的形式看,函数可以分为两类:无参函数和____________函数。 答案: 1:有参 知识点:知识点/基本理论/C6函数与编译预处理/C62函数分类、调用及返回值T 10、在C语言中,函数的返回值是由___________语句传递的。 答案: 1:return#return() 知识点:知识点/基本理论/C6函数与编译预处理/C62函数分类、调用及返回值T 11、在C语言中,按函数在程序中出现的位置可分为以下三种调用方式:函数语句、函数表达式和函数 __________。 答案: 1:参数 知识点:知识点/基本理论/C6函数与编译预处理/C62函数分类、调用及返回值T 12、在C语言中,在调用一个函数的过程中又出现__________或间接地调用该函数本身,这一现象称为函数的递归调用。 答案: 1:直接 知识点:知识点/基本理论/C6函数与编译预处理/C62函数分类、调用及返回值T 13、在C语言中,若确实不要求返回函数值,则应将函数定义为___________类型。 答案: 1:void 知识点:知识点/基本理论/C6函数与编译预处理/C62函数分类、调用及返回值T 14、在C语言中,假使X为基本整型变量,如果我们采用printf("格式控制",X)格式输出X,那么"格式控制"具体表示为"__"。

大学c语言考试题库含答案

================================================== 题号:1482 执行以下程序段后,输出结果和a的值是()。int a=10; printf("%d",a++); A、11 和10 B、11 和11 C、10 和11 D、10 和10 答案: C 题号:2100 已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'.执行语句printf("%d,%d",c1,c2-2);后,输出结果是 A、65,66 B、A,B C、65,68 D、A,68 答案: A 题号:5055 相同结构体类型的变量之间,可以()。 A、比较大小 B、地址相同 C、赋值 D、相加 答案: C 题号:3217 int a[10];合法的数组元素的最小下标值为()。 A、1 B、0 C、10 D、9 答案: B

能正确表示逻辑关系:" a≥10或a≤0 "的C语言表达式是 A、a>=0 | a<=10 B、a>=10 or a<=0 C、a>=10 && a<=0 D、a>=10 || a<=0 答案: D 题号:157 main() {int x=1,a=0,b=0; switch (x) { case 0: b++; case 1: a++; case 2: a++;b++;} printf("a=%d,b=%d",a,b); }该程序的输出结果是( ) A、2,2 B、2,1 C、1,1 D、1,0 答案: B 题号:4784 设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的 数据类型为()。 A、不确定 B、double C、int D、float 答案: B 题号:1647 以下程序中,while循环的循环次数是______ main() { int i=0;

C语言填空题

1、在考生目录下,给定程序FILL1、C的功能就是: 计算正整数num的各位上的数字之积。 例如,若输入:252,则输出应该就是:20。 若输入:202,则输出应该就是:0。 程序有两个空(1)、(2)需要补充完整。并将程序调试出所需的结果。 注意:不要随意改动程序,不得增行或删行,也不得更 改程序的结构! #include #include main( ) {long int num,k; /************found************/ _____(1)_______ k=1; clrscr() ; printf("\Please enter a number:") ; scanf("%ld",&num) ; do { k*=num%10 ; /************found************/ _____(2)______ num=num/10 ; } while(num) ; printf("\n%ld\n",k) ; } 2、在考生目录下,给定程序FILL1、C的功能就是:从键盘上输入一个数字组成的字符串(字符串长度小于8),将该字 符串转换成一个十进制数。 例如:从键盘上输入2345,则程序运行的结果应当为: n=2345。 程序有两个空(1)、(2)需要补充完整。请将程序调试出所需的结果。 注意:不要随意改动程序,不得增行或删行,也不得更 改程序的结构! #include "stdio、h" main() { char s[10]; int i; long int n=0; clrscr(); /**************found************/ ___(1)___; scanf("%s",s); /**************found************/ for(i=0;___(2)___;s[i] != ‘\0’ ;i++) n=n*10+s[i]-'0'; printf("n=%ld\n",n);

2011__C语言上机填空题

1 给定程序的功能是:求二分之一的圆面积,函数通过形参得到圆的半径,函数返回二分之一的圆面积(注:圆面积公式为:S r π=2,在程序中定义的变量名要与公式的变量相同)。 例如,输入圆的半径值:19.527,输出为:s=598.949991。 2 请补充main 函数,该函数的功能是:计算两个自然数n 和m(m<10000)之间所有数的和(n 和m 从键盘输入)。 例如,当n=1,m=100时 ,sum=5050; 当 n=100,m=1000 时,sum=495550。 3 给定程序的功能是:判断字符ch 是否与串str 中的某个字符相同,若相同什么也不做,若不同则插在串的最后。 4 请补充函数fun,该函数的功能是:把ASCII 码为偶数的字符从字符串str 中删除,结果仍然保存在字符串str 中,字符串str 从键盘输入,其长度作为参数传入函数fun 。 例如,输入"abcdef",输出"ace"。 5 请补充函数fun,该函数的功能是:判断某一个年份是否为闰年。 例如,1900年不是闰年,2004是闰年。 6 请补充函数fun,函数fun 的功能是求n 的阶乘。 7 请补充函数fun,该函数的功能是:整除x 且是偶数的数,把这些数保存在数组bb 中,并按从大到小的顺序输出。 例如当x=20时,依次输出:20 10 4 2。 8 请补充函数fun,它的功能是:计算并输出n(包括n)以内所有能被3或7整除的自然数的倒数之和。 例如,在主函数中从键盘给n 输入30后,输出为:s=1.226323。 9 请补充main 函数,该函数的功能是:计算每个学生成绩的平均分,并把结果保存在数组 bb 中 。 例 如 ,当 score[N][M]={{83.5,82,86,65,67},{80, 91.5 ,84,99,95},{90.5,95,86,95,97}}时,三个学生的平均分为76.7,89.9,92.7。 10 请补充函数fun(char*s),该函数的功能是:把字符串中的内容逆置。 例如,字符串中原有的字符串为abcde,则调用该函数后,串中的内容为edcba 。 11 请补充main 函数,该函数的功能是:输出一个N N ?矩阵,要求非周边元素赋值0,周边元素赋值1。 12 请补充main 函数,该函数的功能是:从键盘输入一个字符串及一个指定字符,然后把这个字符及其后面的所有字符全部删除。结果仍然保存在原串中。 例如,输入"abcdef",指定字符为"e",则输出"abcd"。 13 请补充main 函数,该函数的功能是:从键盘输入3个整数,然后找出最大的数并输出。 例如,输入12,45,43,最大值为45。 14 函数fun 的功能是:从三个形参a 、b 、c 中找出中间的数,作为函数值返回。 例如,当a=3,b=5,c=4时,中间的数为4。 15 函数fun 的功能是:统计长整数n 的各位上出现数字1、2、3的次数,并用外部(全局)变量c1、c2、c3返回主函数。 例如,当n=123114350时,结果应该为:c1=3 c2=1 c3=2。 16 请补充main 函数,该函数的功能是:打印出1 1000中满足个位数字的立方等于其本身所有数。 本题的结果为:1 64 125 216 729 17 请补充main 函数,该函数的功能是:打印出满足个位的数字、十位上的数字和百位上的数字都相等的所有三位数。 本题的结果为: 111 222 333 444 555 666 777 888 999。 18 请补充main 函数。该函数的功能是:求1 100(不包括100)以内所有素数的平均值。 程序运行后的结果为42.40。 19 请补充函数fun,该函数的功能是:求一维数组x[N]的平均值,并对所得结果进行四舍五入(保留两位小数)。 例如,当x[10]={15.6,19.9,16.7,15.2,18.3,12.1,15.5,11.0,10.0,16.0},结果为:avg=15.030000。 20 请补充函数fun,该函数的功能是:把一个整数转换成字符串,并倒序保存在字符数组str 中。例如,当 n=13572468 时,str="86427531"。 21 请补充函数fun,该函数的功能是:将字符串tt 中的大写字母都改为对应的小写字母,其他字符不变。例如,若输入"Are you come from Sichuan?",则输出"are you come from sichuan?"。 22 请补充main 函数,该函数的功能是:从键盘输入一个长整数,如果这个数是负数,则取它的绝对值,并显示出来。例如,输入:-3847652,结果为:3847652。 23 请补充main 函数,该函数的功能是:从键 盘输入若干字符放到一个字符数组中,当按回车键时结束输入,最后输出这个字符数组中的所有字符。 24 请补充main 函数,该函数的功能是求方程ax 2+bx+c=0的两个实数根。方程的系数a 、b 、c 从键盘输入,如果判别式(disc=b 2-4ac)小于0,则要求重新输入a 、b 、c 的值。 例如,当a=1,b=2,c=1时,方程的两个根分别是x1=-1.00,x2=-1.00。 25 请补充main 函数,该函数的功能是:从键盘输入两个字符串并分别保存在字符数组str1和str2中,用字符串str2替换字符串str1前面的所有字符。注意:str2的长度不大于str1,否则需要重新输入。 例如,如果输入str1="abced",str2="fk",则输出"fkced"。 26 给定程序中,函数fun 的功能是:将形参指针所指结构体数组中的三个元素按num 成员进行升序排列。 27 给定程序中,函数fun 的功能是:把形参s 所指字符串中下标为奇数的字符右移到下一个奇数位置,最右边被移出字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动 (注:字符串的长度不小于2)。 例如,形参s 所指的字符串为:abcdefgh,执行结果为:ahcbedgf 。 28 给定程序的功能是:分别统计字符串中大写字母和小写字母的个数。 例如,给字符串ss 输入:AaaaBBbl23CCccccd,则输出结果应为:upper=5,lower=9。 29 请补充main 函数,该函数的功能是:先以只写方式打开文件"out29.dat",再把字符串str 中的字符保存到这个磁盘文件中。 30 请补充main 函数,该函数的功能是:把文本文件B 中的内容追加到文本文件A 的内容之后。 例如,文件B 的内容为"I m ten.",文件A 的内容为"I m a student!",追加之后文件A 的内容为"I m a student ! I m ten."。 31 请补充main 函数,该函数的功能是:求n!。 例如,7!=5040。 32 请补允函数fun,该函数的功能是:计算并输出下列多项式的值。 111 S =1+ + ++ 1+2 1+2+3 1+2+3+ 例如,若主函数从键盘给n 输入50后,则输出为S=1.960784。 33

(完整版)C语言考试题库之判断题(2)

三、判断题(10道小题,共10分) 1、C 语言具有简洁明了的特点。(1分) 正确 2、预处理命令的前面必须加一个“#”号。(1分) 正确 3、标准格式输入函数scanf()可以从键盘上接收不同数据类型的数据项。(1分) 正确 4、在if语句的三种形式中,如果要想在满足条件时执行一组(多个)语句,则必须把这一组语句用{}括起来组成一个复合语句。(1 分) 正确 5、continue 不是结束本次循环,而是终止整个循环的执行。(1分) 错误 6、在对数组全部元素赋初值时,不可以省略行数,但能省略列数(1分) 错误 7、.函数的实参传递到形参有两种方式值传递和地址传递(1分) 正确 8、直接访问就是直接利用变量的地址进行存取直接访问(1分) 正确 9、共用体变量可以作结构体的成员,结构体变量也可以作共用体的成员。(1分) 正确 10、文件指针和位置指针都是随着文件的读写操作在不断改变。(1分) 错误 11、C 语言标准格式输入函数scanf() 的参数表中要使用变量的地址值。(1分) 正确 12、浮点型常量的指数表示中,e 是可以省略的。(1分) 错误 13、任何表达式语句都是表达式加分号组成的。(1分) 正确 14、在switch语句中,每一个的case常量表达式的值可以相同。(1分) 错误 15、do-while循环的while后的分号可以省略。(1分) 错误 16、用字符串方式赋值比用字符逐个赋值要多占一个字节,用于存放字符串结束标志'\0'。正确 17、C语言函数返回类型的默认定义类型是void(1分) 错误 18、可以用一个指针变量指向一个函数,然后通过该指针变量调用此函数(1分) 正确 19、枚举类型中的元素都具有一个整型值。(1分) 正确 20、C 语言是一种具有某些低级语言特征的高级语言。(1分) 正确 21、case语句后如没有break,顺序向下执行。(1分)正确

大学C语言期末考试习题集(带详解答案)

一、单项选择题 1.(A)是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 2.C语言程序从 C开始执行。 A) 程序中第一条可执行语句 B) 程序中第一个函数 C) 程序中的main函数 D) 包含文件中的第一个函数 3、以下说法中正确的是(C)。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B)。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C)。 A.-a1 B.a[i] C.a2_i D.int t 5~8题为相同类型题 考点:标识符的命名规则 (1)只能由字母、数字、下划线构成 (2)数字不能作为标识符的开头 (3)关键字不能作为标识符 选项A中的“-”,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3) 6.下列C语言用户标识符中合法的是( B)。 A)3ax B)x C)case D)-e2 E)union 选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1); 7.下列四组选项中,正确的C语言标识符是(C)。 A) %x B) a+b C) a123 D) 123 选项A中的“%”,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2) 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。 A、print _3d db8 aBc B、I\am one_half start$it 3pai

C语言填空题以及答案

1. 一条简单语句是以________字符作为结束符的,一条复合语句是分别以 ________字符和________字符作为开始符和结束符的。 2. 任何一个C++程序至少且只能包含一个________函数,且程序总是从这个函数开始执行,不论这个函数的位置如何。一个函数定义由________和________两部分组成。 3. C++头文件和源程序文件的扩展名分别为________和________。 4. cout与操作符_______配合使用才能显示输出,cin与操作符_____配合使用才能实现输入。 5. 数据类型int,char,bool,float,double, int * 等的类型长度分别为________、________、________、________、________和________。 6. 数值常量46、0173和0x62对应的十进制值分别为________、________和________。 7. 字符串”It\’s\40a\40C++programe!”中包含有__________个字符。 8. 若x=5,y=10,则计算y*=++x表达式后,x和y的值分别为________和 ________。 9. 若x=25,则计算y=x--表达式后,x和y的值分别为________和________。 10. 假定x和ch分别为int型和char型,则sizeof(x)和sizeof(ch)的值分别为________和________。 11. 假定x=64,y=88,则x<<2和y>>2的值分别为________和________。 12. 假定x是一个逻辑量,则x&&true的值与________的值相同,x||false的值也与________的值相同。 13. 假定x是一个逻辑量,则x&&!x和x||!x的值分别为________和________。 14. 假定x=10,则表达式x<=10?20:30的值为________。 15. 表达式sqrt(81)和pow(6,3)的值分别为______________和 ______________。 16. 数学算式(1+x)sin48°和axbex+1对应的算术表达式分别为________和 ________。 17. 逻辑表达式:a>=x||b>2*y+10的相反式为:________。 18. 在嵌套的if语句中,每个else关键字与它前面最接近的________关键字相配套。 19. 在for语句中,假定循环体被执行次数为n,则<表达式1>共被计算________次,<表达式2>共被计算________次,<表达式3>共被计算________次。20. 执行for和while循环时,每次是先进行________的判断,然后再执行 ________,执行do循环时则相反。

c语言程序填空题

导出题库试题(1~100) 共计104道试题 一、程序填空答案(104题) 【程序填空】 1功能:求两个非负整数的最大公约数和最小公倍数。 【1】r != 0 或r 【2】r=m%n 或r=m-m/n*n 【3】n 【4】gcd,lcm 或n,lcm 2功能:下面的程序是求1!+3!+5!+……+n!的和。 【1】s=0 【2】i+=2 或i=i+2 或i++,i++ 【3】j<=i 或i>=j 或jj 【4】f= f * j 3功能:将一个字符串中下标为m的字符开始的全部字符复制成为另 一个字符串。 【1】p1= str1 + m 【2】*p2++=*p1++ 或*(p2++)=*(p1++) 或*p2=*p1,p2++,p1++ 或*p2=*p1++,p2++ 或*p2++=*p1,p1++ 【3】*p2='\0' 或*p2=0 或*p2=NULL【4】strcopy(str1,str2,m) 4功能:以下程序是用选择法对10个整数按升序排序。 【1】#define N 10 【2】k=I 【3】jj 或j<=N-1 或N-1>=j【4】k != i 5功能:删除一个字符串中的所有数字字符。 【1】s[i]!= 或*(s+i)!= 或*(i+s)!= 【2】|| 【3】s[j]=s[i] 或*(s+j)=*(s+i) 或s[j]=*(s+i) 或*(s+j)=s[i] 【4】delnum(item) 6功能:以每行5个数来输出300以内能被7或17整除的偶数,并求出 其和。 【1】n=0 【2】i<=300 或i<300 或300>=i 或300>i 【3】i%7 == 0 || i%17 == 0 或!(i%7)||!(i%17) 或!(i%17)||!(i%7) 或!(i%7&&i%17) 【4】n%5 == 0 或!(n%5) 或n/5*5==n 7功能:求100-999之间的水仙花数 说明:水仙花数是指一个三位数的各位数字的立方和是这个数本身。 例如:153=1^3+5^3+3^3)。 【1】k=0 【2】j=m%10 或j=m-m/10*10 或j=m-10*(m/10) 【3】return(1) 【4】fun(i) 8功能:输出9*9口诀。 【1】i<10 或10>i 【2】j++ 或++j 或j=j+1 【3】result 9功能:输出100到1000之间的各位数字之和能被15整除的所有数, 输出时每10个一行。 【1】k=0 【2】n%10 或n-n/10*10 或n-10*(n/10) 【3】while(n>0) 或while(0

c语言程序填空题完整

三、程序填空题 导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。 【3.1】下面程序的功能是不用第三个变量,实现两个数的对调操作。 #include main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b); a= ① ; b= ② ; a= ③ ; printf("a=%d,b=%d\n",a,b); }

【3.2】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。 #include double pi(long n) { double s=0.0; long i; for(i=1;i<=n;i++) s=s+ ① ; return( ② ); } 【3.3】下面的程序的功能是求一维数组中的最小元素。 findmin(int *s,int t,int *k) { int p; for(p=0,*k=p;p

C语言试题库(完整版)

C语言试题库 一、单项选择 第一章 C语言概述 (1)一个C程序的执行是从 A、本程序的MAIN函数开始,到MAIN 函数结束。 B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。 C、本程序的MAIN函数开始,到本程序的最后一个函数结束。 D、本程序文件的第一个函数开始,到本程序的MAIN函数结束。(2)以下叙述正确的是 A、在C程序中,MAIN函数必须位于程序的最前面。 B、 C程序的每行中只能写一条语句。 C、 C语言本身没有输入输出语句。 D、在对一个C程序进行编译的过程中,可发现注释中的拼写错误。(3) C语言规定,在一个源程序中,MAIN主函数的位置是在: A、必须在最前面。 B、必须在系统调用的库函数的后面 C、可以在任意位置。

D、必须在最后面 (4)一个C程序是由: A、一个主程序和若干子程序组成 B、函数组成 C、若干过程组成 D、若干子程序组成 (5)以下叙述不正确的是: A、一个C源程序可由一个或多个函数组成 B、一个C源程序必须包含一个MAIN函数 C、 C程序的基本组成单位是函数 D、在C程序中,注释说明只能位于一条语句的后面 第二章数据类型、运算符与表达式 (1)若x, i, j, k都是int型变量,则计算下面表达式后,x的值为x=( i=4, j=16, k=32) A、4 B、16 C、32

D、52 (2)下列四组选项中,均不是C语言键字的选项是 A、define , IF, type B、getc, char, printf C、include, scanf, case E、 if, struct, type (3)下面四个选项中,均是不合法的用户标识符的选项是A、A,P_0,do B、float,1a0, _A C、b-a, goto, int D、_123, temp, INT (4)若有代数式3ae/bc,则正确的C语言表达式是A、a/b/c*e*3 B、3*a*e/bc C、3*a*e/b*c D、a*e/c/b*3 (5)已知各变量的类型说明如下:

江苏大学大一c语言期末复习题汇总

选择题 1.下列字符序列中,不可用作C语言标识符的是()。 A.abc123 B.no.1 C._123_ D._ok 2.请选出可用作C语言用户标识符的一组标识符()。 A.void B.a3_b3 C.For D.2a define _123 -abc DO WORD IF Case sizeof 3.不属于C语言关键字的是()。 A.int B.break C.while D.character 4.以下不能定义为用户标示符的是()。 A.scanf B.V oid C._3com_ D.int 5.C语言程序的基本单位是()。 A.程序行B.语句C.函数D.字符 6.以下说法中正确的是()。 A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行 D.C语言程序中的main( )函数必须放在程序的开始部分 7.以下选项中,合法的用户标识符是()。 A.long B._2abc C.3dmax D.A.dat 8.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示 的字符常量’\101’是()。 A.字符A B.字符a C.字符c D.非法的常量 9.以下选项中,正确的字符常量是()。 A.”F”B.’\\’’C.’W’D.’’ 10.下列变量定义中合法的是 A.short _a=1-.le-1; B.double b=1+5e2.5; C.long do=0xfdaL; D.float 2_and=1-e-3; 11.为了避免嵌套的if-else语句的二义性,C语言规定else总是与()组成配对关系。 A.缩排位置相同的if B.在其之前未配对的if C.在其之前未配对的最近的if D.同一行上的if 12.下列运算符中优先级最高的是()。 A.< B.&& C.+ D.!= 13.判断char型变量s是否为小写字母的正确表达式是()。 A.’a’ <= s<=’z’B.(s>=’a’) & (s<=’z’) C.(s>=’a’) && (s<=’z’) D.(’a’<=s) and (’z’>=s) 14.已知x=45, y=’a’, z=0; 则表达式(x>=z && y<’z’ || !y)的值是()。 A.0 B.语法错 C.1 D.“假”

C语言填空题

1. 在考生目录下,给定程序FILL1.C的功能是: 计算正整数num的各位上的数字之积。 例如,若输入:252,则输出应该是:20。 若输入:202,则输出应该是:0。 程序有两个空(1)、(2)需要补充完整。并将程序调试出所需的结果。 注意:不要随意改动程序,不得增行或删行,也不得更改程序的结构! #include #include main( ) {long int num,k; /************found************/ _____(1)_______ k=1; clrscr() ; printf("\Please enter a number:") ; scanf("%ld",&num) ; do { k*=num%10 ; /************found************/ _____(2)______ num=num/10 ; } while(num) ; printf("\n%ld\n",k) ; } 2. 在考生目录下,给定程序FILL1.C的功能是:从键盘上输入一个数字组成的字符串(字符串长度小于8),将该字符串转换成一个十进制数。 例如:从键盘上输入2345,则程序运行的结果应当为:n=2345。 程序有两个空(1)、(2)需要补充完整。请将程序调试出所需的结果。 注意:不要随意改动程序,不得增行或删行,也不得更改程序的结构! #include "stdio.h" main() { char s[10]; int i; long int n=0; clrscr();

/**************found************/ ___(1)___; scanf("%s",s); /**************found************/ for(i=0;___(2)___;s[i] != ‘\0’ ;i++) n=n*10+s[i]-'0'; printf("n=%ld\n",n); } 3. 在考生目录下,给定程序FILL1.C的功能是:输出Fabonacci数列:1,1,2,3,5,8,……的前20项的 项值,要求每行输出5个数。请填空。 程序有两个空(1)、(2)需要补充完整。请将程序调试出 所需的结果。 注意:不要随意改动程序,不得增行或删行,也不得更 改程序的结构! #include "stdio.h" main() { long int f[20]={1,1}; int i; clrscr(); /**************found************/ ___(1)___; printf("%8ld,%8ld",f[0],f[1]); for(i=2;i<20;i++) { f[i]=f[i-1]+f[i-2]; /**************found************/ if(___(2)i%5==0) printf("\n"); printf("%8ld",f[i]); } printf("\n"); } 4. 在考生目录下,给定程序FILL1.C的功能是:实现在N行M列的二维数组中,找出每一行上的最大值,且原数组值不变。 例如:如果二维数组元素的值为: 1 5 7 4 2 6 4 3 8 2 3 1 时,程序的运行结果应为: The max value in line 0 is 7 The max value in line 1 is 6

大学C语言考试题库及答案

精选考试类应用文档,如果您需要使用本文档,请点击下载,另外祝您生活愉快,工作顺利,万事如意! 大学C语言考试题库及答案 姓名成绩 温馨提示:同学们,经过培训学习,你一定积累了很多知识,现在请认真、仔细地完成这张试题库吧。加油! 一单项选择题库 1. 在C语言中,以 D 作为字符串结束标志 A)’\n’ B)’ ’ C) ’0’ D)’\0’ 2.下列数据中属于“字符串常量”的是( A )。 A.“a” B.{ABC} C.‘abc\0’ D.‘a’ 若干个字符构成字符串 在C语言中,用单引号标识字符;用双引号标识字符串 选项B,C,分别用{}和’’标识字符串 选项D,标识字符。 3、以下说法中正确的是( C )。 A、C语言程序总是从第一个定义的函数开始执行

B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B )。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C )。 A.-a1 B.a[i] C.a2_i D.int t 6.下列C语言用户标识符中合法的是(B )。 A)3ax B)x C)case D)-e2 E)union 7.下列四组选项中,正确的C语言标识符是(C )。 A)%x B)a+b C)a123 D)123 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A )。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是 C 。

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