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”在内存中的字节数是。[8字节]

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并删去字符串1后的串标志“\0”。25

26

27

28

29、在C

30、当

32、在C

33若m

34

35、若x n

36、若

37

main()

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[6]]。

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;

}

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()

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、下面程序的运行结果是。

#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);

}

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

#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、对数组元素的引用方法有下标法和【指针法】两种。

江苏大学大一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语言!!!!{考期必备神器}

C语言期末复习(平时练习答案)[特别适用于千千万北航学子] 考试重点:(编程题)排序,选择与冒泡排序,,各种进制转换。。。。] 第二次大作业— 前驱、后继字符 1. 【问题描述】从键盘输入一个字符,求出它的前驱和后继字符(按照ASCII码值排序),并按照从小到大的顺序输出这三个字符和对应的ASCII值。【输入形式】从键盘输入一个字符【输出形式】按两行输出:第一行按照从小到大的顺序输出这三个字符,并以一个空格隔开;第二行按照从小到大的顺序输出三个字符对应的ASCII 值,并以一个空格隔开。【输入样例】 b 【输出样例】 a b c 97 98 99 【样例说明】输入字符b,b的前驱字符是a,后继字符是c,第一行按照从小到大的顺序输出a b c;第二行输出对应的ASCII值97 98 99 【评分标准】结果完全正确得20分,每个测试点4分。提交程序名为:c0103.c。 //*从键盘输入一个字符,求出它的前驱和后继字符(按照ASCII码值排序),并按照从小到大的顺序输出这三个字符和对应的ASCII值。*// #include int main() { char c=" "; printf("Input a number:"); scanf("%c",&c); //*从键盘输入一个字符*// printf(" %c %c %c\n",c-1,c,c+1);//*第一行按照从小到大的顺序输出这三个字符,并以一个空格隔开*// printf(" %d %d %d", c-1,c,c+1);//*第二行按照从小到大的顺序输出三个字符对应的ASCII值,并以一个空格隔开。*// return 0; } 当前编程题:第二次大作业---数值变换 2. 【问题描述】编写一程序,从键盘输入输入一个三位正整数,然后反向输出对应的数,如果输入的数不是三位正整数,则输出-1。【输入形式】从键盘输入三位的正整数。【输出形式】输出交换后的正整数值。【输入样例】356 【输出样例】653 【样例说明】从键盘输入的正整数值为356,将该数的个位与百位互换,所得结果为653.如果输入的正整数为300,则输出为3。【评分标准】结果完全正确得20分,每个测试点4分。提交程序名为:c0102.c。 //*编写一程序,从键盘输入输入一个三位正整数,然后反向输出对应的数,如果输入的数不是三位正整数,则输出-1。*// #include void main() { int a,d,e,f,sum; //*定义变量*// printf("请输入一个三位正整数,\n"); scanf("%d",&a); //*输入一个数*// if(a>0) //*对输入的值的正负做判断*// { d=a/100; e=(a-d*100)/10; f=a%10; sum=100*f+10*e+d; printf("%d\n",sum); //*输出交换后的正整数值。 *//

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

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

B .一组机器语言指令 C .将C 源程序编译成目标程序 D .由制造厂家提供的一套应用软件 14.以下选项中,合法的用户标识符是( )。 A .long B ._2abc C .3dmax D .A.dat 15.以下选项中,合法的实型常数是( )。 A .5E2.0 B .E-3 C .2E0 D .1.3E 16.已知大写字母A 的ASCII 码值是65, 小写字母a 的ASCII 码是97,则用八进制表示的字符常量’\101’是( )。 A .字符A B .字符a C .字符c D .非法的 常量 17.以下选项中, 合法转义字符的选项是( )。 A .’\\’ B .’\018’ C .’xab ’ D .’\abc ’ 18.以下选项中,正确的字符常量是( )。 A .”F ” B .’\\’’ C .’W ’ D .’’ 19.以下选项中可作为C 语言合法整数的是 A .10110 B B .0386 C .0Xffa D .x2a2 20.下列变量定义中合法的是 A .short _a=1-.le-1; B .double b=1+5e2.5; C .long do=0xfdaL; D .float 2_and=1-e-3; 21.与数学式子1 29 x x n 对应的C 语言表达式是( )。 A .9*x^n/(2*x-1) B .9*x**n/(2*x-1) C .9*pow(x,n)*(1/(2*x-1)) D .9*pow(n,x)/(2*x-1) 22.若有代数式cd ab 3,则不正确的C 语言表达式是( )。

C语言题库(判断题部分)

1、用puts和gets函数只能输入或输出一个字符串。 答案:正确 知识点:知识点/判断题/C7数组/C73字符函数T 2、用puts和gets函数可以输入或输出多个字符串。 答案:错误 知识点:知识点/判断题/C7数组/C73字符函数T 3、用strcat(字符串1,字符串2)连接两个字符串函数时,字符串1的存储空间必须足够大。 答案:正确 知识点:知识点/判断题/C7数组/C73字符函数T 4、用strcat(字符串1,字符串2)连接两个字符串函数时,字符串1的存储空间没有限制。 答案:错误 知识点:知识点/判断题/C7数组/C73字符函数T 5、用strcat(字符串1,字符串2)连接两个字符串函数时,将字符串1后面的'\0'取消,只在新串的最后保留一个'\0'。 答案:正确 知识点:知识点/判断题/C7数组/C73字符函数T 6、使用strcpy(字符数组,字符串)函数时,字符数组长度必须足够大。 答案:正确 知识点:知识点/判断题/C7数组/C73字符函数T 7、使用strcpy(字符数组,字符串)函数时,字符数组长度没有限制。 答案:错误 知识点:知识点/判断题/C7数组/C73字符函数T 8、使用strcpy(字符数组,字符串)函数时,连同字符串后面的'\0'一起拷贝到字符数组中。 答案:正确 知识点:知识点/判断题/C7数组/C73字符函数T 9、使用strcpy(字符数组,字符串)函数时,字符串后面的'\0'并没有一起拷贝到字符数组中。 答案:错误 知识点:知识点/判断题/C7数组/C73字符函数T 10、字符数组定义后,不能用赋值语句将一字符串常量或字符数组直接赋给一个字符数组。 答案:正确 知识点:知识点/判断题/C7数组/C73字符函数T 11、字符数组定义后,可以用赋值语句将一字符串常量或字符数组直接赋给一个字符数组。 答案:错误 知识点:知识点/判断题/C7数组/C73字符函数T 12、比较两个字符串是否相等不能通过条件运算符"=="。 答案:正确 知识点:知识点/判断题/C7数组/C73字符函数T 13、如果在共用体中有若干个不同类型的成员,在每一瞬间只有一个成员起作用,实际上是最后一个存放成员起作用。 答案:正确 知识点:知识点/判断题/C9结构体类型与链表/C93共用体与结构体T 14、结构体的各个成员各自占用自己的存储单元,各有自己的地址,各个成员所占的存储单元的总和一般就是结构体的长度。

C语言习题总结

1.定义3个整型变量x,y,z和一个实型变量averge,计算并输出3个整数的平均值averge,其中x=y=1,z=0。 #include int main() { int x,y,z; float average=0; x=1,y=1,z=0; average=1.0*(x+y+z)/3; printf("%f\n",average); return 0 ; } 2.针对上一题要求,采用从键盘用scanf()函数输入x,y,z的值。要求输出结果的形式为averge=…。 #include int main() { float x,y,z; float average=0; scanf("%f,%f,%f",&x,&y,&z); average=1.0*(x+y+z)/3; printf("averge=%f\n",average); return 0 ; } 3.输入3个整数给a,b,c,然后交换它们中的数,把a中原来的值给b,把b 原来的值给c,把c中原来的值给a。 #include int main() { int a,b,c; int m,n; scanf("%d,%d,%d",&a,&b,&c); m=b; n=c; b=a; c=m; a=n; printf("a=%d,b=%d,c=%d\n",a,b,c); return 0; } 4.计算某个数x的平方y,并以算术公式的形式输出x和y的值

#include #include int main() { float x,y; scanf("%f",&x); y=pow(x,2); printf("x=%f,y=%f",x,y); return 0; } 5.把百分制成绩转换成5级记分制,要求用switch语句。 90分以上(包括90): A 80至90分(包括80):B 70至80分(包括70):C 60至70分(包括60):D 60分以下:E 输入输出示例:Input Score: 86 86的等级为B。 #include int main() { float score; printf("Score :"); scanf("%f",&score); if(score>=90) printf("A"); else if(score>=80) printf("B"); else if(score>=70) printf("C"); else if(score>=60) printf("D"); else printf("E"); return 0; } 6.输入2005年的任一个月,输出这个月的天数,要求使用switch语句。 输入输出示例: Input month of 2005: 10 2005年10月有31天。 #include int main() { int month;

C语言判断题题库

三、判断题(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 分)正确 22、do-while 循环至少要执行一次循环语句。(1 分)正确 23 、数组名能与其它变量名相同。数组名后是用方括号括起来的常量表达式,不能用圆括号。(1 分) 正确 24 、函数形参的存储单元是动态分配的(1 分)正确 25 、int (*p)[4] 它表示p 是一个指针数组,它包含4 个指针变量元素(1分)

C语言中常见的判断题

判断题: 1 在C语言中,各种类型的整型数据在内存中都占2个字节。 F 2 表达式(j=3, j++) 的值是4. F 3 格式字符%e以指数形式输出实数数字部分小数位数7位. F 4 char c[6]="abcde"; printf("%3s", c)表示输出的字段的宽度为3位,如果被输出的数据的位数大于3,只输出3位数. F 5 设d=1,e=2,f=3,则逻辑表达式!(d+e)+f&&e+f*2的值为0. F 6 已知a=1,b=2,c=3,d=4,则条件表达式a>b?a:(c>d?c:d)的值为4. T 7 已知a=3,b=4,c=5.则逻辑表达式a+b>c && b==c值为0 . T 8 do-while循环由do开始,while结束,循环体可能一次也不做。 F 9 对于for(表达式1;表达式2;表达式3)语句来说,continue语句意味着转去执行表达式2. F 10 在do-while循环中,任何情况下都不能省略while. T 11 对静态变量的初始化不是在编译阶段完成的. F 12 定义int x[5],n;则x=x+n;或x++;都是正确的. F 13 语句char ch[12]={"C Program"};与语句char ch[ ]="C Program";具有不同的 赋初值功能. F 14 数组名作为函数调用时的实参,实际上传递给形参的是数组第一个元素的值. F 15 变量根据其作用域的范围可以分作局部变量和全局变量. T 16 当变量的存储类型定义缺省时,系统默认为变量的存储类型为auto类型,分配在静态区. F 17 若有宏定义:#define S(a,b) t=a;a=b;b=t由于变量t没定义,所以此宏定义是错误的。F 18 .设有如下定义:int *p; *p=100;则printf("%d",p); 的输出结果是100. F 19. 使几个不同的变量共占同一段内存的结构,称为"结构体"类型. F 20. 在打开文件时,必须说明文件的使用方式,"wb+"表示以读/写方式打开一个二进制文件. F 1.在C程序中,%是只能用于整数运算的运算符(对) 2. 若a=3,b=2,c=1 则关系表达式"(a>b)==c" 的值为"真"。(对) 3. 格式字符%g选用%e或%f格式中输出宽度较长的一种格式输出实数. (错) 4. 整型变量在全部范围内可以用字符格式输出. (错) 5. 已知a=3,b=4,c=5,则逻辑表达式!(a+b)+c-1 && b+c/2的值为0. (错) 6. 语句if(a>b) printf("%d",a); else printf("%d",b);可以用条件表达式a>b?a:b取代. (错) 7.已知a=4,b=2,c=3,d=5,表达式a>b?a:c

C语言例题及课后练习题汇总

1.在屏幕上显示一句话“欢迎学习C语言”。 2.求一个数的平方。 3.输入两个数,输出其中最大数。 4.编写一个C程序,输入三个整数,输出其中最大数。 5.编写一个C程序,从键盘上输入矩形的长和宽,屏幕上显示对应的矩形周长和面积。6. 编写一个C程序,输出9的阶乘的结果。 7.从键盘输入一个大写字母,输出其对应的小写字母。 8.用条件运算符实现:输入一个英文字母,如输入小写字母,输出其对应的大写形式,如输入大写字母,则原样输出。 9. 编程题:从键盘输入三个数a、b、c,输出平均值aver。 10. 计算工资税额。有一种工资纳税制度的规定为:如果工资超过50000元,缴纳的税额为工资总额的50%;如果工资超过10000元,纳税比例为工资总额的30%;如果工资超过7000元,纳税比例为工资总额的20%;如果工资超过5000元,纳税比例为工资总额的10%;如果工资少于等于5000元,不需纳税。设计一个程序,按照工资数额算出需要缴纳的税额。11.由键盘输入一个字符,判断是数字、英文字母还是其他字符。用if语句实现。 12. 由键盘输入一个成绩,然后输出相应的等级“优”、“良”、“中”、“及格”、“不及格”。 13. 从键盘输入1~7之间的数字,输出表示一个星期中对应的某一天的英文单词。 14. 计算器程序。用户输入运算数和四则运算符,输出计算结果。 15.输入两个数,判断两个数的关系是“大于”、“等于”或者“小于”,并输出结果。16.从键盘任意输入三个数,按照从小到大顺序输出。 17.编写程序判断输入的一个正整数是否既是5又是7的倍数。若是,则输出yes;若否,则输出no。 18. 用while循环输出1+2+…+100的结果。 19. 从键盘输入整数n,求1+2+…+n的结果并输出。 20. 求水仙花数。如果一个三位数的百位数、十位数和个位数的立方和等于这个数,那么这个数就被称为水仙花数。 21. 求2+4+…+100的结果并输出。 22. 用for循环输出1+2+…+100的结果。 23. 计算Fibonacci数列的前30项,并输出。 24. 求具有abcd=(ab+cd)2性质的四位数。比如:3025具有这样的性质,将它平分成两段30和25,然后加和取平方值,即 (30+25)2,恰好等于3025本身。请求出这种性质的全部四位数。 25. 编程题:求100+99+…+1的结果并输出。 26.编程题:从键盘输入一个值,统计1到这个数之间不能被3整除的数的个数,并输出这些数。 27. 从键盘输入一个数n,判断n是否是素数。 28. 统计1~50之间不能被3整除的数的个数并输出这些数字。 29. 输出下列图形。

C语言判断题

C语言判断题

判断题 1. (1 分) 每一个C语言程序都必须有一个main函数。 答案: Y 2. (1 分) C 语言程序的三种基本结构是顺序结构、选择结构和递归结构。 答案: N 3. (1 分) 在程序设计中,经常用选择(又称分支)、循环和函数3种控制结构。答案: N 4. (1 分) 用C语言编写的源程序必须经过编译连接后生存可执行程序,才能运行。答案: N 5. (1 分) C程序主函数中的一个变量可以被定义为两个或多个不同的类型。 考生选择: N 答案: N

6. (1 分) 在C源程序中,/*与*/之间的注释信息也被编译,但对程序运行运果不发生影响。 答案: N 7. (1 分) C程序是由函数构成的,每一个函数完成相对独立的功能。答案: Y 8. (1 分) 一个C语言程序中,有且只能有一个main函数。答案: Y 9. (1 分) c程序总是从程序的第一条语句开始执行 答案: N 10. (1 分) C语言标识符由字母、数字和下划线组成,其中第一个字符必须是字母。答案: N 11. (1 分) C语言规定:在一个源程序中,main函数的位置必须在最开始。答案: N

12. (1 分) C语言程序的基本单位是语句。答案: N 13. (1 分) 对于C程序中的逻辑错误,编译器是可以发现的。答案: N 14. (1 分) 一系列计算机指令的有序组合就构成了程序。答案: Y 15. (1 分) C 程序由函数所组成。 答案: Y 16. (1 分) 在C程序中,每行只能写一条语句。 答案: N 17. (1 分) c程序中能直接让机器执行的文件是编辑后的.c源文件。 答案: N

c语言试题

判A. B. A. B. A. B. A. B. A. B. A. B. A.

B. A. B. A. B. A. B. A. B. A. B. A. B. A. B.

A. B. A. B. 单 A.'\2' B.'"' C.' ' D.'\483' A.char c=B; B.int a=3; C.char c=65; D.float area=0; A.0119 B.o126 C.2.5e2.5

D.119L A.double a,b;a=b=7; B.double a=b=7; C.double a,b=7;a=b; D.double a=7,b=7; A.scanf("%2d %2d %2d",&i,&j,&k); B.scanf("%d %d %d",&i,&j,&k); C.scanf("%d,%d,%d",&i,&j,&k); D.scanf("i=%d,j=%d,k=%d",&i,&j,&k); A.k++ B.k+=1 C.++k D.k+1 A.0,0 B.1,0

C.3,2 D.1,2 A.12 B.11 C.10 D.9 A. B. C. D. A.'a' < =ch < ='z' B.(ch > ='a') & (ch < ='z') C.(ch > ='a') && (ch < ='z') D.('a' < =ch) AND ('z' > =ch)

A.'x' && 'y' B.x < =y C.x||y+z && y-z D.!((x < y)&&!z||1) A.1 2 3 B.2 3 4 C.2 2 3 D.2 3 3 A.1 B.0.000001 C.0 D.100.0 A.'a' > 'c' || 'x' < 'y' B.'a' > 'c' && x' < 'y' C.'a' > 'c' || 'x' > 'y'

C语言练习习题(带详解答案)

欢迎阅读 一、编程题 1.输入2个整数,求两数的平方和并输出。 #include int main(void) { intt a ,b,s; 2. 信息。 scanf("%lf",&r); if (r>=0) { area =PI*r*r; girth =2*PI*r ; printf("the area is %.2f\n", area);

printf("the girth is %.2f\n", girth);} else printf("Input error!\n"); return 0; } 3 4.从键盘上输入一个百分制成绩score,按下列原则输出其等级:score≥90,等级为A;80≤score<90,等级为B;70≤score<80,等级为C;60≤score<70,等级为D;score<60,等级为E。 #include void main(){ int data;

char grade; printf("Please enter the score:"); scanf("%d”, &data); switch(data/10) { case 10: } 5. float fee; printf(“please input hour:\n”); scan f(“%d”,&hour); if(hour<=10) fee=30;

else if(hour>=10&&hour<=50) fee=3*hour; else fee=hour*2.5; printf(“The total fee is %f”,fee); } 6. } 7、编程序实现求1-10之间的所有数的乘积并输出。 #include void main( ) { int i; long sum=1;

C语言 选择结构程序设计练习题

第四章选择结构程序设计 一、填空 1.在C语言中,表示逻辑“真”值用_________。 2.得到整型变量a的十位数字的表达式为_________。 3.表达式:(6>5>4)+(float)(3/2)的值是_________。 4.表达式:a=3,a-1‖--a,2*a的值是_________。(a是整型变量) 5.表达式:(a=2.5-2.0)+(int)2.0/3的值是_________。(a是整型变量)6.C语言编译系统在给出逻辑运算结果时,以数值_________代表“真”,以 _________代表“假”;但在判断一个量是否为“真”时,以_________代表“假”,以_________代表真。 7.当m=2,n=1,a=1,b=2,c=3时,执行完d=(m=a!=b)&&(n=b>c)后,n的值为_________,m的值为_________。 8.若有int x,y,z;且x=3,y=-4,z=5,则表达式:!(x>y)+(y!=z)||(x+y)&&(y-z)的值为_________。 二、编程: 1.企业发放的奖金根据利润提成。利润(i)低于或等于10万元时,奖金可提10%; 利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润i,求应发放奖金总数? 2.输入三个整数x,y,z,请把这三个数由小到大输出。 3.输入某年某月某日,判断这一天是这一年的第几天? 4.本程序演示从键盘输入x的值,计算并打印下列分段函数的值。 y=0(x<60) y=1(60<=x<70) y=2(70<=x<80) y=3(80<=x<90)

c语言练习题总结

1、判断一个三位数的个位和百位之和等于十位。 #include int main(int argc, char* argv[]) {int sum,a,b,c; printf("请输入一个三位数\n"); scanf("%d",&sum); a=sum%10; c=sum/10%10; b=sum/100; if(c==a+b) printf("yes\n"); else printf("no\n"); return 0;} 2、假如我国国民生产总值的年增长率为10%,计算10年后我国国民生产总值与现在相比增长多少百分比? 计算公式:P=(1+r)的n次方,r为年增长率;n为年数;P为与现在相比的百分比。 #include #include int main(int argc, char* argv[]) {int n; scanf("%d",&n); float r,p; r=0.1; p=pow((1+r),n); printf("p=%f\n",p); return 0;} 3、输入5个字符密码,密码规律是用原来的字母后面第四个字母代替原来的字母。 #include int main(int argc, char* argv[]) {char c1,c2,c3,c4,c5; printf ("请输入5个字符\n"); scanf("%c%c%c%c%c",&c1,&c2,&c3,&c4,&c5); c1=c1+4; c2=c2+4; c3=c3+4; c4=c4+4; c5=c5+4; printf("%c%c%c%c%c\n",c1,c2,c3,c4,c5); return 0;}

C语言判断题题库

三、判断题(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分) 正确

c语言判断题试卷

试卷编号:25 所属语言:C语言 试卷总分:248分 共有题型:1种 一、判断共248题(共计248分) 第1题(1.0分)题号:1216难度:中第6章 在C语言中,为了结束由do-while语句构成的循环,while后一对圆括号中表达式的值应该是0.答案:Y 第2题(1.0分)题号:1328难度:中第10章 对指针变量的初始化int a,*pa=&a,*pc=0;是正确的. 答案:Y 第3题(1.0分)题号:1238难度:中第7章 int a[3][4]={{1},{5},{9}};它的作用是将数组各行第一列 的元素赋初值,其余元素值为0. 答案:Y 第4题(1.0分)题号:1130难度:中第2章 在C程序中,无论是整数还是实数,都能准确无误地表示. 答案:N 第5题(1.0分)题号:1205难度:中第6章 do-while循环是先执行循环体语句,后判断表达式的值. 答案:Y 第6题(1.0分)题号:1360难度:中第11章

rewind(fp);可使fp所指文件的位置返回到文件的开头. 答案:Y 第7题(1.0分)题号:1143难度:中第2章 程序中的变量代表内存中的一个存储单元,它的值不可以随时修改.答案:N 第8题(1.0分)题号:1235难度:中第7章 char c[]="abc";do while(c[i+1]!='\0');printf("%d",i-1);能输出字符串c的长度值.答案:N 第9题(1.0分)题号:1274难度:中第8章 字符处理函数strcpy(str1,str2)的功能是把字符串1接到字符串2的后面. 答案:N 第10题(1.0分)题号:1223难度:中第7章 C语言中只能逐个引用数组元素而不能一次引用整个数组. 答案:Y 第11题(1.0分)题号:1125难度:中第2章 0x173是"正确"的十六进制常数. 答案:Y 第12题(1.0分)题号:1350难度:中第11章 不仅可将C源程序存在磁盘上,还可将数据按数据类型分别以文件的 形式存在磁盘上. 答案:Y

c语言程序设计基础单元总结与练习题及答案

c语言程序设计基础单元总结与练习题及答案

《C语言程序设计》单元总结与练习题 答案

单元一程序设计宏观认识 单元总结提升 本单元中,核心内容有C语言程序框架结 构、程序的构成和程序开发过程。通过本单元的 学习,我们应该知道: 1.C语言程序最基本的程序框架由两部分构 成,分别是: (1)编译预处理 (2)函数组 2.C程序最大的特点就是所有的程序都是用 函数来装配的,函数是构成C语言程序的基本 单位,函数包括主函数、库函数和自定义函数。 函数的一般结构形式为: 函数返回值类型函数名(形式参数) //函数首部 { 说明语句; //函数体 可执行语句; } 3.标识符是用来标识程序中的某个对象名字 的字符序列。C语言把标识符分为三类,即关 键字、预定义标识符、用户自定义标识符。对 于用户自定义标识符的命名C语言规定: (1)所有的用户标识符必须先定义后使用; (2)用户标识符由字母(A~Z,a~z)、数字 (0~9)、下划线“_”组成,并且首字符不能

是数字; (3)区分大小写; (4)不能用关键字作为用户自定义标识符,通常不使用预定义标识符作为用户自定义标识符。 4.理论上讲,程序开发过程分为四个步骤,分别为: (1)编辑源程序 (2)编译源程序,生成目标程序 (3)连接目标程序及其相关模块,生成可执行文件 (4)运行可执行文件 5.简单描述使用VC++6.0开发应用程序的步骤: 如图所示: 程序框架结构和程序开发过程,还要对C语言程序设计的知识脉络有一定的了解。 单元练习 一.选择题 1.构成C语言程序的基本单位是(c )。 A.框架B.预处理C.函数D.语句 2.在程序开发过程中,把文本文件格式源程序转化为二进制格式的目标程序的过程称之为( b )。

C语言练习题真答案(汇总版)

0在C语言中,合法的字符常量是(D )。 A. '字' B. "A" C."ABC" D.'\x41' 1下面叙述正确的是(B)。 A.程序中必须包含有输入语句 B.变量按所定义的类型存放数据 C.main函数必须位于文件的开头 D.每行只能写一条语句 2错误的叙述是(D)。 A.一个C语言源程序可由一个或多个函数组成 B.若一条语句较长,也可分写在下一行上 C.C程序必须包含一个main()函数 D.构成C语言源程序的基本单元是算术表达式 3(C)是关于C语言数据类型的正确叙述。 A.变量必须先定义后使用 B.不允许使用空类型 C.枚举类型不是基本类型 D.数组并不是构造类型 4 main( )函数的位置(B)。 A.必须在自定义函数前面 B.可以在自定义函数后面 C.必须位于程序的最前面 D.必须在自定义函数后面 5 C语言函数体由(C)括起来。 A. < > B. ( ) C.{ } D.[ ] 6(A)是不正确的叙述。 A.注释说明只能位于一条语句的后面 B. C源程序的基本组成单元是函数 C.C源程序可由一个或多个函数组成 D.每条语句最后必须有一个分号 7一个C语言源程序是由(B)。 A.一个主程序和若干子程序组成 B.函数组成 C.若干过程组成 D.若干子程序组成 8结构化程序设计的三种基本结构是(C)。 A.函数结构、判断结构、选择结构 B.平行结构、嵌套结构、函数结构 C.顺序结构、选择结构、循环结构 D.判断结构、嵌套结构、循环结构 9C源程序的调试是指对源程序进行(C)。 A.录入与编辑 B.查错与编译 C.查错与排错 D.连接与运行 10C语言中,可将一系列语句置于(C)从而构成复合语句。 A.一对尖括号"< >"之间 B.一对圆括号"( )"之间 C.一对花括号"{}"之间 D.一对方框号"[ ]"之间 11构成C源程序的基本单位是(D)。 A.语句 B.变量 C.运算符 D.函数 12以下叙述中正确的是(A)。 A.C源程序中注释部分可以出现在程序中任意合适的地方 B.一对花括号"{}"只能作为函数体的定界符 C.C源程序编译时注释部分的错误将被发现 D.构成C源程序的基本单位是函数,所有

c语言选择结构试题带答案

1. 以下非法的赋值语句是 A: n=(i=2,++i); B: j++; C: ++(i+1); D: x=j>0; 2. 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2 的值是A: 6 B: 0 C: 2 D: 1 3. 阅读以下程序: main() { int x; scanf(“%d”,&x); if(x--<5) printf(“%d”,x); else printf(“%d”,x++); } 程序运行后,如果从键盘上输人5,则输出结果是()。 A: 3 B: 4 C: 5 D: 6 4. 有如下程序 main0 { int a=2,b=-1,c=2; if(a main()

a=c/100%9; b=(-1)&&(-1); printf("%d,%d\n",a,b); } 输出结果是( )。 A: 2,1 B: 3,2 C: 4,3 D: 2,-1 6.两次运行下面的程序,如果从键盘上分别输入6 和4,则输出结果是main( ) { int x; scanf("%d",&x); if(x + + >5) printf("%d",x); else printf("%d\n",x - -); } A: 7 和5 B: 6 和3 C: 7 和4 D: 6 和4 7. 能表示x 为偶数的表达式是 A: x%2==0 B: x%2==1 C: x%2 D: x%2!=0 8. 下面的程序段中共出现了几处语法错误? int a,b; scanf("%d",a); b=2a; if(b>0) printf("%b",b); A: 1 B: 2 C: 3 D: 4 9. C 语言中,逻辑“真”等价于 A: 大于零的数 B: 大于零的整数 C: 非零的数 D: 非零的整数

c语言判断题考试卷

试卷编号:25 所属语言:C语言 试卷方案:TC_9 试卷总分:248分 共有题型:1种 一、判断共248题(共计248分) 第1题(1.0分)题号:1216 难度:中第6章 在C语言中,为了结束由do-while语句构成的循环, while后一对圆括号中表达式的值应该是0. 答案:Y 第2题(1.0分)题号:1328 难度:中第10章 对指针变量的初始化int a,*pa=&a,*pc=0;是正确的. 答案:Y 第3题(1.0分)题号:1238 难度:中第7章 int a[3][4]={{1},{5},{9}}; 它的作用是将数组各行第一列 的元素赋初值,其余元素值为0. 答案:Y 第4题(1.0分)题号:1130 难度:中第2章

在C程序中,无论是整数还是实数,都能准确无误地表示. 答案:N 第5题(1.0分)题号:1205 难度:中第6章 do-while循环是先执行循环体语句,后判断表达式的值. 答案:Y 第6题(1.0分)题号:1360 难度:中第11章 rewind(fp);可使fp所指文件的位置返回到文件的开头. 答案:Y 第7题(1.0分)题号:1143 难度:中第2章 程序中的变量代表存中的一个存储单元,它的值不可以随时修改. 答案:N 第8题(1.0分)题号:1235 难度:中第7章 char c[]="abc";do while(c[i+1]!='\0');printf("%d",i-1);能输出字符串c的长度值. 答案:N 第9题(1.0分)题号:1274 难度:中第8章

字符处理函数strcpy(str1,str2)的功能是把字符串1接到字符串2的后面. 答案:N 第10题(1.0分)题号:1223 难度:中第7章 C语言中只能逐个引用数组元素而不能一次引用整个数组. 答案:Y 第11题(1.0分)题号:1125 难度:中第2章 0x173是"正确"的十六进制常数. 答案:Y 第12题(1.0分)题号:1350 难度:中第11章 不仅可将C源程序存在磁盘上,还可将数据按数据类型分别以文件的形式存在磁盘上. 答案:Y 第13题(1.0分)题号:1352 难度:中第11章 将整数以二进制形式存盘比以ASCII形式存盘省空间、运算快. 答案:Y 第14题(1.0分)题号:1343 难度:中第10章

相关文档
最新文档