2018-06-14

在C语言中,五种基本数据类型存储空间长度的排列顺序是:

A) char

B) char=int<=float

C) char

D) char=int<=float

正确答案是: A

2、在C语言的变量类型说明中,int,char,float等类型的长度是:

A)

固定的          B) 由用户自己定义的

C)

任意的          D) 与机器字长有关的

正确答案是: D

3、下列四组常数中,均是正确的八进制数或十六进制数的一组是:

A) 016     0xbf     018

B) 0abc    017      0xa

C) 010     0x11    0x16

D) 0A12    7FF      -123

正确答案是: C

4、下列四组常数中,均是合法整型常量的一组是:

A) 160     0xffff     011

B) -0xcdf  01a        0xe

C) -01     986,012    0668

D) -0x48a  2e5        0x

正确答案是: A

5、以下能正确定义变量a、b和c并为其赋值的语句是:

A) int a=5; b=5; c=5;    B) int a,b,c=5;

C) a=5, b=5, c=5;         D) int a=5, b=5, c=5;

正确答案是: D

6、C语言所提供的基本数据类型包括字符型、整型、双精度型、单精度型和____:

A)

指针型         B) 结构型

C)

数组型         D) 枚举类型

正确答案是: D

7、下面程序的输出是:

#include

void main()

{

unsigned int a=32767;

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

}

A) a=32768       B) a=-32767

C) a=32767       D) a=-1 

正确答案是: C

8、在C语言中,下面合法的长整型数是:

A) 0L                  B) 4967

C) 0.054838743   D) 21.869e10 

正确答案是: A

9、若有说明语句:char c='\101'; 则变量c:

A)

包含一个字符     B) 包含两个字符

C)

包含三个字符     D) 说明不合法 

正确答案是: A

10、设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f的数据类型是:

A) int

型              B) float型

C) double

型        D) 不确定

正确答案是: C

11、C语言中的变量名只能由字母,数字和下划线三种字符组成,且第一个字符:

A)

必须为字母                 B) 必须为下划线

C)

必须为字母或下划线     D) 可以是字母,数字或下划线中的任意一种 

正确答案是: C

12、下面四个选项中,均是合法浮点数的选项是:

A) 1e+1      5e-9.4      03e2

B) -.60      12e-4       -8e5

C) 123e      1.2e-.4     e-4

D) -e3       e-4         5.e-0

正确答案是: B

13、在C语言中,以下叙述不正确的是:

A)

在C程序中,无论是整数还是实数,都能被准确无误的表示

B)

在C程序中,变量名代表存储器中的一个位置

C)

静态变量的生存期与整个程序的生存期相同

D) C

语言中变量必须先说明后引用 

正确答案是: A

14、以下叙述中不正确的是:

A)

空字符串(即两个双引号连写)只占一个存储单元

B)

字符型常量可以放在字符型变量中

C)

字符串常量可以放在字符型变量中

D)

字符型常量可以与整数混合运算,而字符串常量不可以 

正确答案是: C

15、C语言中,要求运算量必须是整型的运算符是:

A) +            B) /

C) %           D) *

正确答案是: C

16、设a=1,b=2,c=3,d=4,则表达式a

A) 4            B) 3

C) 2            D) 1

正确答案是: D

17、设有以下语句:int x=10;x+=3+x%(-3),则x的值是:

A) 14         B) 15

C) 11         D) 12 

正确答案是: A

18、若有定义:int y=7,x=12,则能使值为3的表达式是;

A) x%=(y%=5)        B) x%=(y-y%5)

C) x%=y-y%5         D) (x%=y)-(y%=5)

正确答案是: D

19、在C语言中,要求运算量必须是整型或字符型的运算符是:

A) &&           B) %

C) !             D) +

正确答案是: B

20、设x,y,z,s均为int型变量,且初值均为1,则执行语句s=++x||++y&&++z后,

则s的值为:

A)

不定值B) 2

C) 1              D) 0

正确答案是: C

21、若有代数式(3ae)/(bc),则下面不正确的C语言表达式是:

A) a/b/c*e*3       B) 3*a*e/b/c

C) 3*a*e/b*c       D) a*e/c/b*3 

正确答案是: C

22、若已定义int a,则表达式a=10,a+10,a++的值是:

A) 20         B) 10

C) 21         D) 11

正确答案是: B

23、若有以下定义和语句:

int a=010, b=0x10, c=10;

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

则输出结果是:

A) 10,10,10    B) 8,16,10

C) 8,10,10     D) 8,8,10 

正确答案是: B

24、执行下面程序段后,输出结果是:

int a;

int b=65536;

a=b;

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

A) 65536        B) 0

C) -1           D) 1

正确答案是: A

25、若有定义int a=12,则表达式a+=a-=a*=a的值是:

A) 0         B) -264

C) -144      D) 132 

正确答案是: A

26、执行以下程序,输出结果是:

#include

void main()

{

int a=353;

char b;

b=a;

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

}

A) b         B) a

C) 65        D)

错误信息

正确答案是: B

27、下面程序的输出结果是:

#include

void main()

{

int a=5,b=3;

float x=3.14, y=6.5;

printf("%d,%d\n",a+b!=a-b,x<=(y-=6.1));

}

A) 1,0        B) 0,1

C) 1,1        D) 0,0 

正确答案是: A

28、下面程序的输出结果是:

#include

void  main()

{

int a=-1, b=4, k;

k=(++a<=0)&&(b--<=0);

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

}

A) 1,1,2      B) 1,0,3

C) 0,1,2      D) 0,0,3 

正确答案是: D

29、阅读下面的程序

#include

void main()

{

int i,j;

scanf("%3d%2d",&i,&j);

printf("i=%d,j=%d\n",i,j);

}

如果从键盘上输入1234567<回车>,则程序的运行结果是:

A) i=123,j=4567            B) i=1234,j=567

C) i=1,j=2                 D) i=123,j=45

正确答案是: D

30、阅读下面的程序

#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) 9,11,9,10                  D) 9,10,9,11

正确答案是: C

31、阅读下面的程序

#include

void main()

{

int i,j;

i=010;

j=9;

printf("%d,%d",i-j,i+j);

}

则程序的运行结果是:

A) 1,19                   B) -1,19

C) 1,17                   D) -1,17

正确答案是: D

32、阅读下面的程序

#include

void main()

{

char ch;

scanf("%3c",&ch);

printf("%c",ch);

}

如果从键盘上输入

abc<

回车>

则程序的运行结果是:

A) a                     B) b

C) c                     D)

程序语法出错

正确答案是: A

33、阅读下面的程序

#include

void  main()

{

int i,j;

scanf("%2d %*3d %2d",&i,&j);

printf("%d%4d",i,j);

}

如果从键盘上输入

12 345 67<

回车>

则程序的运行结果是:

A) 12  67                B) 12 345

C) 12345                 D)

程序语法出错

正确答案是: A

34、阅读下面的程序

#include

void  main()

{char c1,c2;

c1=getchar();

c2=c1+3;

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

}

已知'A'的ASCII的值为65,如果从键盘上输入

D<

回车>

则程序的运行结果是:

A) D,68                  B) 'G',68

C) D,71                  D) G,71

正确答案是: D

35、请读程序:

#include 

void main()

{ int a; float b,c;

scanf("%2d%3f%4f",&a,&b,&c);

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

}

若运行时从键盘上输入9876543210(表示回车),则上面程序的输出结果是

A) a=98,b=765,c=4321                           B) a=10,b=432,c=8765

C) a=98,b=765.000000,c=4321.000000             D) a=98,b=765.0,c=4321.0

正确答案是: C

36、C语言中最简单的数据类型包括

A)

整型,实型,逻辑型             B) 整型,实型,字符型

C)

整型,字符型,逻辑型           D) 整型,实型,逻辑型,字符型

正确答案是: B

37、为表示关系x≥y≥z,应使用C语言表达式

A) (x>=y)&&(y>=z)                B) (x>=y)AND(y>=z)

C) (x>=y>=z)                     D) (x>=y) & (y>=z)

正确答案是: A

38、设有如下定义:

int x=10,y=3,z;

则语句

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

的输出结果是

A) 1         B) 0         C) 4         D) 3

正确答案是: D

39、以下程序的输出结果是

#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

正确答案是: D

40、若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为

A) a<>0          B) !a       C) a=0        D) a

正确答案是: D

41、已知字母A的ASCII码为十进制的65,下面程序的输出是

#include

void main()

{char ch1,ch2;

ch1='A'+'5'-'3';

ch2='A'+'6'-'3';

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

}

A) 67,D       B) B,C      C) C,D     D)

不确定的值

正确答案是: A

42、下面程序的输出的是

#include

void main()

{int x=10,y=3;

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

}

A) 0        B) 1       C) 3         D)

不确定的值

正确答案是: C

43、下面程序的输出是

#include

void main()

{int x=023;

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

}

A) 17        B) 18        C) 23       D) 24

正确答案是: B

44、请选出可用作C语言用户标识符的一组标识符

A) void         B) a3_b3        C) For         D) 2a

define          _123            -abc           DO

WORD            IF              Case           sizeof

正确答案是: B

45、字符(char)型数据在微机内存中的存储形式是

A)

反码       B) 补码      C) EBCDIC码     D) ASCII码 

正确答案是: D

46、表达式: 10!=9的值是

A) true        B)

非零值C) 0          D) 1

正确答案是: D

47、下面合法的C语言字符常量是

A) '\t'        B) "A"          C) 65         D) A

正确答案是: A

48、有如下说明和语句

int a=5;

a++;

此处表达式a++的值是

A) 7          B) 6           C) 5          D) 4

正确答案是: C

49、在下列选项中,不正确的赋值语句是

A) ++t;       B) n1=(n2=(n3=0));

C) k=i=j;     D) a=b+c=1; 

正确答案是: D

50、  以下叙述正确的是:

A)

在C程序中,主函数必须位于程序的最前面

B)

在C程序中,一行只能写一条语句

C) C

程序的基本结构是程序行

D) C

语句是完成某种程序功能的最小单位 

正确答案是: 

1、设a,b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,

值为0的表达式是

A) 'a'&&'b'               B) a<=b

C) a||b+c&&b-c        D) !((a

正确答案是: D

2、表达式: 10!=9的值是

A) true        B)

非零值

C) 0            D) 1

正确答案是: D

3、设a=5,b=6,c=5,d=8,m=2,n=2,执行 (m=a>b)&&(n=c>d) 后n的值为

A) 1          B) 2

C) 3          D) 0

正确答案是: B

4、若有以下定义: float x; int a,b; 则正确的switch 语句是

A) switch(x)                  B) switch(x)

{ case 1.0:printf("*\n");     { case 1,2:printf("*\n");

case 2: printf("**\n")       case 3:printf("**\n");

}                             }

C) switch(a+b)                D) switch(a-b);

{ case 1: printf("*\n") ;      { case 1:printf("*\n");

case 2: printf("**n");         case 2:printf("**\n");

}                             }

正确答案是: C

5、若有以下定义: int a,b,c1,c2,x,y; 则正确的switch 语句是

A) switch(a+b);                  B) switch(a*a+b*b)

{ case 1:y=a+b;break;           { case 3:

case 2:y=a-b;break;               case 1:y=a+b;break;

}                                           case 3:y=b-a;break;

}

C) switch a                        D) switch(a-b)

{ case c1:y=a-b;break;          { default:y=a*b;break;

case c2:y=a*d;break;           case 3:

default:x=a+b;                    case 4:x=a+b;break;

}                                          case 10:

case 11:y=a-b;break;

}

正确答案是: D

6、设a=1,b=2,c=3,d=4,则表达式: a

A) 4         B) 3

C) 2         D) 1 

正确答案是: D

7、设x 、y 、z 、t均为int型变量,则执行以下语句后,t的值为

x=y=z=1;

t=++x || ++y && ++z;

A)

不定值B) 4

C) 1              D) 0

正确答案是: C

8、语句:printf("%d",(a=2) && (b=-2));的输出结果是

A)

无输出       B)结果不确定

C)-1                 D)1

正确答案是: D

9、能正确表示a和b同时为正或同时为负的逻辑表达式是

A) (a>=0 || b>=0) && (a<0 || b<0)

B) (a>=0 && b>=0) && (a<0 && b<0)

C) (a+b>0 && a+b<=0)

D) a*b>0 

正确答案是: D

10、有如下程序段

int a=14,b=15,x;

char c='A';

x=(a&&b) && (c<'B');

执行该程序段后,x的值为

A) ture      B) false

C) 0          D) 1

正确答案是: D

11、选择出合法的判断a和b是否相等的if语句(设int x,a,b,c;)。

A) if (a=b) x++;        B) if (a=

C) if (a!=b) x++;       D) if (a=>b) x++;

正确答案是: C

12、已知 int x=10,y=20,z=30,则执行

if (x>y)

z=x;x=y;y=z;

语句后,x、y、z 的值是(    )。

A) x=10,y=20,z=30    B) x=20,y=30,z=30

C) x=20,y=30,z=10    D) x=20,y=30,z=20 

正确答案是: B

13、运行下面程序后,输出是(    )。

#include 

void main( )

{ int k=-3;

if (k<=0) printf("****\n");

else printf("####\n")

}

A) ####            B) ****

C) ####****     D)

有语法错误不能通过编译 

正确答案是: D

14、以下条件表达式中能完全等价于条件表达式x的是(    )。

A) (x==0)      B) (x!=0)

C) (x==1)      D) (x!=1) 

正确答案是: B

15、若运行下面程序时,给变量a输入15,则输出结果是(    )。

#include 

void main( )

{ int a,b;

scanf("%d",&a);

b=a>15?a+10:a-10;

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

}

A) 5       B) 25

C) 15      D) 10 

正确答案是: A

16、以下程序段运行结果是(    )。

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

x+=y+=z;

printf("%d\n",x

A) 1            B) 2

C) 4            D)

不确定的值

正确答案是: A

17、在执行以下程序时,为了使输出结果为:t=4 则给a和b

输入的值应满足的条件是

#include 

void main( )

{ int s,t,a,b;

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

s=1; t=1;

if (a<0) s=s+1;

if (a>b) t=s+t;

else if (a==b) t=5;

else t=2*s;

printf("t=%d\n",t);

}

A) a>b           B) a

C) 0>a>b       D) 0

正确答案是: B

18、请读程序:

#include 

void main( )

{ 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;

}

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

}

上面程序的输出结果是

A) a=2,b=1             B) a=1,b=1

C) a=1,b=0             D) a=2,b=2

正确答案是: A

19、下面程序的输出结果是

#include 

void main( )

{int x=100,a=10,b=20,ok1=5,ok2=0;

if (a

if (b!=15)

if (!ok1)

x=1;

else

if (ok2) x=10;

x=-1;

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

}

A) -1      B) 0

C) 1       D)

不确定的值 

正确答案是: A

20、运行下面程序时,若从键盘输入数据为"123",则输出结果是(    )。

#include "stdio.h"

void main()

{ int num,i,j,k,place;

scanf("%d",&num);

if (num>99)

place=3;

else if(num>9)

place=2;

else

place=1;

i=num/100;

j=(num-i*100)/10;

k=(num-i*100-j*10);

switch (place)

{ case 3: printf("%d%d%d\n",k,j,i);

break;

case 2: printf("%d%d\n",k,j);

break;

case 1: printf("%d\n",k);

}

}

A) 123         B) 1,2,3

C) 321         D) 3,2,1

正确答案是: C

21、运行下面程序时,从键盘输入数据为"2,13,5",则输出结果是(    )。

#include 

void main( )

{ int a,b,c;

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

switch(a)

{ case 1: printf("%d\n",b+c); break;

case 2: printf("%d\n",b-c); break;

case 3: printf("%d\n",b*c); break;

case 4: { if(c!=0) {printf("%d\n",b/c);break;}

else {printf("error\n");break;}

}

defualt: break;

}

}

A) 10            B) 8

C) 65            D) error

正确答案是: B

22、下列程序的执行结果是(    )。

#include "stdio.h"

void main( )

{ int x=2000,a=15,b=30,c=5,d=0;

if (a

if (b==25)

if (c)

x=123;

else

if (d) x=321;

x=-123;

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

}

A) -123       B) 321

C) 123        D) 0 

正确答案是: A

23、以下程序的执行结果是(    )。

#include "stdio.h"

void main( )

{ int a=8,b=-7,c=5;

switch (a>0)

{ case 1: switch (b<0)

{ case 1:printf("@");break;

case 2:printf("!");break;

}

case 0: switch (c!=0)

{ case 0:printf("*");break;

case 1:printf("#");break;

default:printf("$");break;

}

default:printf("&");

}

printf("\n");

}

A) *#$          B) &

C) @#&         D) @*&

正确答案是: C

24、若变量已正确定义,以下语句段的输出结果是(    )。

int x=0,y=2,z=3;

switch (x)

{

case 0: switch (y==2)

{

case 1: printf("&");break;

case 2: printf("%");break;

}

case 1: switch (z)

{

case 1: printf("$");

case 0: printf("*");break;

default: printf("#");

}

}

A) *          B) &#

C) *%       D) %# 

正确答案是: B

25、有以下程序

#include 

void main( )

{ int a,b,c=246;

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

正确答案是: A

26、若执行下面的程序从键盘上输入5,则输出结果是

#include 

void main( )

{int x;

scanf("%d",&x);

if (x++>5) printf("%d\n",x);

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

}

A) 7          B) 6

C) 5          D) 4

正确答案是: B

27、以下程序输出结果是

#include 

void main( )

{ int m=4;

if (++m>5) printf("%d\n",m--);

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

}

A) 7        B) 6

C) 5        D) 4 

正确答案是: D

28、当a=1,b=3,c=5,d=4时,执行下面一段程序后,x的值为

if (a

if (c

else

if (a

if (b

else x=3;

else x=6;

else x=7;

A) 1         B) 2

C) 3         D) 6 

正确答案是: B

29、执行下面的程序后,a的值为

#include 

void main( )

{ int a,b;

for(a=1,b=1;a<=100;a++)

{ if(b>=20) break;

if(b%3==1)

{ b+=3;

continue;

}

b-=5;

}

}

A) 7            B) 8

C) 9            D) 10

正确答案是: B

30、以下程序的输出结果是

#include 

void main( )

{int a=-1,b=4,k;

k=(++a<0) && !(b--<=0);

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

}

A) 1,0,4        B) 1,0,3

C) 0,0,3        D) 0,0,4 

正确答案是: D

31、下面的程序片段所表示的数学函数关系是

y=-1;

if (x!=0)

if (x>0) y=1;

else y=0;

┌ -1(x<0)                ┌ 1 (x<0)

│                            │

A)   y=┤ 0 (x=0)      B)   y=┤-1 (x=0)

│                            │

└ 1 (x>0)                └ 0 (x>0)

┌ 0 (x<0)               ┌ -1(x<0)

│                           │

C)   y=┤-1 (x=0)     D)   y=┤ 1 (x=0)

│                           │

└ 1 (x>0)               └ 0 (x>0)

正确答案是: C

32、以下程序的输出结果是

main( )

{ int a=100;

if (a>100) printf("%d\n",a>100);

else printf("%d\n",a<=100);

}

A) a<=100     B) 100

C) 0               D) 1

正确答案是: D

33、有如下程序

#include 

void 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\n",a,b);

}

该程序的输出结果是

A) a=2,b=1       B) a=1,b=1

C) a=1,b=0       D) a=2,b=2 

正确答案是: A

34、选择出合法的if语句(设int x,y;):

A) if (x!=y) if(x>y) printf("x>y\n");

else printf("x

B) if (x!=y)

if (x>y) printf("x>y\n")

else printf("x

else printf("x==y\n");

C) if (x!=y) if(x>y) printf("x>y\n");

else printf("x

else printf("x==y\n");

D) if (x!=y)

if(x>y) printf("x>y\n");

else printf("x

else printf("x==y\n"); 

正确答案是: A

35、能够完成如下函数计算的程序段是(    )。

┌ -1     x<0

y=┤  0      x=0

└  1      x>0

A) y=1;

if(x!=0)

if(x>0) y=1;

else y=0;

B) if (x>=0)

if(x>0) y=1;

else y=0;

else y=-1;

C) y=0;

if (x>=0)

if (x>0) y=1;

else y=-1;

D) y=-1;

if (x>0) y=1;

else y=0; 

正确答案是: B

36、执行下列程序,输入为3的输出结果是(   )。

#include 

void main( )

{

int k;

scanf("%d",&k);

switch (k)

{

case 1: printf("%d\n",k--);

case 2: printf("%d\n",k--);

case 3: printf("%d\n",k--);

case 4: printf("%d\n",k--); break;

default: printf("Full!\n");

}

}

A) 3      B) 3

2

C) 2      D) 2

1

正确答案是: B

37、以下程序在输入5,2 之后的执行结果是(    )。

#include 

void main( )

{ int s,t,a,b;

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

s=1;

t=1;

if (a>0) s=s+1;

if (a>b) t=s+t;

else if (a==b) t=5;

else t=2*s;

printf("s=%d,t=%d\n",s,t);

}

A) s=2,t=4            B) s=2,t=3

C) s=3,t=2            D) s=1,t=5

正确答案是: B

38、执行以下程序,分别输入-10和5,运行的结果分别是(    )。

#include 

void main( )

{ int x,c,m;

float y;

scanf("%d",&x);

if (x<0) c=-1;

else c=x/10;

switch (c)

{ case -1: y=0; break;

case 0: y=x; break;

case 1: y=10; break;

case 2:

case 3: y=-0.5*x+20; break;

default: y=-2;

}

if (y!=-2) printf("y=%d\n",y);

else printf("error\n");

}

A) y=0          B) y=0

y=5              y=-2

C) y=-10       D) y=0

y=5              y=10

正确答案是: A

39、执行以下程序,分别输入10和30,运行的结果分别是(    )。

#include 

void  main( )

{ int x,c,y;

scanf("%d",&x);

if (x<0) c=-1;

else c=x/10;

switch (c)

{ case -1: y=0; break;

case 0: y=x; break;

case 1: y=10; break;

case 2:

case 3: y=-0.5*x+20; break;

default: y=-2;

}

if (y!=-2) printf("y=%d\n",y);

else printf("error\n");

}

A) y=10         B) y=10

y=-2            y=10

C) y=10         D) y=0

y=5             y=-2

正确答案是: C

40、下列程序执行后的输出结果是(    )。

#include 

void main( )

{ int x,y=1,z;

if ((z=y)<0)  x=4;

else if (y==0) x=5;

else x=6;

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

}

A) 4,1        B) 6,1

C) 5,0        D)

出错信息

正确答案是: B

41、下列程序的执行结果是(    )。

#include 

void main( )

{ int x=0,y=1,z=0;

if (x=z=y)

x=3;

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

}

A) 3,0        B) 0,0

C) 0,1        D) 3,1 

正确答案是: D

42、运行下面程序时,若从键盘输入"3,4 ",则程序的输出结果是(    )。

#include 

void main( )

{ int a,b,s;

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

s=a;

if (s

s=s*s;

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

}

A) 14        B) 16

C) 18        D) 20 

正确答案是: B

43、运行下面程序时,若从键盘输入"5 ",则程序的输出结果是(   )。

#include 

void main( )

{ int a ;

scanf("%d",&a);

if (a++>5)printf("%d\n",a);

else printf("%d\n",a--) ;

}

A) 7         B) 6

C) 5         D) 4 

正确答案是: B

44、运行下面程序时,从键盘输入"2.0",则输出结果是(    )。

#include 

void main( )

{ float a,b;

scanf("%f",&a);

if (a<0.0) b=0.0;

else if ((a<0.5) && (a!=2.0))  b=1.0/(a+2.0);

else if (a<10.0) b=1.0/2;

else b=10.0;

printf("%f\n",b);

}

A) 0.000000       B) 0.500000

C) 1.000000       D) 0.250000 

正确答案是: B

45、下列程序执行后的输出结果是(    )。

#include 

void main( )

{ int a=5,b=60,c;

if (a

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

else

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

}

A) 60/5=12         B) 300

C) 60*5=300       D) 12 

正确答案是: C

46、运行下面程序时,若从键盘输入数据为"3,7,1",则输出结果是(    )。

#include 

void main( )

{ float a,b,c,t;

scanf("%f,%f,%f",&a,&b,&c);

if (a>b)

{t=a;a=b;b=t;}

if (a>c)

{t=a;a=c;c=t;}

if (b>c)

{t=b;b=c;c=t;}

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

}

A) 7.00      B) 1.00      C) 1        D) 7

3.00          3.00          3            3

1.00          7.00          7            1

正确答案是: B

47、运行下面程序段时,若从键盘输入字母"b",则程序的输出结果是(    )。

#include 

void  main( )

{ char c;

c=getchar( );

if (c>='a' && c<='u') c=c+4;

else if (c>='v' && c<='z') c=c-21;

else printf("input error!\n");

putchar(c);

}

A) g          B) w

C) f           D) d

正确答案是: C

48、运行下面程序时,若从键盘输入"3,5",则程序的输出结果是(    )。

#include 

void main( )

{ int x,y;

scanf("%d,%d",&x,&y);

if (x==y)

printf("x==y");

else if (x>y)

printf("x>y");

else

printf("x

}

A) 3<5         B) 5>3

C) x>y          D) x

正确答案是: D

49、如果c为字符型变量,下面________可以判断c是否为空格。

A) if(c==32)             B) if(c=' ')

C) if(c='32')              D) if(c='')

正确答案是: A

50、设ch是char型变量,值为'A',则表达式

ch=(ch>='A' && ch<='Z')?ch+32:ch

的值是:

A) Z            B) a

C) z             D) A

正确答案是: B

1、在C语言中,下列说明正确的是

A)

不能使用 do-while构成的循环

B) do-while

构成的循环必须用break才能退出

C) do-while

构成的循环,当while中的表达式值为非零时结束循环

D) do-while

构成的循环,当while中的表达式值为零时结束循环 

正确答案是: D

2、若i,j已定义为int类型,则以下程序段中循环体的总的执行次数是

for (i=5;i;i--)

for (j=0;j<4;j++){...}

A) 20        B) 25

C) 24        D) 30 

正确答案是: A

3、当执行以下程序段时

x=-1

do { x=x*x

;} while( !x);

A)

循环体将执行一次

B)

循环体将执行两次

C)

循环体将执行无限次

D)

系统将提示有语法错误 

正确答案是: A

4、执行语句:for(i=1;i++<4;);后变量i的值是

A)3          B)4

C)5          D)

不定 

正确答案是: C

5、要使以下程序段输出10个整数,请填入一个整数。

for(i=0;i<=___;printf("%d\n",i+=2));

A) 17         B) 18

C) 20         D) 21

正确答案是: B

6、若输入字符串:abcde<回车>,则以下while循环体将执行多少次。

while((ch=getchar())!='e') printf("*");

A) 5         B) 4

C) 6         D) 1 

正确答案是: B

7、t为int型,进入下面的循环之前,t的值为0

while (t=1) { …… }

则以下叙述中正确的是

A)

循环控制表达式的值为0   B) 循环控制表达式的值为1

C)

循环控制表达式不合法    D) 以上说法都不对 

正确答案是: B

8、语句while(!e);中的条件 !e 等价于(    )。

A) e==0      B) e!=1

C) e!=0       D) ~e 

正确答案是: A

9、以下for循环是(    )。

for(x=0,y=0;(y!=123) && (x<4);x++)

A)

无限循环     B) 循环次数不定

C)

执行4次      D) 执行3次 

正确答案是: C

10、对于for(表达式1;;表达式3)可理解为(    )。

A) for(

表达式1;0;表达式3)

B) for(

表达式1;1;表达式3)

C) for(

表达式1;表达式1;表达式3)

D) for(

表达式1;表达式3;表达式3) 

正确答案是: B

11、C语言中while 和do-while 循环的主要区别是(    )。

A) do-while

的循环体至少无条件执行一次

B) while

的循环控制条件比do-while 的循环控制条件严格

C) do-while

允许从外部转到循环体内

D) do-while

的循环体不能是复合语句 

正确答案是: A

12、若i为整型变量,则以下循环语句的循环次数是(   )。

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

printf("%d",i--);

A)

无限次       B) 0次

C) 1

次            D) 2次

正确答案是: B

13、对下面程序段,描述正确的是(    )。

for(t=1;t<=100;t++)

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

if (x<0) continue;

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

}

A)

当x<0时,整个循环结束

B)

当x>=0时,什么也不输出

C) printf

函数永远也不执行

D)

最多允许输出100个非负整数 

正确答案是: D

14、对下面程序段叙述的正确的是(    )。

int k=0;

while (k=0) k=k-1;

A) while

循环执行10次      B) 无限循环

C)

循环体一次也不被执行    D) 循环体被执行一次

正确答案是: C

15、若i,j已定义成int型,则以下程序段中循环体的总执行次数是(    )。

for(i=3;i;i--)

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

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

{......}

A) 18          B) 27

C) 36          D) 30

正确答案是: A

16、以下程序的输出结果是

#include

void main( )

{ int a,b;

for(a=1,b=1;a<=100;a++)

{ if (b>=10) break;

if (b%5==1) { b+=5; continue;  }  }

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

A) 101        B) 6

C) 4            D) 3

正确答案是: D

17、以下程序段的输出结果是(   )。

int k,j,s;

for(k=2;k<6;k++,k++)

{ s=1;

for(j=k;j<6;j++)

s+=j;}

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

A) 1         B) 9

C) 11        D) 10 

正确答案是: D

18、定义如下变量:

int n=10;

则下列循环的输出结果是(   )。

while(n>7)

{ n--; printf("%d\n",n);}

A) 10         B) 9          C) 10         D) 9

9             8             9             8

8             7             8             7

7               6

正确答案是: B

19、设有如下程序段:

int i=0, sum=1;

do

{ sum+=i++;}

while(i<6);

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

上述程序段的输出结果是(    )。

A) 11          B) 16

C) 22          D) 15

正确答案是: B

20、下面程序的输出结果是(    )。

#include

void main( )

{ unsigned int num,k;

num=26;k=1;

do {

k*=num%10;

num/=10;

} while(num);

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

}

A) 2          B) 12

C) 60         D) 18 

正确答案是: B

21、下面函数的功能是根据以下的公式,返回满足精度∈要求的π值,请填空。

π

1    1  2   1  2  3      1  2  3  4

— = 1+— + — — + — — — + — — — — + ……

2       3    3  5     3  5  7      3  5  7  9

#include

void main( )

{ double esp,s=0.0, t=1.0;

int n;

scanf("%f",&esp);

for(_________; t>esp; n++)

{ __________;

t=n*t/(2*n+1);}

s=2*s;

printf("s=%f\n",s);

}

A) n=1                B) t=1

s+=t                  s=s/t

C) t=1                D) n=1.0

s=s+t                 t+=s

正确答案是: A

22、运行下面的程序,如果从键盘上分别输入6和4,则输出结果是(    )。

#include

void main( )

{ int i,x;

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

{ 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 

正确答案是: A

23、阅读以下程序:

#include

void  main( )

{ int x;

for(x=5;x>0;x--)

if (x--<5) printf("%d,",x);

else printf("%d,",x++);  }

程序运行后的输出结果是(    )。

A) 4,3,2        B) 4,3,1,

C) 5,4,2        D) 5,3,1, 

正确答案是: B

24、下面程序是计算n个数的平均值,请填空。

#include

void main( )

{ int i,n;

float x,avg=0.0;

scanf("%d",&n);

for(i=0;i

{ scanf("%f",&x);

avg=avg+______; }

avg=________;

printf("avg=%f\n",avg);

}

A) i              B) x

avg/i             avg/n

C) x              D) i

avg/x             avg/n

正确答案是: B

25、以下程序段的执行结果是(   )。

int i,j,m=0;

for(i=1;i<=15;i+=4)

for(j=3;j<=19;j+=4)

m++;

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

A) 12           B) 15

C) 20           D) 25

正确答案是: C

26、下面程序的输出结果是(   )。

#include 

void main( )

{ int x,i;

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

{ x=i;

if (++x%2==0)

if (x%3==0)

if (x%7==0)

printf("%d",i);

}

}

A) 28         B) 27

C) 42         D) 41 

正确答案是: D

27、运行以下程序后,如果从键盘上输入:65 14<回车>,则输出结果为

#include

void  main( )

{ int m,n;

printf("Enter m,n:");

scanf("%d%d",&m,&n);

while (m!=n)

{ while (m>n) m-=n;

while (n>m) n-=m;

}

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

}

A) m=3        B) m=2

C) m=1        D) m=0 

正确答案是: C

28、以下循环体的执行次数是

#include

void main( )

{ int i,j;

for(i=0,j=1; i<=j+1; i+=2, j--)

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

}

A) 3           B) 2

C) 1           D) 0

正确答案是: C

29、以下程序段的执行结果是

int a,y;

a=10;y=0;

do

{ a+=2; y+=a;

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

if (y>20) break;

}while(a=14);

A) a=12 y=12   B) a=12 y=12   C) a=12 y=12   D) a=12 y=12

a=14 y=16       a=16 y=28                              a=14 y=26

a=16 y=20                                                    a=14 y=44

a=18 y=24 

正确答案是: B

30、有如下程序

#include

void main( )

{ int n=9;

while(n>6) {n--;printf("%d",n);}

}

该程序段的输出结果是

A) 987       B) 876

C) 8765     D) 9876 

正确答案是: B

31、函数pi的功能是根据以下近似公式求π值:

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

请填空,完成求π的功能。

#include 

void main( )

{ double s=0.0; int i,n;

scanf("%ld",&n);

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

s=s+_______ ;

s=(sqrt(6*s));

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

}

A) 1/i*i          B) 1.0/i*i

C) 1.0/(i*i)     D) 1.0/(n*n) 

正确答案是: C

32、下面程序的运行结果是(    )。

#include

void main( )

{ int a,b;

a=-1;

b=0;

do {

++a;

++a;

b+=a;

} while(a<9);

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

}

A) 34        B) 24

C) 26        D) 25 

正确答案是: D

33、执行下面程序段后,k的值是(    )。

int i,j,k;

for(i=0,j=10;i

k=i+j;

A) 9        B) 11

C) 8        D) 10 

正确答案是: D

34、下面程序段的运行结果是(    )。

for(x=10;x>3;x--)

{ if(x%3) x--;

--x; --x;

printf("%d ",x);

}

A) 6 3          B) 7 4

C) 6 2          D) 7 3

正确答案是: B

35、下面程序段的运行结果是(    )。

int x=0,y=0;

while (x<15) y++,x+=++y;

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

A) 20,7        B) 6,12

C) 20,8        D)8,20 

正确答案是: D

36、下面程序段的运行结果是(    )。

int n=0;

while (n++<=2)

printf("%d",n);

A) 012            B) 123

C) 234            D)

错误信息

正确答案是: B

37、下面程序的运行结果是(    )。

#include

void main( )

{ int a=1,b=10;

do

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

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

}

A) 3,11         B) 2,8

C) 1,-1         D) 4,9

正确答案是: B

38、下面程序的运行结果是(    )。

#include

void main( )

{ int x=3,y=6,a=0;

while (x++!=(y-=1))

{ a+=1;

if (y

}

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

}

A) 4,4,1         B) 5,5,1

C) 4,4,3         D) 5,4,1

正确答案是: D

39、下面程序段的输出结果是(    )。

x=3;

do { y=x--;

if (!y) {printf("*");continue;}

printf("#");

} while(x=2);

A) ##             B) ##*

C)

死循环      D)输出错误信息

正确答案是: C

40、对下面程序段描述正确的是(    )。

int x=0,s=0;

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

printf("%d",s);

A)

运行程序段后输出0

B)

运行程序段后输出1

C)

程序段中的控制表达式是非法的

D)

程序段循环无数次 

正确答案是: B

41、以下程序的输出结果是(    )。

#include 

void  main( )

{

int num=0;

while (num<=2)

{ num++;

printf( "%d\n",num); }

}

A) 1         B) 1         C) 1         D) 1

2             2             2

3             3

4

正确答案是: C

42、下面程序的输出结果是(    )。

#include

void main()

{ int x=3,y=6,a=0;

while(x++!=(y-=1))

{a+=1;

if(y

}

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

}

A) x=4,y=4,a=1          B) x=5,y=5,a=1

C) x=5,y=4,a=3          D) x=5,y=4,a=1

正确答案是: D

43、设j为int型变量,则下面for循环语句的执行结果是(    )。

for( j=10;j>3;j--)

{ if (j%3) j--;

--j;  --j;

printf("%d ",j);

}

A) 6 3          B) 7 4

C) 6 2          D) 7 3

正确答案是: B

44、运行以下程序后,如果从键盘上输入china#<回车>,则输出结果为

#include 

void main( )

{ int v1=0,v2=0;

char ch;

while ((ch=getchar( ))!='#')

switch(ch)

{ case 'a':

case 'h':

default: v1++;

case 'o': v2++;

}

printf("%d,%d\n",v1,v2);

}

A) 2,0           B) 5,0

C) 5,5           D) 2,5

正确答案是: C

45、以下程序的输出结果是(    )。

#include

void 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++;

}

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

}

A) x=4          B) x=8

C) x=6          D) x=12

正确答案是: B

46、下列程序的输出结果是(    )。

#include

void main( )

{ int i, j, m=0, n=0;

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

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

if (j>=i) m=1; n++;

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

}

A) 4        B) 2

C) 1        D) 0 

正确答案是: C

47、下面程序的功能是:计算1到10之间奇数之和及偶数之和,请填空。

#include 

void main()

{ int a,b,c,i;

a=c=0;

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

{ a+=i;

______;

c+=b;

}

printf("

偶数之和=%d\n",a);

printf("

奇数之和=%d\n",c-11);

}

A) i+=2       B) i++

C) b=b+1    D) b=i+1 

正确答案是: D

48、下面程序的运行结果是(    )。

#include

void main( )

{ int k=0;

char c='A';

do

{

switch(c++)

{ case 'A': k++; break;

case 'B': k--;

case 'C': k+=2; break;

case 'D': k=k%2; continue;

case 'E': k=k*10; break;

default: k=k/3;

}

k++;

} while(c<'G');

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

}

A) 3        B) 4

C) 2        D) 0 

正确答案是: B

49、要输出下面的图形,请完善程序。

1

1 2 1

1 2 3 2 1

1 2 3 4 3 2 1

1 2 3 4 5 4 3 2 1

#include 

void main( )

{ int i,j,k;

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

{

for(j=1;j<=20-3*i;j++)

printf(" ");

for(k=1;_________;k++)

printf("%3d",k);

for(__________;k>=1;k--)

printf("%3d",k);

printf("\n");

}

}

A) k<=i         B)k

k=i            k=i-1

C) k

k=i            k=i-1

正确答案是: D

50、运行以下程序后,如果从键盘上输入12,8<回车>,则输出结果为(    )。

#include

void main( )

{ int a,b,n1,n2,t;

scanf("%d,%d",&n1,&n2);

if (n1>n2)

{ t=n1;n1=n2;n2=t;}

a=n1;b=n2;

while (b!=0)

{ t=a%b;

a=b;

b=t; }

printf("%d,%d\n",a,n1*n2/a);

}

A) 2,6       B) 4,24

C) 4,12      D) 8,96 

正确答案是: B

1、设有数组定义:char array[10]= "China";则strlen(array)

的值为________ 。

A) 5                B) 6

C) 10               D) 11

正确答案是: A

2、下列程序执行后的输出结果是________。

#include

void main()

{ int i,j,a[3][3];

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

for(j=0;j<3;j++)  a[i][j]=i*j+1;

printf("%d,%d\n",a[1][2],a[2][1]);

}

A) 3,3             B) 3,

不定值

C) 3                D) 3,1

正确答案是: A

3、设有数组定义:char array[10]= "China";则数组array所占的存储空间为________。

A) 4

个字节           B) 5个字节

C) 6

个字节           D) 10个字节

正确答案是: D

4、已知数组a的赋值情况如下所示,则执行语句a[2]++;后,a[1]和a[2]的值分别是________。

a[0]  a[1]  a[2]  a[3]  a[4]

┌──┬──┬──┬──┬──┐

│ 10│ 20│ 30│ 40│ 50│

└──┴──┴──┴──┴──┘

A) 20

和30          B) 20和31

C) 21

和30          D) 21和31 

正确答案是: B

5、下面程序的功能是:计算1到10之间的奇数之和及偶数之和,划线处应填________。

#include 

void main()

{ int a,b,c,i;

a=b=c=0;

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

{ a+=i;

________;//

与各偶数对应的各奇数

c+=b;  }

printf("

偶数之和=%d\n",a);

printf("

奇数之和=%d\n",c-11);  //最后一次多加了11,需要减掉

}

A) c+=i           B) b+=i

C) b=i+1          D) i=i+1

正确答案是: C

6、下面程序的功能是:将字符数组a中下标值为偶数的元素从小到大排列,

其它元素不变。划线处应填________。

#include 

#include 

void main()

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

int i,j,k;     k=strlen(a);

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

for(j=i+2;j

将第一个偶数位与其它偶数位进行比较,使第一个偶数位a[0]存储 

 //最小的元素,之后移动到第二个偶数位,与其它偶数位进行比较

if(a[i]>a[j])

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

puts(a);

printf("\n");

}

A) k=k+1              B) k=k+2

C) j+=1               D) j+=2

正确答案是: D

7、下面程序的功能是________。

#include 

#include 

void main()

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

int i,j,k;     k=strlen(a);

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

for(j=i+2;j

if(a[i]>a[j])

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

puts(a);

printf("\n");

}

A)

将字符数组a中的元素从小到大排序

B)

将字符数组a中的元素从大到小排序

C)

将字符数组a中下标为偶数的元素从小到大排序

D)

将字符数组a中下标为奇数的元素从小到大排序 

正确答案是: C

8、 下面程序运行以后的结果是________。

#include

void main()

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

int i,j,k;     k=strlen(a);

for(i=0;i<=k-1;i+=1)

for(j=i+1;j

if(a[i]>a[j])

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

puts(a);

printf("\n");

}

A) clanguage           B) aacegglnu

C) egauganlc           D) cgalgnaue

正确答案是: B

9、以下程序的功能是:将无符号八进制数字构成的字符串转换为十进制整数。例如,输入的字符串为:556,则输出十进制整数366,划线处应填________。

#include 

void main()

{ char s[6];     int n,j;

gets(s);

if(s[0]!='\0')  n=s[0]-'0';

j=0;

while(s[++j]!='\0') __________;

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

A) n=n*8+s[j]-0          B) n=n*8+s[j]

C) n=n*8+s[j]-'\0'       D) n=n*8+s[j]-'0'

正确答案是: D

10、以下程序的功能是:将无符号八进制数字构成的字符串转换为十进制整数。要想使程序转换十进制数字构成的字符串为十进制整数,应修改程序中的第________行(注:每行前面的数字为行号)。

1   #include 

2   void main()

3   { char s[6];

4     int n,j;

5     gets(s);

6     if(s[0]!='\0')  n=s[0]-'0';

7     j=0;

8     while(s[j++]!='\0') n=n*8+s[j]-'0';

9     printf("%d\n",n);  }

A) 3          B) 6

C) 7          D) 8

正确答案是: D

11、以下程序的输出结果是________。

#include

void main( )

{ int i,p=0,a[10]={1,5,9,0,-3,8,7,0,1,2};

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

if(a[i]

printf("%d,%d\n",a[p],p);

}

A) -3,4            B) 0,1

C) 9,2             D) 2,9

正确答案是: A

12、有如下程序

#include

void main( )

{ char ch[2][5]={"6937","8254"};

int i,j;long s=0;

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

for(j=0;ch[i][j]>'\0';j++)

s=10*s+ch[i][j]-'0';

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

}

该程序的输出结果是________。

A) 69825           B) 693825

C) 6385             D) 69378254

正确答案是: D

13、有如下程序

#include

void main()

{ char ch[80]="123abcdEFG*&";

int j;long s=0;

for(j=0;ch[j]>'\0';j++) ;

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

}

该程序的功能是________。

A)

测字符数组ch的长度

B)

将数字字符串ch转换成十进制数

C)

将字符数组ch中的小写字母转换成大写

D)

将字符数组ch中的大写字母转换成小写 

正确答案是: A

14、以下程序的输出结果是________。

#include 

void main()

{ char a[10]={'1','2','3','\0','5','6','7','8','9',0};

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

}

A) 123              B) 1230

C) 123056789        D) 1230567890

正确答案是: A

15、下面程序把数组元素中的最大值放入a的最后一个元素中,则在if语句中的条件表达式应该是________。

#include 

void main()

{ int a[11]={6,7,2,9,1,10,5,8,4,3},i;

a[10]=a[0];

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

if(________)  a[10]=a[i];

printf("%d\n",a[10]);

}

A) a[10]>a[0]         B) a[10]>a[i]

C) a[10]

正确答案是: D

16、以下程序的输出结果是________。

#include

void main()

{ char p1[]="abcd",p2[]="efgh",str[50]="ABCDEFG";

strcat(str,p2);  strcat(str,p1);

printf("%s",str);

}

A) ABCDEFGefghabcd    B) ABCDEFGefgh

C) efghabcd                 D) ABCDEFGabcdefgh

正确答案是: A

17、下列程序运行的结果是________。

#include 

void main()

{ char str1[20]={'H','o','w','\40','\0','d','o'};

strcat(str1,"is she");

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

}

A) How is          B) How is she

C) How dois she    D) Howis she 

正确答案是: B

18、以下程序的功能是:从键盘上输入若干个学生的成绩,统计计算出平均成绩,并输出低于平均分的学生成绩,当输入负数时结束。划线处应分别填入_________。

#include

void main()

{ float x[1000],sum=0.0,ave,a;  int n=0,i;

printf("Enter mark:\n"); scanf("%f",&a);

while(a>=0.0 && n<1000)

{ sum+=______; x[n]=a;

n++;

scanf("%f",&a);

}

ave=________;

printf("Output :\n");

printf("ave=%f\n",ave);

for(i=0;i

if(x[i]

}

A) a

和sum/n        B) x[n]和sum/n

C) a

和sum/i        D) a和sum/1000 

正确答案是: A

19、以下程序的功能是:从键盘上输入若干个学生的成绩,统计计算出平均成绩,并输出低于平均分的学生成绩,当输入负数时结束。划线处应填入_________。

#include

void main()

{ float x[1000],sum=0.0,ave,a;  int n=0,i;

printf("Enter mark:\n"); scanf("%f",&a);

while(a>=0.0 && n<1000)

{ sum+=a; x[n]=a;

n++;

scanf("%f",&a);  }

ave=sum/n;

printf("Output :\n");

printf("ave=%f\n",ave);

for(i=0;______;i++)

if(x[i]

}

A) i<=n        B) i<1000

C) i

正确答案是: C

20、下面程序的输出结果是________。

#include

void main()

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

printf("%d,%d\n",a[4]+3,a[4+3]);

}

A) 6,6            B)8,8

C) 6,8            D)8,6

正确答案是: C

21、如有定义语句int a[]={1,8,2,8,3,8,4,8,5,8}; ,则数组a的大小是________。

A) 10            B) 11

C) 8             D)

不定

正确答案是: A

22、以下程序的输出结果是________。

#include

void  main()

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

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

printf("%d,",x[i][i]);

printf("\n");

}

A) 1,5,9,       B) 1,4,7,

C) 3,5,7,       D) 3,6,9, 

正确答案是: A

23、以下程序的输出结果是________。

#include

void main()

{ int a[4][4]={{1,2,3,4},{3,4,5,6},{5,6,7,8},{7,8,9,10}};

int j,s=0;

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

s+=a[j][j];

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

}

A) 36          B) 26

C) 22          D) 20

正确答案是: C

24、以下程序的输出结果是_________。

#include

void main()

{ char w[][10]={"ABCD","EFGH","IJKL","MNOP"},k;

for(k=1;k<3;k++)  printf("%s\n",w[k]);

}

A) ABCD        B) ABCE

FGH               EFG

KL                 IJ

M

C) EFG         D) EFGH

JK                IJKL

正确答案是: D

25、当执行下面的程序时,如果输入ABC,则输出结果是_________。

#include "stdio.h"

#include "string.h"

void main()

{ char ss[10]="12345";

gets(ss);

strcat(ss,"6789");

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

}

A) ABC6789        B) ABC67

C) 12345ABC6      D) ABC45678 

正确答案是: A

26、如果有定义语句char str1[10],str2[10]={"books"};则能将字符串

books

赋给数组str1的正确语句是________。

A) str1="books";      B) strcpy(str1,str2);

C) str1=str2;         D) strcpy(str2,str1);

正确答案是: B

27、下面的程序中第________行有错误(每行程序前面的数字是行号)

1   #include 

2   void main()

3   {

4     float a[3]={0.0};

5     int i;

6     for(i=0;i<3;i++) scanf("%d",&a[i]);

7     for(i=1;i<3;i++) a[0]=a[0]+a[i];

8     printf("%f\n",a[0]);

9   }

A)

没有        B) 第4行

C)

第6行       D) 第8行 

正确答案是: C

28、请读程序片段(字符串内没有空格字符):

printf("%d\n",strlen("ATS\n\t\012\1\\"));

上面程序片段的输出结果是________。

A) 11           B) 10

C) 9            D) 8

正确答案是: D

29、请读程序片段:

char str[]="ABCD";

printf("%d\n",str[4]);

上面程序片段的输出结果是________。

A) 68           B) 0

C) D            D)

不确定的值 

正确答案是: B

30、下面各语句行中,能正确进行赋字符串操作的语句行是

A) char st[4][5]={"ABCDE"};

B) char s[5]={'A','B','C','D','E','F'};

C) char s[10]; s={"ABCDE"};

D) char s[10]; scanf("%s",s); 

正确答案是: D

31、请读程序:

#include

void main()

{ int a[10]={4,8,11,6},b[4];

int i;

for(i=0;i<4;i++) b[i]=a[i+1];

printf("%d\n",b[2]);

}

上面程序的输出结果是

A) 4          B) 8

C) 11         D) 6 

正确答案是: D

32、有以下程序:

#include 

#define N 6

void main()

{ char c[N];int i=0;

for(;i

for(i=0;i

}

输入以下三行,每行输入都是在第一列上开始,代表一个回车符:

a

b

cdef

程序的输出结果是______。

A) abcdef       B) a

b

c

d

e

f

C) a              D) a

b                  b

cd                cdef

正确答案是: C

33、下述对C语言字符数组的描述中错误的是________。

A)

字符数组可以存放字符串

B)

字符数组中的字符串可以整体输入,输出

C)

可以在赋值语句中通过赋值运算符"="对字符数组整体赋值

D)

不可以用关系运算符对字符数组中的字符串进行比较 

正确答案是: C

34、下列程序的输出结果是________。

#include

void main()

{char ch[2][5]={"6934","8254"};

int i,j,s=0;

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

for(j=0;ch[i][j]>'0' && ch[i][j]<='9';j+=2)

s=10*s+ch[i][j]-'0';

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

}

A) 6385          B) 69825

C) 63825         D) 693825

正确答案是: A

35、下列程序的输出结果是________。

#include

void main()

{char ch[2][5]={"6934","8254"};

int i,j; long  s=0;

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

for(j=0;ch[i][j]>'0' && ch[i][j]<='9';j++)

s=10*s+ch[i][j]-'0';

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

}

A) 6385        B) 6982

C) 693825      D) 69348254 

正确答案是: D

36、下列程序的输出结果是________。

#include 

void main()

{char b[]="ABCDEFG";

char p=0;

while(p<7)

putchar(b[p++]);

putchar('\n');

}

A) GFEDCBA         B) BCDEFG

C) ABCDEFG         D) GFEDCB

正确答案是: C

37、阅读程序:

#include

void main()

{ char str1[]="how do you do",str2[10];

scanf("%s",str2);

printf("%s",str2);

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

}

运行该程序,输入字符串HOW DO YOU DO,则程序的输出结果是______。

A) HOW DO YOU DO           B) HOWhow do you do

C) How how do you do       D) how do you do

正确答案是: B

38、设有如下定义语句:

static char str[20]="Beijing";

则执行:

printf("%d\n",strlen(strcat(str,"China")));

后的输出结果为________。

A) 5           B) 12

C) 13          D) 14

正确答案是: B

39、不能把字符串"HELLO!"赋给数组b的语句是________。

A) char b[10]={'H','E','L','L','O','!','\0'};

B) char b[10]; b="HELLO!";

C) char b[10]; strcpy(b,"HELLO!");

D) char b[10]={"HELLO!"}; 

正确答案是: B

40、若有以下说明:

int a[12]={1,2,3,4,5,6,7,8,9,10,11,12}; char c='a',d,g;

则数值为4的表达式是________。

A) a[g-c]         B) a[4]

C) a['d'-'c']     D) a['d'-c] 

正确答案是: D

41、当执行下面程序且输入:ABC时,输出的结果是________。

#include

#include

void main()

{ char ss[10]="12345";

strcat(ss,"6789");

gets(ss); printf("%s\n",ss);

}

A) ABC            B) ABC9

C) 123456ABC      D) ABC456789 

正确答案是: A

42、以下程序的输出结果是________。

#include

void  main()

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

printf("%d%d%d%d\n",a[0][0],a[1][1],a[2][2],a[3][3]);

}

A) 0650         B) 1470

C) 5430         D)

输出值不定

正确答案是: B

43、以下程序的输出结果是________。

#include 

void main()

{ char st[20]="hello\0\t\'\\";

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

}

A) 9           B) 5

C) 13          D) 20

正确答案是: B

44、以下对一维数组a进行正确初始化的是__________。

A) int  a[10]=(0,0,0,0,0);    B) int a[10]={ };

C) int  a[3]={0},                D) int a[10]={ 10*2};

正确答案是: D

45、以下给字符数组str定义和赋值正确的是________。

A) char  str[10];  str={"China!"};

B) char  str[ ]={"China!"};

C) char  str[10];   strcpy( str,"abcdefghijkl");

D) char  str[10]={"abcdefghijkl"}; 

正确答案是: B

46、在执行语句: int a[ ][3]={1,2,3,4,5,6}; 后,

a[1][0]

的值是________。

A) 4                B) 1

C) 2                D) 5

正确答案是: A

47、在定义int a[5][6];后,数组a中的第10个元素是________。(设a[0][0]为第一个元素)

A) a[2][5]                  B) a[2][4]

C) a[1][3]                  D) a[1][5]

正确答案是: C

48、以下程序执行时输入Language  Programming<回车>,输出结果是________。

#include  

void main( )

{ char  str[30];

scanf("%s",str);

printf("str=%s\n",str);

}

A) Language Programming        B) Language

C) str=Language                D) str=Language Proguamming

正确答案是: C

49、以下程序执行时输入Language  Programming<回车>,输出结果是________。

#include  

void main( )

{ char  str[30];

gets(str);

printf("str=%s\n",str);

}

A) Language  Programming       B) Language

C) str=Language                     D) str=Language  Programming

正确答案是: D

50、以下程序输出的结果是________。

#include  

void main( )

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

long s=0;

for(i=0;i<5;i++)    s=s*10+a[i];

printf("s=%ld\n",s);

}

A) s=12345                B) s=5 4 3 2 1

C) s=54321                D)

以上都不对

正确答案是: C

51、以下程序输出的结果是_________ 。

#include 

void main( )

{ char  str[ ]="1a2b3c";  int  i;

for(i=0;str[i]!='\0';i++)

if(str[i]>='0'&&str[i]<='9')  printf("%c",str[i]);

printf("\n");

}

A) 123456789              B) 1a2b3c

C) abc                    D) 123

正确答案是: D

52、以下程序执行后的输出结果是________ 。

#include 

void main( )

{ int a[4][5]={1,2,4,8,10,-1,-2,-4,-8,-10,3,5,7,9,11};

int i,j,n=9;

i=n/5;  j=n-i*5-1;

printf("%d\n",a[i][j]);

}

A) -8             B) -10

C) 9              D) 11

正确答案是: A

53、以下程序的输出结果是________ 。(设a[0][0] 是数组a中的第1个元素)

#include  

void main( )

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

int  i,j,i1,j1,n;

n=-4;

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

{ for(j=0;j<5;j++)

if(a[i][j]==n) { i1=i;j1=j;  }

}

printf("%d  is  No. %d of  a\n", n,i1*5+j1+1);

}

A) n

在数组a中第一次出现的位置

B) n

在数组a中最后一次出现的位置

C) n

在数组a中第一次出现的下标

D) n

在数组a中最后一次出现的下标 

正确答案是: B

54、下列一维数组说明中,不正确的是________。

A) int n; scanf("%d",&n);  float  b[n];

B) float  a[ ]={5,4,8,7,2};

C) #define  S  10

int a[S+5];

D) float  a[5+3],b[2*4]; 

正确答案是: A

55、下列一组初始化语句中,正确的是________。

A) int a[8]={  };                B) int a[9]={0,7,0,4,8};

C) int a[5]={9,5,7,4,0,2};   D) int a[7]=7*6;

正确答案是: B

56、现要定义一个二维数组c[M][N]来存放字符串

"Science"

、"Technology"、"Education"和"Development",则常量M和N的合理取值应为________。

A) 3

和11        B) 4和12

C) 4

和11        D) 3和12 

正确答案是: B

57、下列一维数组初始化语句中,正确且与语句

float  a[ ]={0,3,8,0,9};

等价的是________。

A) float  a[6]={0,3,8,0,9};   B) float  a[4]={0,3,8,0,9};

C) float  a[7]={0,3,8,0,9};   D) float  a[5]={0,3,8,0,9};

正确答案是: D

58、若static  float  data[8][5];所说明的数组在静态存储区中分配的十六进制起始地址为100H,则数组元素data[3][4]在静态存储区中的十六进制地址为________。(H表示十六进制数)

A) 126H          B) 11AH

C) 14CH          D) 134H

正确答案是: C

59、若有说明char  c[7]={'s','t','r','i','n','g'};则对元素的非法引用是________。

A) c[0]          B) c[9-6]

C) c[4*2]        D) c[2*3]

正确答案是: C

60、以下程序段的输出结果是________。

char  s[ ]="an apple";

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

A) 7            B) 8

C) 9            D) 10

正确答案是: B

61、若有以下定义:static char str[9];,现要使str从键盘上获取字符串"The lady",应使用________。

A) scanf("%s",str);

B) for(i=0;i<9;i++) getchar(str[i]);

C) gets(str);

D) for(i=0;i<9;i++) scanf("%s",&str[i]); 

正确答案是: C

62、下面的程序用来输出两个字符串前5个字符中对应相等的字符及其位置号,程序空白处应选择________。

#include 

void main( )

{ char s1[ ]={"appreciate"},s2[ ]={"architecture"};

int i;

for(i=0;s1[i]!='\0'&& s2[i]!='\0';i++)

if(s1[i]==s2[i]&&i<5)  ________;

}

A) putchar(s2[i]);putchar(i);

B) puts(s1[i],i);

C) printf("%c %d\n",s2[i],i);

D) printf("%c",s1[i]); printf("%d\n",i); 

正确答案是: C

63、若希望下面的程序运行后输出25,程序空白处的正确选择是________。

#include 

void main( )

{ int i,j=50,a[ ]={7,4,10,5,8};

for( ____________ )

j+=a[i];

printf("%d\n",j-40);

}

A) i=4;i>2;--i      B) i=1;i<3;++i

C) i=4;i>2;i--      D) i=2;i<4;++i

正确答案是: D

64、若希望下面的程序运行后输出45,程序空白处的正确选择是________。

#include 

void main( )

{ int i,j=10,a[ ]={1,3,5,7,9,11,13,15};

for( ____________ )

j+=a[i];

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

}

A) i=5;i>1;i--       B) i=0;i<7;++i

C) i=5;i>=1;--i      D) i=2;i<6;++i

正确答案是: C

65、下面程序运行后,输出结果是________。

#include 

void main()

{ char s[ ]="father";

int i,j=0;

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

if(s[j]>s[i])  j=i;

s[j]=s[6];

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

}

A) f                B) fa

C) frther           D) fath

正确答案是: A

66、下面程序运行后,输出的结果是________。

#include 

void main( )

{ char s[10]="flexible",c;

int i=0,j;

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

if(s[i]>s[j]&&s[j]!='\0')

{c=s[i];s[i]=s[j];s[j]=c;}

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

}

A) xlfeible         B) blfxiele

C) xfelible         D) blexifle

正确答案是: B

67、读如下程序,下面的说法中正确的是________。

#include 

void main( )

{ int i=0;

char s1[10]="1234",s2[10]="567";

strcat(s1,s2);

while(s2[i]!='\0')  {s2[i]=s1[i]; i++;}

puts(s2);

}

A)

将语句:while(s2[i]!='\0')  {s2[i]=s1[i]; i++;}

改为:while(s2[i++]!='\0')  s2[i]=s1[i]; 后,程序的运行结果不变

B)

程序的功能是将字符串s2连接到字符串s1的后面,再将s1的前3个字符复制到s2中

C)

在程序中将字符串s2连接到字符串s1的后面

D)

在程序中将字符串s1连接到字符串s2的后面

正确答案是: B

68、运行下面的程序段,输出结果是________。

int i;

char s[ ][5]={"abc","def","ghi","jkl"};

for(i=1;i++<3;)  printf("%s",s[i]);

A) ghi              B) defghi

C)

编译出错D) ghijkl

正确答案是: D

69、下面程序运行后,输出结果是________。

#include 

void main( )

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

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

{ j=a[i];a[i]=a[5-i];a[5-i]=j;}

for(i=0;i<6;i++) printf("%d ",a[i]);

}

A) 6 5 4 3 2 1         B) 1 2 3 4 5 6

C) 1 5 4 3 2 6         D) 1 5 3 4 2 6

正确答案是: D

70、下面程序运行后,输出结果是________。

#include 

void main( )

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

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

{ j=a[i];a[i]=a[5-i];a[5-i]=j;}

for(i=0;i<6;i++) printf("%d ",a[i]);

}

A) 6 5 4 3 2 1         B) 1 2 3 4 5 6

C) 1 5 4 3 2 6         D) 1 5 3 4 2 6

正确答案是: A

71、下面程序段运行后,输出结果是________。

#include 

#include 

void main( )

{ int i; char  s1[6]="abcd";

strcpy(s1,"fg");

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

if(s1[i]!='\0')  s1[i]+=i;

puts(s1);

}

A) fh             B)

编译出错

C) fhaga          D) fhag

正确答案是: A

72、下面程序用来求二维数组的最大元素及其位置,程序划线处的正确选择项是________。

#include 

void main( )

{ int a[5][4],i,j,max,row,col;

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

for(j=0;j<4;j++) scanf("%d",&a[i][j]);

max=a[4][0]; row=4;col=0;

for(________)

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

if(max

printf("max=%d,row=%d,col=%d\n",max,row,col);

}

A) i=4;i>0;--i         B) i=0;i<5;i++

C) i=-1;i<4;++i        D) i=5;i>0;--i

正确答案是: B

73、下面程序的功能是________。

#include 

void main( )

{ int a[5][4],i,j,max,row,col;

for(i=0;i<5;i++)  for(j=0;j<4;j++) scanf("%d",&a[i][j]);

max=a[4][0]; row=4;col=0;

for(i=4;i>=0;i--)

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

if(max

printf("max=%d,row=%d,col=%d\n",max,row,col);  }

A)

求二维数组中第4行中的最大元素及位置

B)

求二维数组中的最大元素及位置

C)

求二维数组中最小元素及位置

D)

求二维数组中每一行的最大元素及位置 

正确答案是: B

74、下面程序运行后,输出结果是________。

#include

void main()

{ static char b[]="Goodbye";

int n=7;

while( --n >0) putchar( b[n]);

putchar('\n');

}

A) eybdooG       B) eybdoo

C) ybdooG         D) ybdoo

正确答案是: B

75、要求下面程序运行后,输出二维数组a的前2列各元素之和,划线处应填入________。

#include 

void main()

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

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

for(__________)  k+=a[i][j];

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

}

A) j=0; j<2; j++           B) j=0; j<4;j++

C) j=0; j<=2; j++         D) j=1; j<2;j++

正确答案是: A

76、给出以下定义:

char x[ ]="abcdefg";

char y[ ]={'a','b','c','d','e','f','g'};

则正确的叙述为 ________。

A)

数组x和数组y等价

B)

数组x和数组y的长度相同

C)

数组x的长度大于数组y的长度

D)

数组x的长度小于数组y的长度


正确答案是: C

77、要求下面的程序运行后,显示如下结果:

2  10   4   6

1   5   2   3

2   4   7   8

5   1   3   2

则程序中的划线处应填入________。

#include 

void main( )

{ int a[4][4]={ ________ };

int i,j;

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

{for(j=0;j<4;j++)  printf("%4d",a[i][j]);

printf("\n"); }

}

A) {1,5,2,3},{2,4,7,8},{5,1,3,2}

B) {2,10,4,6},{1,5,2,3},{2,4,7,8},{5,1,3,2}

C) {5,1,3,2},{2,4,7,8},{1,5,2,3}

D) {2,1,2,5},{10,5,4,1},{4,2,7,3},{6,3,8,2} 

正确答案是: B

78、设有定义语句:static char str[ ]="Are you ready?";,则执行

printf("%d\n", strlen(strcpy(str,"OK!")));

后的输出结果为________。(注意各单词之间有一空格)

A) 16           B) 14

C) 3             D) 2

正确答案是: C

79、请读程序片段(注意字符串内没有空格):

printf("%d\n",strlen("ATS\n012\1\\"));

上面程序片段的输出结果是________。

A) 11           B) 10

C) 9             D) 8

正确答案是: C

80、下面程序的输出是________。

#include

void main( )

{ char s[ ]="12134211";

int v1=0,v2=0,v3=0,v4=0,k;

for(k=0;s[k];k++)

switch(s[k])

{ case '1':v1++;

case '2':v2++;

case '3':v3++;

default:v4++;

}

printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4);

}

A) v1=4,v2=2,v3=1,v4=1    B) v1=4,v2=6,v3=7,v4=8

C) v1=5,v2=8,v3=6,v4=1    D) v1=8,v2=8,v3=8,v4=8

正确答案是: B

1、以下程序中,主函数调用了LineMax函数,实现在N行M列的二维数组中,

找出每一行上的最大值,划线处应填______。

#include 

#define M  4

#define N  3

void LineMax(int x[N][M])

{ int i,j,p;

for(i=0;i

{p=0;

for(j=0;j

if(x[i][p]

printf("The max value in line %d is %d\n",i,x[i][p]);  }

}

void main()

{ int x[N][M]={1,5,7,4,2,6,4,3,8,2,3,1};

LineMax(x);  }

A) p=i         B) p=j

C) p=x[i][p]   D) p=x[i][0] 

正确答案是: B

2、有如下程序

#include 

int fib(int n)

{ if(n>2) return(fib(n-1)+fib(n-2));

else return (2);  }

void main()

{  printf("%d\n",fib(4));  }

该程序的输出结果是________。

A) 2             B) 4

C) 6             D) 8

正确答案是: C

3、函数fun的功能是:根据以下公式计算S,n通过形参传入,n的值大于等于0。划线处应填________。

1     1    1         1

S=1 - ─ + ─ - ─ + … ───

3     5    7       2n-1

float fun(int n)

{ float s=0.0,w,f=-1.0;

int i=0;

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

{________;

w=f/(2*i+1);

s+=w;  }

return  s; }

A) f=1          B) f=-1

C) f=-1*f       D) f=0 

正确答案是: C

4、设在主函数中有以下定义和函数调用语句,且fun函数为void类型;正确的fun函数的首部应为________(要求形参名为b)。

void main()

{ double s[10][22];

int n;

fun(s);

}

A) void fun(double b[22])

B) void fun(double b[][22])

C) void fun(double b[][])

D) void fun(double b[22][]) 

正确答案是: B

5、以下函数把b字符串连接到a字符串后面,并返回a中新字符串的长度。下面的两划线处应分别填入________。

int  strcen(char a[],char b[])

{ int num=0,n=0;

while( a[num]!=______) num++;

while(b[n]) { a[num]=b[n];num++;________;}

return (num);  }

A) '\n'

和n++      B) '\n'和num++

C) '\0'

和n++      D) '\0'和num++ 

正确答案是: C

6、以下程序的输出结果是

#include 

void  fun( char s[])

{ int x,y;  char c;

for(x=0,y=strlen(s)-1; x

{c=s[y];s[y]=s[x];s[x]=c; }  }

void main()

{ char a[]="123456789"; int k;

fun(a);   puts(a);  }

A) 987654321       B) 123456789

C) 123454321       D) 987656789 

正确答案是: A

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

#include 

void fun( char s[])

{ int x,y;  char c;

for(x=0,y=(strlen(s)-1)/2; x

{c=s[y];s[y]=s[x];s[x]=c; }  }

void main()

{ char a[]="abcdefghi"; int k;

fun(a);   puts(a);  }

A) ihgfedcba       B) abcdefghi

C) edcbafghi       D) ihgfefghi 

正确答案是: C

8、以下程序的输出结果是

#include 

void fun( char s[])

{ int x,y;  char c;

for(x=0,y=3; x

{c=s[y];s[y]=s[x];s[x]=c; }  }

void main()

{ char a[]="abcdefghi"; int k;

fun(a);   puts(a);  }

A) ihgfedcba       B) abcdefghi

C) dcbaefghi       D) ihgfefghi 

正确答案是: C

9、以下程序的输出结果是________。

#include 

int d=1;

int fun( int p)

{ int d=5;

d+=p;

printf("%d ",d);

return (d);  }

void main()

{ int a=3; printf("%d \n",fun(fun(d))); }

A) 6 11 11         B) 6 6 9

C) 6 12 12         D) 6 6 15

正确答案是: A

10、以下程序的输出结果是

#include 

fun(int x,int y,int z)

{ z=x*x+y*y;}

void main()

{ int a=31;

fun(5,2,a);

printf("%d",a);  }

A) 0           B) 29

C) 31          D)

无定值

正确答案是: C

11、以下程序运行的结果是________。

#include 

int fun(int n)

{ int s;

if(n==0||n==1) s=1;

else s=n*fun(n-1);

return s;   }

void main()

{ printf("%d\n",fun(3));}

A) 1           B) 2

C) 3           D) 6

正确答案是: D

12、若形参n的值为24,则调用prnt函数后,最后一行输出______个数。

void prnt(int n,int arr[])

{ int i;

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

{printf("%6d",arr[i]);

if( !(i%5) ) printf("\n");  }

printf("\n");  }

A) 2        B) 3

C) 4        D) 5 

正确答案是: C

13、请读以下程序:

#include 

findmax(s,t)

int s[10],t;

{ int j,p=0;

for (j=1;j

if (s[j]>s[p]) p=j;

return p;  }

void main( )

{int a[10],i,k;

for (i=0;i<10;i++) scanf("%d",&a[i]);

k=findmax(a,10);

printf("%d,%d\n",a[k],k);  }

则下面的说法中,不正确的是________。

A)

程序输出的结果是数组a中最大元素的值和最大元素的下标

B)

程序输出的结果是数组a中最大元素的下标和最大元素的值

C)

函数findmax中处理的数据的个数由形参t决定

D)

函数findmax返回的函数值是数组中最大元素的下标 

正确答案是: A

14、请读以下程序:

#include 

findmax(s,t)

int s[10],t;

{ int j,p=0;

for (j=1;j

if (s[j]>s[p]) p=j;

return p;  }

void main( )

{int a[10],i,k;

for (i=0;i<10;i++) scanf("%d",&a[i]);

k=findmax(a,10);

printf("%d,%d\n",k,a[k]);  }

则下面的说法中,正确的是________。

A)

程序输出的结果是数组a中最大元素的值和最大元素的下标

B)

程序输出的结果是数组a中最大元素的下标和最大元素的值

C)

函数findmax中可以对10个数据进行判断

D)

函数findmax返回的函数值是数组中最大元素的值 

正确答案是: B

15、请读程序:

#include 

void fun(int s[ ])

{ int j=0;

do

s[j]+=s[j+1];

while (++j<2);  }

void main()

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

for(k=1;k<3;k++) fun(a);

for(k=0;k<5;k++) printf("%d",a[k]);  }

上面程序的输出结果是_________。

A) 56956        B) 34556

C) 57956        D) 1211456 

正确答案是: D

16、请读程序:

#include 

int f(int b[ ],int n)

{ int i,r;

r=1;

for (i=0;i<=n;i++)  r=r*b[i];

return r;  }

void main()

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

x=f(a,4);

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

上面程序的输出结果是________。

A) 720           B) 120

C) 24             D) 6

正确答案是: A

17、下面程序的输出是_________。

int m=13;

int fun(int x,int y)

{ int m=3;

return(x*y-m);  }

void main()

{int a=7,b=5;

printf("%d\n",fun(a,b)/m);  }

A) 1         B) 2

C) 7         D) 10 

正确答案是: B

18、C语言规定,程序中各函数之间________。

A)

既允许直接递归调用也允许间接递归调用

B)

不允许直接递归调用也不允许间接递归调用

C)

允许直接递归调用不允许间接递归调用

D)

不允许直接递归调用允许间接递归调用 

正确答案是: A

19、下面程序的功能是,将字符数组a中的字符逆序存放,划线处应填入________。

#include

void main()

{ char a[80]= "abcdefgh";

fun(a); puts(a);  }

fun(char s[10])

{ int x=0,y; char c;

for(________;x

{c=s[x];s[x]=s[y];s[y]=c; } }

A) y=0              B) y=strlen(s)

C) y=strlen(s)-1    D) y=x 

正确答案是: C

20、下面程序的输出是________。

#include 

int w=1;

void main()

{ int w=10;

printf("%d\n",fun(5)*w);  }

int fun(int k)

{ if(k==0) return w;

return(fun(k-1)*k);  }

A) 360          B) 3600

C) 2400         D) 1200

正确答案是: D

21、下面函数的功能是________。

void sss(s,t)

char s[ ],t[ ];

{ int i=0;

while( t[i])  { s[i]=t[i];  i++ ;  }

s[i]= '\0';  }

A)

求字符串的长度

B)

比较两个字符串的大小

C)

将字符串s复制到字符串t中

D)

将字符串t复制到字符串s中 

正确答案是: D

22、下面函数的功能是________。

void sss(s)

char s[ ];

{ int i=0;

while( s[i])  i++ ;

return  i;  }

A)

求字符串的长度

B)

比较两个字符串的大小

C)

将字符串s逆序存放

D)

功能无法确定 

正确答案是: A

23、设有如下的函数

void ggg(x)

{float x;

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

则函数的类型________。

A)

与参数x的类型相同         B) 是void

C)

是int                    D) 无法确定

正确答案是: C

24、设有如下程序

#include 

float  ggg(x)

{float x;

return  (x*x);}

void main()

{ printf("________\n",ggg(1.2));  }

则划线处应填________。

A) %f             B) %ld

C) %d             D)

无法确定

正确答案是: A

25、在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是________。

A)

地址传递

B)

单向值传递

C)

由实参传给形参,再由形参传回实参

D)

传递方式由用户指定 

正确答案是: B

26、以下函数fun形参的类型是________。

fun( float  x)

{ float  y;

y=3*x-4;

return  y;  }

A) int         B)

不确定

C) void        D) float

正确答案是: D

27、以下程序的输出结果是________。

#include 

int a,b;

void fun()

{ a=100;  b=200; }

void main()

{ int a=5,b=7;

fun();

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

A) 100200         B) 57

C) 200100         D) 75

正确答案是: B

28、读以下程序,下面的说法中错误的是________。

#include 

pt( char string[ ])

{ char  str[10]; int i=0;

strcpy(str,string);

if(str[i]== '\0')  return;

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

i--;

printf("%c",str[i]);

str[i]='\0';

pt(str);  }

void main( )

{

char  s[ ]={ "Hello"};

pt(s);  }

A)

在函数pt( )中使用了递归调用

B)

在函数pt( )中使用了嵌套调用

C)

程序的功能是使字符串s按反序存放

D)

程序的功能是将字符串"Hello"按反序输出 

正确答案是: B

29、以下程序的输出结果是________。

#include 

void main( )

{ int a=3,b=2,c=1;

c-=++b;

b*=a+c;

{ int b=5,c=12;

c/=b*2;  a-=c;

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

a+=--c; }

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

A) 3,2,1,2,3,-2        B) 2,5,1,3,5,12

C) 2,5,1,2,3,-2        D) 3,2,1,3,5,12

正确答案是: C

30、以下程序的输出结果是________。

#include 

int func1( int a,int b)

{ int c;

a+=a;  b+=b;

c=func2(a,b);

return  (c*c);  }

int func2(int a,int b)

{ int c;

c=a*b%3;  return  (c);  }

void main ( )

{ int x=7,y=17;

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

A) 7            B) 17

C) 4            D) 0

正确答案是: C

31、以下程序的功能是,将一个十进制数字的字符串转换成与它等价的有符号十进制整数值,下面的说法中不正确的是________。

#include 

int strtod( char s[ ])

{ int i=0,f=0; int n;

n=0; if(s[0]== '-')  {f=1;i=1; }

for(;s[i]!= '\0';i++) n= n*10+s[i]-'0';

if(f==1)  return (-n);

else  return (n);  }

void main()

{ char  s[10];

scanf("%s",s);

printf("%d\n",strtod(s));  }

A)

在main()函数的输入语句中使用scanf()函数比使用gets()函数要好

B)

程序第4行中的语句i=1;可以省略

C)

在strtod( )函数中,变量f的值决定了转换结果的正负号

D)

每调用一次strtod()函数,只能返回一个函数值 

正确答案是: B

32、阅读下面的程序:

#include 

void main()

{ void swap();

int a,b;

a=3;b=10; swap(a,b);

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

void swap(int a,int b)

{ int temp;

temp=a; a=b; b=temp;  }

下面的说法中,正确的是________。

A)

在main()函数中调用swap()后,能使变量a和b的值交换

B)

在main()函数中输出的结果是:a=3,b=10

C)

程序第2行的语句int  swap();是对swap()函数进行调用

D) swap()

函数的类型是void 

正确答案是: B

33、下面程序运行后,输出结果是________。

#include

void main( )

{ int k,i,j,x=0;

static int a[8][8];

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

for(j=0;j<3;j++)  a[i][j]=2*i+j;

for(i=0;i<8;i++)  x+=a[i][i];

printf("%d",x);  }

A) 9              B) 27

C) 0              D) 18

正确答案是: A

34、设有如下函数定义:

int f(char s[ ])

{ int i=0;

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

return (i-1);  }

如果在主程序中用下面的语句调用上述函数,则输出结果为________。

printf("%d\n",f("goodbey!"));

A) 3         B) 6

C) 8         D) 9

正确答案是: C

35、下面函数的功能是________。

sss(s, t)

char s[ ], t[ ];

{ int i=0;

while((s[i])&&(t[i])&&(t[i]== s[i]))  i++;

return  (s[i]-t[i]);}

A)

求字符串的长度

B)

比较两个字符串的大小

C)

将字符串s复制到字符串t中

D)

将字符串s接续到字符串t中 

正确答案是: B

36、C语言中,若未说明函数的类型,则系统默认该函数的类型是________。

A) float

型      B) long型

C) int

型        D) double型 

正确答案是: C

37、若函数调用时参数为基本数据类型的变量,以下叙述正确的是________。

A)

实参与其对应的形参共占存储单元

B)

只有当实参与对应的形参同名时才共占存储单元

C)

实参与其对应的形参分别占用不同的存储单元

D)

实参将数据传递给形参后,立即释放原先占用的存储单元 

正确答案是: C

38、以下叙述中,错误的是________。

A)

函数未被调用时,系统将不为形参分配内存单元

B)

实参与形参的个数应相等,且类型相同或赋值兼容

C)

实参可以是常量、变量或表达式

D)

形参可以是常量、变量或表达式 

正确答案是: D

39、以下程序的功能是根据输入的字母,在屏幕上显示出字符数组中首字符与其相同的字符串,若不存在,则显示“No find,goodbye!”。程序中两处划线位置应填入________。

#include 

char  PriStr(char ch1)

{ int i=0,j=0;

static char ch2[ ][20]={"How are you","Glad to meet you",

"Anything new","Every thing is fine","Very well,thank you",

"See you tomorrow"};

while(i++<6)

if(ch1== ch2[i-1][0])  {puts(________); j=1; }

return  j;  }

void main( )

{ char ch3;

printf("\nEnter a char:  ");

ch3=getchar( );

ch3=PriStr(ch3);

if( ch3==________) puts("No find,goodbye!");  }

A) ch2[i-1]

和0        B) ch2[i]和0

C) ch2[i][0]

和0       D) ch2[i-1][0]和0 

正确答案是: A

40、以下程序的功能是计算函数F(x,y,z)=(x+z)/(y-z)+(y+2z)/(x-2z)的值,应在程序的两空缺处分别应填入________。

#include 

float f(float x,float y)

{ float value;

value=________;  return value;  }

void main( )

{ float x,y,z,sum;

scanf("%f%f%f",&x,&y,&z);

sum=f(x+z,y-z)+f(________);

printf("sum=%f\n",sum);  }

A) x/y

和x,y,z           B) x+y和y,x,2*z

C) x/y

和y+2*z,x-2*z     D) x+y和y+z,x-z 

正确答案是: C

41、以下程序是将输入的一个整数反序打印出来,例如,输入1234,则输出

4321

;输入-1234,则输出-4321,程序中划线处应分别填入________。

void printopp( int n)

{int i=0;

if(n==0)  return;

else

while(n)

{if(n>0||i==0) printf("%d",n%10);

else printf("%d",________);

i=1;

________;  }  }

void main( )

{  int n;  scanf("%d",&n);

printopp(n);

printf("\n");  }

A) n%10

和n=n/10      B) -n%10 和n=n/10

C) -n/10

和n=n%10     D) n%10 和n/=10 

正确答案是: B

42、以下程序运行后,输出的结果是________。

#include 

#include 

int func(long m)

{ int k=1;

do {k*=m%10;  m/=10;  }while(m!=0);

return  (k);  }

void main( )

{ int n;  scanf("%d",&n);

printf("%d\n",func(n));  }

A)

正整数m的各位之积

B)

正整数n的各位之积

C)

正整数n的m次幂

D)

正整数m的n次幂 

正确答案是: B

43、以下函数round()的功能是将实数real中的值四舍五入成整数。划线处应填入的正确选项是________。

#include 

void round(float real)

{ int val;

val=________;

printf("round(%f)=%d\n",real,val); }

void main( )

{ float  f ;  scanf("%f",&f);

round(f);  }

A) (float)(real)                  B) float(real)

C) ((int)(real)*10+5)/10     D) (int)(real+0.5)

正确答案是: D

44、以下程序的功能是求任意两个整数a和b的最大公约数,并予以显示,程序的两划线处应分别填入________。

#include 

#include 

int cod(long n1,long n2)

{ int t;

while(n2) {________; n1=n2;n2=t; }

return  ________;  }

void main( )

{ int a,b,x;

printf("Please input two numbers:");

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

x=cod(a,b);

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

A) t=n1

和n1          B) t=n2和n2

C) t=n1%n2

和n1       D) t=n1%n2和n2 

正确答案是: C

45、以下程序的功能是计算并显示一个指定行数的杨辉三角形(形式如下),应填入程序空缺处的正确选项是________。

#define  N  15

void yanghui(int b[ ][N],int n)

{ int i,j;

for(i=0;________;i++) {b[i][0]=1;b[i][i]=1; }

for(________;++i<=n; )

for(j=1;j

for(i=0;i

{for(j=0;j<=i;j++)

printf("%4d",b[i][j]);

printf("\n"); }  }

void main( )

{ int a[N][N]={0},n;

printf("Please input size of yanghui triangle(<=15):");

scanf("%d",&n);

printf("\n");

yanghui(a,n);  }

A) i

和i=1            B) i

C) i

和i=2            D) i

正确答案是: B

46、请读程序:

#include 

f(int b[ ], int n)

{ int i, r=1;

for(i=0; i<=n; i++) r=r*b[i];

return r;  }

void main()

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

x=f(a, 3);

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

上面程序的输出结果是________。

A) 720         B) 120

C) 24          D) 6

正确答案是: B

47、分析以下程序,程序的功能是________。

#include 

f(int b[ ], int n)

{ int i, r=1;

for(i=0; i<=n; i++) r=r*b[i];

return r;  }

void main()

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

x=f(a, 3);

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

A)

求数组a中的所有元素之和

B)

求数组a中的所有元素之积

C)

求数组a中部分元素之和

D)

求数组a中部分元素之积 

正确答案是: D

48、请读以下程序,程序的功能是________。

#include

#include

void fun( char w[ ], int m)

{ int i=0,j=strlen(w)-1;

char s;

while (i

void main( )

{ char a[]="ABCDEFG";

fun( a, strlen(a)); puts(a);  }

A)

使字符数组a中的字符逆序存放

B)

使字符数组a中除首尾字符外其它字符逆序存放

C)

统计字符数组a中字符的个数

D)

以上说法都不对 

正确答案是: D

49、设有如下定义:

char aa[2][20]={ "abcd", "ABCD"};

则以下说法中错误的是________。

A) aa

是个二维数组,可以存放2个19个字符以下的字符串

B) aa

是个二维数组,每行中分别存放了字符串"abcd"和"ABCD"

C) aa[0]

可以看作是一维数组名

D) aa[0][0]

可以看作是一维数组名 

正确答案是: D

50、以下对C语言函数的有关描述中,正确的是________。

A)

在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参

B) C

函数既可以嵌套定义又可以递归调用

C)

函数必须有返回值,否则不能使用函数

D) C

程序中有调用关系的所有函数必须放在同一个源程序文件中 

正确答案是: A

1.在考生文件夹下,要求程序PROG.C的功能是:

将字符串中所有的大写字母转换为小写,其它字符不变(不使用转换函数)。

例如,当字符串为"ThisIs a c Program"

输出:"this is a c program"


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

#include

void fun(char str1[])

 {

 /***********begin***********/

int i

for(i=0;str1[i]!=’\0’;i++)

if(str1[i]>=’A’&& str1[i]<=’Z’)

str1[i]=str1[i]+32;

 /************end************/

 }

int main()

 {

char str1[80];

printf("Please input a string:\n");

gets(str1);

fun(str1);

printf("Result is: %s\n",str1);

return 0;

 }


2.在考生文件夹下,要求程序PROG.C的功能是:

求[1,1000]之间既不能被7整除也不能被5整除的整数之和,将结果存入变量s中。


部分源程序存在文件PROG.C中。

请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将计算结果存入变量s中。TheResultis:343139

#include "stdio.h"

 #include "math.h"

 #include "stdlib.h"

int main()

 { 

int s;

int i;

 /***********begin***********/

S=0;

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

if(i%5!=0&& i%7!=0)

 s+=i;


 /************end************/

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

return 0;

 }


3.在考生文件夹下,要求程序PROG.C的功能是:


求[1,n]之间所有不能被3整除的整数之和,n的值由键盘输入。

例如,如果输入12,则输出结果为:48


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

#include "stdio.h"

 #include "stdlib.h"

int fun(int n)

 {

 /***********begin***********/

inti,s=0

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

{

if(i%3!=0)

s+=i;

}

return s;

 /***********end***********/

 }

int main( )

 {

int n;

printf("Enter n: \n");

scanf("%d",&n);

printf("s=%d\n",fun(n));

return 0;

 }


4.在考生文件夹下,要求程序PROG.C的功能是:


求[1,1000]之间所有不能被3整除的整数之和。请将计算结果保存到变量s中。

部分源程序存在文件PROG.C中。

请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将计算结果存入变量s中。结果: TheResultis:333667

#include "stdio.h"

 #include "math.h"

 #include "stdlib.h"

int main( )

 { 

int i;

int s;

 /***********begin***********/

S=0;

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

{

if(i%3!=0)

s+=i

}


 /************end************/

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

return 0;

 }

5.在考生文件夹下,要求程序PROG.C的功能是:

按下面的公式求s的近似值,直到最后一项的项值绝对值小于0.00001,结果保留4位小数。


 1 1   1 1 

 sum = 1 - —— + —— - —— + ……+(-1)^(n-1) ————

 3 5   7 2n-1

请将计算结果保存到变量sum中。

部分源程序存在文件PROG.C中。

请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将计算结果保存到变量sum中。s=0.7854

#include "stdio.h"

 #include "math.h"

 #include "stdlib.h"

int main( )

 { 

double sum;

 /***********begin***********/ 

int n=1,f=1; //f是用来控制项的正负号

double item=1; 

sum=0; 

while (item>=0.00001) //求绝对值函数fabs(x),求出x的绝对值

{

sum=sum+f* item; 

f=-f; 

n=n+1;

item=(1.0/(2*n-1)); 

}


 /***********end***********/ 

printf("sum=%.4f\n",sum);

return 0;

 }



6.在考生文件夹下,给定程序PROG.C的功能是:

求N*N矩阵的主对角线(左上-右下)元素的和并输出。

例如,当矩阵为:

1   6  2 2

 3 5 4 5

 8 4 5 6

 4 5  6 7

则主对角线上的元素之和为:18

部分源程序存在文件PROG.C中。请打开该程序文件,

在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句。

保存、运行并调试程序,最后将源程序文件PROG.C提交。








#include

 #define N 4

int fun(int arr[N][N])

 {

 /***********begin***********/

 

inti,j,sum=0;

for(i=0;i

{

for(j=0;j

{

if(i==j)

sum=sum+arr[i][j];

}

}

return sum;


 /************end************/

 }

int main()

 { 

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

int i,j,sum;

printf("array is:\n");//提示

for(i=0;i

 {

for(j=0;j

printf("%5d",a[i][j]);

printf("\n");

 }

sum=fun(a);

 printf("Result is:%d\n",sum);

return 0;

 }


7.在考生文件夹下,要求程序PROG.C的功能是:

统计字符串中元音字母’a’、’e’、’i’、’o’、’u’的个数并输出。

例如,当字符串为"This Is ac Program"

输出:Result is: 4


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

#include

 #include

int fun(char str[])

 {

 /***********begin***********/

int i,sum=0; 

for (i=0;str[i]!=’\0’;i++)

if(str[i]==’a’|| str[i]==’e’ || str[i]==’i’ || str[i]==’o’ || str[i]==’u’)

sum+=1

return sum;

 /************end************/

 }

int main()

 { 


char str1[80];

int n;

printf("Enter str1 :\n");

gets(str1);//字符串输入函数

 n=fun(str1);//4

printf("Result is: %d\n",n);

return 0;

 }


8.在考生文件夹下,要求程序PROG.C的功能是:

统计字符串中英文字母的个数并输出。

例如,当字符串为"This Is a c Program"

输出:Result is:15


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

#include

 #include

fun(char str1[])

 {

 /***********begin***********/

int i,m=0;

for(i=0;str1[i]!=’\0’;i++)

if(str1[i]>=’A’&&str1[i]<=’Z’ || str1[i]>=’a’&&str1[i]<=’z’)

 m=m+1;

return m;

 /************end************/

 }

int main()

 { 

char str1[80];

int n;//字母的个数

printf("Enter str1:\n");

gets(str1);

 n=fun(str1);//fun的功能是求字符数组str1当中的英文字符个数,15

printf("Result is: %d\n",n);

return 0;

 }



9.在考生文件夹下,给定程序PROG.C的功能是:

将4*4矩阵的主对角线(左上-右下)及其以下的元素乘以m,输出计算以后的矩阵。

例如,如果m=2,当矩阵为:

1 2  3 4

5 6 7 8

9 10 11 12

13 14 15 16

输出的矩阵应为:

2 2 3 4

10 12 7 8

18 20 22 12

26 28 30 32

部分源程序存在文件PROG.C中。请打开该程序文件,

在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句。

保存、运行并调试程序,最后将源程序文件PROG.C提交。

#include

 #define N 4

void fun(int a[N][N],int m)

 {

 /***********begin***********/

int i,j;

for(i=0;i

for(j=0;j

 { 

if(i>=j)

a[i][j]=a[i][j]*m;

}

}

 /************end************/

 }

int main()

 { 

 int a[N][N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};

int i,j,sum;

printf("Original array is:\n");

for(i=0;i

 {

for(j=0;j

printf("%5d",a[i][j]);

printf("\n");

 }

fun(a,2); 

printf("Result array is:\n");

for(i=0;i

 {

for(j=0;j

printf("%5d",a[i][j]);

printf("\n");

 }

return 0;

 }



10.在考生文件夹下,给定程序PROG.C的功能是:

求N*N矩阵的第2行(以下标为行数)元素的和并输出。

例如,当矩阵为:

 1 2  3 4

 5 6  7 8

9 10 11 12

13 14 15 16

则第2行元素是:9,10,11,12。第2行元素之和为:42

部分源程序存在文件PROG.C中。请在VC环境中打开该程序文件,

在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句。


保存、运行并调试程序,最后将源程序文件PROG.C提交。

 #include

 #define N 4




int fun(int a[N][N])

 {

 /***********begin***********/

int sum=0 ,j;

for(j=0;j

sum=sum+a[2][j];

return sum;

 /************end************/

 }

int main()

 { 

 int a[N][N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};

int i,j,sum;

printf("array is:\n");

for(i=0;i

 {

for(j=0;j

printf("%5d",a[i][j]);

printf("\n");

 }

sum=fun(a);

 printf("Result is:%d\n",sum);

return 0;

 }



11.在考生文件夹下,要求程序PROG.C的功能是:

求字符串的长度并输出。

例如,当字符串1为"This Is a c Program"

则应输出:Result is: 19



部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。










运行并调试程序,然后将源程序文件PROG.C提交。

#include

int fun(char str[])

 {

 /***********begin***********/

 int i,sum=0;

for(i=0;str[i]!=’\0’;i++)

 sum=sum+1;

return sum;

 /************end************/

 }

int main()

 { 

char str1[80]="This Is a c Program";

int count;

printf("String is: %s\n",str1);

count=fun(str1);

printf("Result is: %d\n",count);

return 0;

 }




12.在考生文件夹下,给定程序PROG.C的功能是:

按下面的公式求sum的近似值,直到最后一项的项值小于1e-6为止。

 1   1 1 1 

 sum = 1 - —— + —— - —— + ……+(-1)^(n-1) ——

 2    3 4 n

部分源程序存在文件PROG.C中。请在VC环境中打开该程序文件,

在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句。


保存、运行并调试程序,最后将源程序文件PROG.C提交。sum=0.693####

#include "stdio.h"

 #include "math.h"

 #include "stdlib.h"








int main()

 { 

double sum;

 /***********begin***********/

int n=1,f=1; 

double item=1; 

sum=0; 

while (item>1e-6) 

sum=sum+f*item; 

f=-f; 

n++; 

item=1.0/n; 

}

 /************end************/

printf("sum=%.3f\n",sum);

return 0;

 }


13在考生文件夹下,要求程序PROG.C的功能是:

统计字符串中的所有大写字母的个数并输出。

例如,当字符串为"This Is a c Program"

输出:Result is:3


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include

 #include


fun(char str1[])

 {

 /***********begin***********/

inti,sum=0;

for(i=0;str1[i]!=’\0’;i++)

if(str1[i]>=’A’&&str1[i]<=’Z’)

sum=sum+1; 

return sum;


 /************end************/

 }

int main()

 { 

char str1[80];

int n;

printf("Enter str1:\n");

gets(str1);

 n=fun(str1);

printf("Result is: %d\n",n);

return 0;

 }




14在考生文件夹下,要求程序PROG.C的功能是:


求[m,n]之间所有不能被3整除的整数之和,m,n的值由键盘输入。

例如,如果输入3和12,则输出结果为:45


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。


#include "stdio.h"

int fun(int m,int n)

 {


 /***********begin***********/

inti,temp,sum=0; 

if(m>n)

{

temp=m;

m=n;

n=temp;

}

for(i=m;i<=n;i++)

if(i%3!=0)

sum=sum+i;

return sum;

 /***********end***********/


 }

int main( )

 { 

int m,n;

printf("Enter m, n: \n");

scanf("%d,%d",&m,&n);

printf("s=%d\n",fun(m,n));

return 0;

 }




15在考生文件夹下,给定程序PROG.C的功能是:

将N*N矩阵的第1列(以下标为列数)乘以n,然后求该列元素的和。

例如,如果n=2,当矩阵为:

 1 243 4

 5 612 7 8

9 102011 12

13 142815 16

则第1列元素是:2,6,10,14。乘以n后为:4,12,20,28,和为:64

部分源程序存在文件PROG.C中。请在VC环境中打开该程序文件,

在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句。


保存、运行并调试程序,最后将源程序文件PROG.C提交。

#include

 #define N 4

int fun(int a[N][N],int n)

 {


 /***********begin***********/

int i,sum=0;

for(i=0;i

{

a[i][1]=a[i][1]*n;

sum=sum+a[i][1];

}

return sum;

 /************end************/


 }

int main()

 { 

 int a[N][N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};

int i,j,sum;

printf("Original array is:\n");

for(i=0;i

 {

for(j=0;j

printf("%5d",a[i][j]);

printf("\n");

 }

sum=fun(a,2); 

printf("Result array is:\n");

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

 {

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

printf("%5d",a[i][j]);

printf("\n");

 }

 printf("Result is:%d\n",sum);

return 0;

 }




16.在考生文件夹下,要求程序PROG.C的功能是:

统计字符串中的所有小写字母的个数并输出。

例如,当字符串为"This Is a c Program"

输出:Result is:12


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include

 #include

int fun(char str1[])

 {

 /***********begin***********/

int i,sum=0;

for(i=0;str1[i]!=’\0’;i++)

if(str1[i]>=’a’&&str1[i]<=’z’)

sum=sum+1;

return sum;

 /************end************/

 }


int main()

 { 

char str1[80];

int n;

printf("Enter str1:\n");

gets(str1);

 n=fun(str1);

printf("Result is: %d\n",n);

return 0;

 }


17.在考生文件夹下,要求程序PROG.C的功能是:

将字符串中所有的小写字母转换为大写,其它字符不变(不使用转换函数)。

例如,当字符串为"This Is a c Program"

输出:"THIS IS A C PROGRAM"


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include

 #include

void fun(char str1[])

 {

 /***********begin***********/

int i;

for(i=0;str1[i]!=’\0’;i++)

if(str1[i]>=’a’&&str1[i]<=’z’)

str1[i]=str1[i]-32;


 /************end************/

 }

int main()

 { 

char str1[80];

printf("Enter str1:\n");

gets(str1);

fun(str1);

printf("Result is: %s\n",str1);

return 0;

 }




18.在考生文件夹下,给定程序PROG.C的功能是:

求N*N矩阵的副对角线(右上-左下)元素的和并输出。

例如,当矩阵为:

 1 2  3 4

 2 4 6 8

 3 6 9  12

4 8  12  16

则副对角线上的元素之和为:20

部分源程序存在文件PROG.C中。请在VC环境中打开该程序文件,

在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句。


保存、运行并调试程序,最后将源程序文件PROG.C提交。

#include

 #define N 4

int fun(int a[N][N])

 {


 /***********begin***********/

inti,j,sum=0;

for(i=0;i

for(j=0;j

if(i+j==N-1)

sum=sum+a[i][j];

return sum; 

 /************end************/


 }

int main()

 { 

 int a[N][N]={1,2,3,4,2,4,6,8,3,6,9,12,4,8,12,16};

int i,j,sum;

printf("array is:\n");

for(i=0;i

 {

for(j=0;j

printf("%5d",a[i][j]);

printf("\n");

 }

sum=fun(a);

 printf("Result is:%d\n",sum);

return 0;

 }



19在考生文件夹下,给定程序PROG.C的功能是:

按下面的公式求sum的值。

sum = m + (m+1) + (m+2) + (m+3) + …… + (n-1) + n

例如,如果m和n的值分别为1和100,则计算结果为5050。

部分源程序存在文件PROG.C中。请打开该程序文件,

在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句。


保存、运行并调试程序,最后将源程序文件PROG.C提交。

#include "stdio.h"

int fun( int m, int n)

 { 

 /***********begin***********/

int i,sum=0;

for(i=m;i<=n;i++)

sum=sum+i;

return sum;

 /************end************/

 }

int main()

 {

int m, n, t;

 printf("请输入m,n:\n");

scanf("%d,%d",&m,&n);

if(m>n)

{ t=m; m=n; n=t; }

printf("sum=%d\n",fun(m,n));

return 0;

 }


20.在考生文件夹下,`

1 2 3 a[0][0] a[0][1] a[0][2]

4 5 6

7 8 9

则第0行元素是:1,2,3,第0行的元素之和为:6


部分源程序存在文件PROG.C中。请在VC环境中打开该程序文件,

在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句。


保存、运行并调试程序,最后将源程序文件PROG.C提交。

#include

int fun(int a[3][3])

 {


 /***********begin***********/

int i,sum=0;

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

sum=sum+a[0][i];

return sum;


 /************end************/


 }


int main()

 {

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

int i,j,sum;

printf("array is:\n");

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

 {

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

printf("%5d",a[i][j]);

printf("\n");

 }

sum=fun(a);

 printf("Result is:%d\n",sum);

return 0;

 }



21.在考生文件夹下,要求程序PROG.C的功能是:

将字符串逆序存放并输出。

例如,当字符串为"This Is a c Program"

输出:"margorP c a sI sihT"


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include

 #include

void fun(char str1[])

 {

 /***********begin***********/

int i,len=strlen(str1); 

char temp; 

for (i=0;i

{

temp=str1[i]; 

str1[i]=str1[len-1-i]; 

str1[len-1-i]=temp; 

}

 /************end************/

 }

int main()

 { 

char str1[80];

printf("Enter Str1: \n");

gets(str1);

fun(str1);

printf("Result is: %s\n",str1);

return 0;

 }



22.在考生文件夹下,要求程序PROG.C的功能是:

求[m,n]之间既不能被7整除也不能被5整除的整数之和,m和n的值由键盘输入。

例如,如果m和n的值分别为10和20,则计算结果为:106。


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include "stdio.h"

int fun(int m,int n)

 {


 /***********begin***********/

inti,sum=0;

for(i=m;i<=n;i++)

if(i%5!=0&&i%7!=0)

sum=sum+i;

return sum;




 /************end************/


 }


int main()

 { 

int s;

int m,n;

printf("Enter m n:\n");

scanf("%d %d",&m,&n);

 s=fun(m,n);

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

return 0;

 }



23.在考生文件夹下,给定程序PROG.C的功能是:


按下面的公式求sum的值。

sum = 1 - 2 + 3 - 4 + 5 - 6 + …… + 99 - 100


部分源程序存在文件PROG.C中。请在VC环境中打开该程序文件,

在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句。


保存、运行并调试程序,最后将源程序文件PROG.C提交。sum=-50

#include "stdio.h"

 #include "stdlib.h"


int main()

 { 

int sum;

 /***********begin***********/

inti,f=1;

sum=0;

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

{

sum=sum+i*f;

f=-f;

}

 /************end************/

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

return 0;

 }



24.在考生文件夹下,要求程序PROG.C的功能是:

求[m,n]之间既能被3整除又能被5整除的整数之和,m和n的值由键盘输入。


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

#include "stdio.h"

 #include "stdlib.h"

int fun(int m,int n)

 {


 /***********begin***********/

inti,sum=0;

for(i=m;i<=n;i++)

if(i%3==0&&i%5==0)

sum=sum+i;

return sum;


 /************end************/


 }


int main()

 {

int s;

int m,n;

printf("Enter m,n:\n");

scanf("%d %d",&m,&n);

 s=fun(m,n);

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

return 0;

 }





25.在考生文件夹下,要求程序PROG.C的功能是:(截止16/12/27)

按下面的公式求sum的近似值,n的值由键盘输入,输出保留4位小数。


 1 1    1 1 

 sum = 1 - —— + —— - —— + ……+(-1)^(n-1) ———

 3 5    7 2n-1

例如:当n=3时,结果为0.8667;当n=10时,结果为:0.7605

部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include "stdio.h"

double fun( int n )

 {

double c;

 /***********begin***********/

inti,f=1;

double item=1;

for(i=1,c=0;i<=n;i++)

{

item=1.0/(2*i-1);

c=c+item*f;

 f=-f;

}

return c;


 /***********end***********/

 }


int main()

 { 

double sum;

int n;

printf("Enter n:\n");

scanf("%d",&n);

sum=fun(n);

printf("sum=%.4f\n",sum);

return 0;

 }




26.在考生文件夹下,给定程序PROG.C的功能是:


按下面的公式求sum的值。

 1    1 1 1 

sum = 1 + —— + —— + —— + …… + —— 

 2    3 4 100


请将运算结果存入变量sum中。结果保留3位小数。

部分源程序存在文件PROG.C中。请在VC环境中打开该程序文件,

在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句。


保存、运行并调试程序,最后将源程序文件PROG.C提交。

特别提示:一定要将计算结果存入变量sum中。sum=5.187

#include "stdio.h"

 #include "stdlib.h"

int main()

 { 

double sum;

 /***********begin***********/


int i ,sum=0;

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

sum=sum+1.0/i;




 /************end************/

printf("sum=%.3f\n",sum);

return 0;

 }


27.在考生文件夹下,给定程序PROG.C的功能是:

按下面的公式求前n项的项值,n的值由键盘输入。结果保留3位小数。


 1    1 1 1 

 sum = 1 - —— + —— - —— + ……+(-1)^(n-1) ——

 2    3 4 n

例如:当n=100时,输出结果为0.688

部分源程序存在文件PROG.C中。请在VC环境中打开该程序文件,

在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句。


保存、运行并调试程序,最后将源程序文件PROG.C提交。

#include "stdio.h"

 #include "stdlib.h"

double fun(int n)

 { 

double c;

 /***********begin***********/

int i, f=1;

for(i=1,c=0;i<=n;i++)

{

c=c+f*(1.0/i);

 f=-f;

}



 /***********end***********/

return c;


 }


int main()

 { 

double sum;

int n;

printf("Enter n :\n");

scanf("%d",&n);

sum=fun(n);

printf("sum=%.3f\n",sum);

return 0;

 }




28.在考生文件夹下,给定程序PROG.C的功能是:


按下面的公式求sum的值。

sum = m - (m+1) + (m+2) - (m+3) + …… + (n-1) - n

例如,如果m和n的值分别为1和100,则计算结果为-50。


部分源程序存在文件PROG.C中。请在VC环境中打开该程序文件,

在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句。


保存、运行并调试程序,最后将源程序文件PROG.C提交。

#include "stdio.h"

 #include "stdlib.h"

fun( int m, int n)

 { 

 /***********begin***********/

inti,f=1,sum=0;

for(i=m;i<=n;i++)

 {

sum=sum+i*f;

 f=-f;

}

return sum;


 /************end************/

 }

int main()

{ int m, n, t;

printf("Enter m,n:\n");

scanf("%d,%d",&m,&n);

if(m>n)

{ t=m; m=n; n=t; }

printf("sum=%d\n",fun(m,n));

return 0;

 }




29.在考生文件夹下,给定程序PROG.C的功能是:


求指定字符在字符串中出现的次数并输出。

例如,当字符串为"This Is a c Program",指定字符为'a'时

则应输出:Result is: 2


部分源程序存在文件PROG.C中。请打开该程序文件,

在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句。


保存、运行并调试程序,最后将源程序文件PROG.C提交。








#include

 #include

int fun(char str1[],char ch)

 {

 /***********begin***********/

inti,s=0;

for(i=0;str1[i]!=’\0’;i++)

if(str1[i]==ch)

 s=s+1;

return s;

 /************end************/

 }



int main()

 { 

char str1[80],ch;

int count; 

printf("Enter str1:\n");

gets(str1);

printf("Enter ch:\n");

ch=getchar();

count=fun(str1,ch);

printf("Result is: %d\n",count);

return 0;

 }



30.在考生文件夹下,要求程序PROG.C的功能是:

求[1,1000]之间既能被3整除又能被5整除的整数之和,将结果存入变量s中。


部分源程序存在文件PROG.C中。

请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将计算结果存入变量s中。TheResultis:33165$$$$

 #include "stdio.h"

int main()

 { 

int i;

int s;

 /***********begin***********/

for(i=1,s=0;i<=1000;i++)

if(i%3==0&& i%5==0)

           s=s+i;

 /************end************/

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

return 0;

 }



.31.在考生文件夹下,要求程序PROG.C的功能是:求一个三位整数m的每位数之积。

例如,当m=256时,程序的输出结果应为:Result is: 60。截止/12/27(信计)


部分源程序存在文件PROG.C中,m的值由键盘输入。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

 #include

int fun(int m)

 {

int c;

 /***********begin***********/



c=1;

while(m!=0)

c=c*(m%10);

m=m/10;

}



 /************end************/

return c;

 }


int main()

{ int m,s;

printf("Enter m :\n");

scanf("%d",&m);

 s=fun(m);

printf("Result is: %d\n",s);

return 0;

 }



32.在考生文件夹下,要求程序PROG.C的功能是:求3*3矩阵的最小值并输出。

例如,当矩阵为:

 -1 2 3

4 9 5

7 8 6

则最小值为:-1



部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

 #include

 #define N 3

int fun(int a[N][N])

 {

int min;

 /***********begin***********/

inti,j;

min=a[0][0];

for(i=0;i

for(j=0;j

if(a[i][j]

min=a[i][j];

 /************end************/

return min;

 }


int main()

 { 

 int a[N][N]={-1,2,3,4,9,5,7,8,6};

int i,j,min; 

printf("array is:\n");

for(i=0;i

 {

for(j=0;j

printf("%5d",a[i][j]);

printf("\n");

 }

min=fun(a);

printf("Result is: %d\n",min);

return 0;

 }


33. 在考生文件夹下,要求程序PROG.C的功能是:求N*N矩阵的最小值并输出,请将求出的最小值存入变量min中。

例如,当n=3,矩阵为:

1 2 3

4 9 5

7 8 6

则最小值为:1



部分源程序存在文件PROG.C中。

请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将求出的最小值存入变量min中。

#include

 #include

int main()

 { 

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

int i,j,min;

printf("array is:\n");

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

 {

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

printf("%5d",a[i][j]);

printf("\n");

 }

 /***********begin***********/

min=a[0][0];

for(i=0;i

for(j=0;j

if(a[i][j]

min=a[i][j];


 /************end************/

printf("Min is: %d\n",min);

return 0;

 }



34.在考生目录下,要求程序PROG.C的功能是:

按下面的公式求s的近似值:


 1   1 1 1           1 

 s = 1 + —— + —— + —— + —— + …… + ———

 3*3  5*5 7*7 9*9     (2n-1)*(2n-1)


部分源程序存在文件PROG.C中,n的值由键盘输入。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include "stdio.h"

double fun(int n)

 {

 /***********begin***********/

int i; 

double sum=0; 

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

sum=sum+1.0/((2*i-1)*(2*i-1));

return sum;



 /************end************/

 }


int main()

 { 

double s;

int n;

printf("Enter n:\n");

scanf("%d",&n);

 s=fun(n);

printf("s= %.4f\n",s);

return 0;

 }




35.在考生文件夹下,要求程序PROG.C的功能是:求一维数组a中所有元素的平均值。


部分源程序存在文件PROG.C中,请将计算结果存入变量av中。


请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将计算结果存入变量av中。

#include "stdio.h"

 #define N 20

int main()

 { 

 int a[N]={1,20,8,14,7,12,2,19,19,15,13,14,20,10,16,20,7,6,12,12 };

double av; 

FILE *f;

 /***********begin***********/

int i; 

double sum=0; 

for (i=0;i

sum=sum+a[i];

av =sum/N;



 /************end************/

printf("Aver=%f\n",av);

f=fopen("PROGOUT.DAT","w");

fprintf(f,"Average = %.2f\n",av);

fclose(f);

return 0;

 }


36.在考生文件夹下,要求程序PROG.C的功能是:求一维数组rea中所有元素的整数部分和小数部分之和。


部分源程序存在文件PROG.C中,请将整数部分之和存入变量sum1中,将小数部分之和存入变量sum2中。

请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将整数部分之和和小数部分之和分别存放在变量sum1和sum2中。

#include "stdio.h"

int main()

 { 

 double rea[10]={ 8.95,68.81,43.21,13.55,69.38,56.46,15.52,76.06,82.33,83.17 };

int sum1;

double sum2;

 /***********begin***********/

inti,t;

sum1=0; sum2=0; 

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

t=(int)rea[i]; //通过强制转换为整数

sum1=sum1+t;

sum2=sum2+(rea[i]-t);

}

 /************end************/

printf("sum1=%d,sum2=%.2f\n",sum1,sum2);

return 0;

 }




37.在考生文件夹下,要求程序PROG.C的功能是:求两个整数m和n的最大公约数和最小公倍数。


部分源程序存在文件PROG.C中,请将最大公约数存放在变量s1中,将最小公倍数放在变量s2中。


请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将最大公约数和最小公倍数分别存放在全局变量s1和s2中。











#include "stdio.h"

int s1,s2;

void fun(int m,int n)

 {

 /***********begin***********/

int t; 

s2=m*n; //因为m和n后面发生了变化,先保留起来,同时又不使用更多的变量。

t=n%m;

while(t) { 

n=m; 

m=t; 

t=n%m; }

s1=m;

s2=s2/s1;//最小公倍数=m*n/最大公约数



 /************end************/


 }


int main()

 {

int m,n,t;

printf("Enter m,n: \n");

scanf("%d,%d",&m,&n);

if(m>n)//保证m存放较小数,n存放较大的数

 {


 t=m;

 m=n;

 n=t;

 }

fun(m,n);

printf("The Highest common divisor of %d and %d is %d\n",m,n,s1);

printf("The Lowest common multiple of %d and %d is %d\n",m,n,s2);

return 0;

 }



38.在考生文件夹下,要求程序PROG.C的功能是:

求两个整数m和n的最大公约数,m和n的值由键盘输入。


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include "stdio.h"

int fun(int m,int n)

 {

 /***********begin***********/

int t; 

t=n%m;

while(t)

{ n=m; m=t; t=n%m; } 

return m;


 /************end************/

 }


int main()

 {

int m,n,i,t;

printf("Enter m,n :\n");

scanf("%d,%d",&m,&n);

if(m>n) { t=m; m=n; n=t; }

printf("The Highest Common Divisor of %d and %d is %d\n",m,n,fun(m,n));

return 0;

 }


39.试题要求:2017/5/24截止



在考生目录下,要求程序PROG1.C的功能是:

判断m是否为素数。如果m为素数使变量f的值为1,否则使变量f值为0。m的值由键盘输入。


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include "stdio.h"

int fun(int m)

 { 

 /***********begin***********/

int i; 

for (i=2;i

if (m%i==0) break; 

if (i

else return 1; //素数

 /************end************/


 }


int main()

 { 

int m,f;

printf("Enter m:\n");

scanf("%d",&m);

 f=fun(m);

if(f) printf("%d is a prime\n",m);

else printf("%d is not a prime\n",m);


return 0;

 }


40.在考生目录下,要求程序PROG.C的功能是:将所有的水仙花数保存到一维数组a中。

(所谓水仙花数是指一个三位数,其各位数字立方和等于该数本身。

例如:153=1*1*1+5*5*5+3*3*3)

部分源程序存在文件PROG.C中。

请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

 #include

int main()

 { 

int a[10]={0},i;

 /***********begin***********/

int d1,d2,d3, n; 

i=0;

for ( n=100; n<1000; n++) 

d1 = n / 100; //百位

d2 = (n/10)%10; //十位

d3 = n % 10; //个位

if ( n == d1*d1*d1 + d2*d2*d2 + d3*d3*d3 ) 

a[i++]=n;

}

 /************end************/

 printf("水仙花数为:\n");

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

if(a[i]!=0) printf("%d\n",a[i]);

return 0;

 }



41在考生文件夹下,要求程序PROG.C的功能是:

求N*N矩阵的最大值并输出。

例如,当N为3,矩阵为:

1 2 3

4 9 5

7 8 6

则最大值为:9


部分源程序存在文件PROG.C中,请将求出的最大值存入变量max中。

请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将求出的最大值存入变量max中。

#include


int main()

 { 

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

int i,j,max;

printf("array is:\n");

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

 {

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

printf("%5d",a[i][j]);

printf("\n");

 }

 /***********begin***********/

max=a[0][0];

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

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

if(a[i][j]>max)

max=a[i][j];

 /************end************/

printf("Max is: %d\n",max);

return 0;

 }



42.在考生文件夹下,要求程序PROG.C的功能是:

求3*3矩阵的最大值并输出。

例如,当矩阵为:

1 2 3

4 9 5

7 8 6

则最大值为:9



部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include

int fun(int a[3][3])

 {

 /***********begin***********/

inti,j,max=a[0][0];

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

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

if(a[i][j]>max)

max=a[i][j];

return max;

 /************end************/

 }


int main()

 { 

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

int i,j,max;

printf("array is:\n");

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

 {

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

printf("%5d",a[i][j]);

printf("\n");

 }

max=fun(a);

printf("Result is: %d\n",max);

return 0;

 }


43.在考生文件夹下,要求程序PROG.C的功能是:


求两个整数m和n的最大公约数和最小公倍数。


部分源程序存在文件PROG.C中,请将最大公约数存放在变量s1中,将最小公倍数放在变量s2中。


请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将最大公约数和最小公倍数分别存放在变量s1和s2中

#include "stdio.h"

int main()

 { 

int m=9,n=84,s1,s2,i;

 /***********begin***********/

s1=1;

for(i=1;i<=m;i++) //m与n的最大公约数必定在[1,m]之间,且能被二者整除

if (m%i==0 &&n%i==0)s1=i; 

s2=m*n/s1;


 /************end************/

printf("The Highest common divisor of %d and %d is %d\n",m,n,s1);

printf("The Lowest common multiple of %d and %d is %d\n",m,n,s2);

return 0;

 }


44.在考生文件夹下,要求程序PROG.C的功能是:

求两个整数m和n的最小公倍数,将求出的最小公倍数存入变量t中。


部分源程序存在文件PROG.C中。

请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将结果存入变量t中。

 #include "stdio.h"

int main()

 { 

int m=6,n=45,t,i,temp;

 /***********begin***********/

t=m*n;

for(i=n;i

if (i%m==0 &&i%n==0) 

t=i; break; 

}


 /************end************/

printf("The Lowest Common Multiple of %d and %d is %d\n",m,n,t);

return 0;

 }


45..在考生文件夹下,要求程序PROG.C的功能是:

按下面公式,求π的近似值,直到最后一项中的分数小于1e-6为止。

π 1 1 1 1  

— =(1 + ——)*(1 + ——)*(1 + ——) * (1 + ——) + ……

 2      1*3 3*5 5*7 7*9 


部分源程序存在文件PROG.C中,请将计算结果存入变量pi中。


请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将计算结果存入变量pi中。

 #include "stdio.h"

 #include "math.h"

 #include "stdlib.h"

int main()

 { 

double pi;

float i;

 /***********begin***********/

double item; 

pi=1.0;

i=1;

item=1.0/(1*3); 

while (item>1e-6) 

pi=pi*(1+item); 

i++; 

item=1.0/((2*i-1)*(2*i+1)); 

}

pi=pi*2;


 /************end************/

printf("pi=%.5f\n",pi);

return 0;

 }


46.在考生文件夹下,要求程序PROG.C的功能是:

按下面的公式求s的近似值:


 1   1 1 1           1 

 s = 1 + —— + —— + —— + —— + …… + ——— 

 2*2  3*3 4*4 5*5        10*10


部分源程序存在文件PROG.C中。请将运算结果存入变量s中。

请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:请将运算结果存入变量s中。s=1.550####

#include "stdio.h"

int main()

 { 

double s;

int i;

 /***********begin***********/

s=0;

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

 s=s+1.0/(i*i);


 /************end************/

printf("s=%.3f\n",s);

return 0;

 }


47在考生文件夹下,要求程序PROG.C的功能是:

按下面公式的前200项,求π的近似值:


π 1 1 1 1  

— =(1 + ——)*(1 + ——)*(1 + ——) * (1 + ——) *……

2 1*3 3*5 5*7 7*9 


部分源程序存在文件PROG.C中,请将计算结果存入变量pi中。


请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将计算结果存入变量pi中。pi=3.13768

 #include "stdio.h"

int main()

 { 


double pi;

long int i;

 /***********begin***********/

double item; 

pi=1.0;

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

{

item=1.0/((2*i-1)*(2*i+1));

pi=pi*(1+item);

}

pi=pi*2;

 /************end************/

printf("pi=%.5f\n",pi);

return 0;

 }


48.试题要求:

在考生目录下,要求程序PROG.C的功能是:

将字符串中的所有字符ch都替换成'*'并输出。

例如,当字符串为"This Is a c Program",ch的值为's'时,

程序的输出结果应为:"Thi* I* a c Program"


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。







运行并调试程序,然后将源程序文件PROG.C提交。

#include

 #include

void fun(char str1[],char ch)

 {

 /***********begin***********/















int i; 

for(i=0; str1[i]!='\0';i++) 

{

if (str1[i]==ch) 

str1[i]= '*'; 

}



 /************end************/

 }


int main()

 { 

char str1[80]="This Is a c Program", ch;

printf("Enter ch:\n");

scanf("%c",&ch);

printf("String is: %s\t ch is %c\n",str1,ch);

fun(str1,ch);

printf("Result is: %s\n",str1);

return 0;

 }



49.试题要求://2016/06/01

在考生目录下,要求程序PROG1.C的功能是:

判断m是否为素数。如果m为素数使变量f的值为1,否则使变量f值为0。


部分源程序存在文件PROG.C中。

请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将判断结论(0或1)存放变量f中。

#include "stdio.h"

int main()

 { 

int m=123,f=1,i;

 /***********begin***********/

for (i=2;i

{

if (m%i==0) break; 

}

if (i

else f=1;

 /************end************/

if(f) printf("%d is a prime\n",m);

else printf("%d is not a prime\n",m);

return 0;

 }




50试题要求:

在考生目录下,要求程序PROG.C的功能是:

按下面的公式求sum的近似值,直到最后一项的项值小于1e-6为止,请将计算结果存入变量sum中。


 1    1 1 1 1 

sum = 1 + —— + —— + —— + —— + …… + —————— 

 3*3  5*5 7*7 9*9        (2n-1)(2n-1)


部分源程序存在文件PROG.C中。

请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将计算结果存入变量sum中。sum=1.233######

#include "stdio.h"

int main()

 { 

double sum;


 /***********begin***********/

int n=1; 

double item=1; 

sum=0; 

while(item>1e-6){ 

sum=sum+item; 

n++; 

item=1.0/((2*n-1)*(2*n-1)); 

}

 /************end************/

printf("sum=%.3f\n",sum);

return 0;

 }




51在考生文件夹下,要求程序PROG.C的功能是:截至4/28日

求两个整数m和n的最大公约数,将求出的最大公约数存入变量t中。


部分源程序存在文件PROG.C中。

请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

特别提示:必须将结果存入变量t中。

 #include "stdio.h"

int main()

 { 

int m=76,n=40,t,i;

 /***********begin***********/

t=1;

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

if (m%i==0 &&n%i==0)

t=i;

 /************end************/

printf("The Highest Common Divisor of %d and %d is %d\n",m,n,t);

return 0;

 }



52试题要求:

在考生目录下,要求程序PROG.C的功能是:

按下面的公式求s的近似值:


 1   1 1 1          1 

 s = 1 + —— + —— + —— + —— + …… + ——— 

    2*2 3*3 4*4 5*5        n*n


部分源程序存在文件PROG.C中,n的值由键盘输入。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include "stdio.h"

double fun(int n)

 {

 /***********begin***********/

inti;

doublesum=0;

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

sum=sum+1.0/(i*i);

return sum;

}



 /************end************/


 }


int main()

 { 

double s;

int n;

printf("Enter n:\n");

scanf("%d",&n);

 s=fun(n);

printf("s= %.3f\n",s);

return 0;

 }



53在考生文件夹下,要求程序PROG.C的功能是:

将字符串中的所有字符ch(ch中存放一小写字母)都替换成相应的大写字母,其余的不变;并输出。

例如,当字符串为"This Is a c Program",ch的值为'a'时,

输出结果应为:"This Is A c ProgrAm"


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include

 #include

void fun(char str1[],char ch)

 {

 /***********begin***********/

int i; 

for(i=0; str1[i]!='\0';i++) 

if (str1[i]==ch) 

str1[i]= str1[i]-32; 

 /************end************/

 }


int main()

 { 

char str1[80]="This Is a c Program";

printf("String is: %s\n",str1);

fun(str1,’a’);

printf("Result is: %s\n",str1);

return 0;

 }



54在考生文件夹下,要求程序PROG.C的功能是:

求两个整数m和n的最小公倍数,m和n的值由键盘输入。


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include "stdio.h"

int fun(int m,int n)

 {

 /***********begin***********/

intt,s=m*n; 

t=n%m; 

while(t) 

{ n=m; m=t; t=n%m; } 

return s/m;

 /************end************/

 }


int main()

 { 

int m,n,i,t;

printf("Enter m,n :\n");

scanf("%d,%d",&m,&n);

if(m>n) { t=m; m=n; n=t; }

printf("The Lowest Common Multiple Of %d and %d is %d\n",m,n,fun(m,n));

return 0;

 }



55在考生文件夹下,要求程序PROG.C的功能是:

求指定字符在字符串中最后一次出现的位置(该字符的下标加1)并输出。

例如,当字符串为"This Is a c Program",指定字符为'a'时

则应输出:Result is: 18


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include

 #include

int fun(char str1[],char ch)

 {

 /***********begin***********/

int i ,pos=0; //

for(i=0; str1[i]!='\0';i++) 

if (str1[i]==ch)

pos=i+1; 

returnpos;

 /************end************/

 }


int main()

 { 

 char str1[80]="This Is a c Program",ch=’a’;

int pos;

printf("String is: %s\n",str1);

printf("char is: %c\n",ch);

pos=fun(str1,ch);

printf("Result is: %d\n",pos);

return 0;

 }



56.在考生文件夹下,要求程序PROG.C的功能是:

求指定字符在字符串中第一次出现的位置(该字符的下标)并输出。

例如,当字符串为"This Is a c Program",指定字符为'a'时

则应输出:Result is: 8

部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include

 #include

int fun(char str1[],char ch)

 {

 /***********begin***********/

inti,pos=0; 

for(i=0; str1[i]!='\0';i++) 

{

if (str1[i]==ch) 

{

pos=i;

break;

}

 }

returnpos;

 /************end************/

 }


int main()

 { 

 char str1[80]="This Is a c Program",ch=’a’;

int pos;

printf("String is: %s\n",str1);

printf("char is: %c\n",ch);

pos=fun(str1,ch);

printf("Result is: %d\n",pos);

return 0;

 }



57.在考生文件夹下,要求程序PROG.C的功能是:

求s=a+aa+aaa+……+aa…a(n个a)之和,其中a是一个数字。例如:a=2,n=4时,

s=2+22+222+2222=2468


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

#include

int fun(int a , int n)

 {

int s;

 /***********begin***********/

inti,item=0; 

s=0; 

for(i=0;i

item=10*item+a;

s=s+item;

}



 /************end************/

return(s);

 }

int main()

 {

int a,n,s;

printf("Please input a,n:\n");

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

 s=fun(a,n);

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

return 0;

 }



58.在考生文件夹下,要求程序PROG.C的功能是:

求n个整数的平均值。

例如:10,38,98,87,89,23,44,67,100,345,则程序的输出结果应为:平均值=90.1000


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

 #include "stdio.h"

 #define N 10

float fun(int a[N],int n) 

 {

 /***********begin***********/

int i; 

float sum=0; 

for (i=0;i

sum=sum+a[i]; }

return sum/n;

 /***********end***********/


 }


int main()

 { 

 int a[N]={10,38,98,87,89,23,44,67,100,345};

float average;

average=fun(a,N);

 printf("平均值=%.4f\n",average);

return 0;

 }




59.在考生文件夹下,要求程序PROG.C的功能是:

按下列格式输出杨辉三角(要求打印10行)

 1

 1    1

 1    2 1

 1    3 3 1

 1    4 6    4 1

 ...... 


部分源程序存在文件PROG.C中。

请在main( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

 #include "stdio.h"

 #define N 10

int main()

 { 

int a[N][N],i,j;

 /***********begin***********/

for(i=0;i

{

a[i][0]=1;

a[i][i]=1;

}

for(i=2;i

for(j=1;j

a[i][j]=a[i-1][j-1]+a[i-1][j];}

 /************end************/

for(i=0;i

 {

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

printf("%6d",a[i][j]);

printf("\n");

 } 

return 0;

 }




60.在考生文件夹下,要求程序PROG.C的功能是:

将一个字符串的第0,2,4,6,8,......位置的字符复制到另一个字符串中,并输出。

例如,当一个字符串为"This Is a c Program"

则另一个字符串应为"Ti sacPorm"


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

#include

void fun(char str1[],char str[])

 {

 /***********begin***********/

inti,j; 

for(i=0,j=0; str1[i]!='\0';i=i+2,j++) 

str[j]=str1[i];

str[j]='\0'; //注意此处字符串结束


 /************end************/

 }


int main()

 { 

char str1[80]="This Is a c Program",str[80];

printf("String is: %s\n",str1);

fun(str1,str);

printf("Result is: %s\n",str);

return 0;

 }



61.在考生文件夹下,要求程序PROG.C的功能是:

统计字符串中数字的个数并输出。

    例如,当字符串为"2007-August-15"

              输出:Result is:6


    部分源程序存在文件PROG.C中。

    请在fun( )函数中的/*******begin********/ 与 /********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

#include

#include

int fun(char str1[])

 {

 /***********begin***********/

inti,count=0; 

for(i=0; str1[i]!='\0';i++) 

if (str1[i] >='0' && str1[i] <='9') 

count++;

return count;

 /************end************/

 }


int main()

 { 

char str1[80]="2007-August-15";

int n;

printf("String is: %s\n",str1);

 n=fun(str1);

printf("Result is: %d\n",n);

return 0;

 }




62.在考生文件夹下,要求程序PROG.C的功能是:

将字符串1的第1,3,5,7,9,......位置的字符复制到字符串2并输出。

例如,当字符串1为"This Is a c Program"

则字符串2为"hsI rga"


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include

 #include

void fun(char str1[],char str2[])

 {

 /***********begin***********/

inti,j; 

for(i=1,j=0; str1[i]!='\0';i=i+2,j++)

str2[j]=str1[i];

str2[j]='\0'; //注意此处字符串结束

 /************end************/

 }


int main()

 { 

char str1[80]="This Is a c Program",str2[80];

printf("String is: %s\n",str1);

fun(str1,str2);

printf("Result is: %s\n",str2);

return 0;

 }



63.在考生文件夹下,要求程序PROG.C的功能是:

按下面的公式求s的近似值,直到最后一项的项值绝对值小于x为止,x的值由键盘输入,结果保留4位小数。


 1    1 1 1 

 s = 1- —— + —— - —— + ……+(-1)^(n-1) ————

 3 5   7 2n-1

例如:当x=0.001时,结果为0.7849。

部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。


运行并调试程序,然后将源程序文件PROG.C提交。

#include "stdio.h"

 #include "math.h"

 #include "stdlib.h"

double fun(double x)

 {

 /***********begin***********/

intn=1,f=1;

double item=1.0,sum=0;

while(item>=x)

{

sum=sum+item*f;

f=-f;

n++;

item=1.0/(2*n-1);

}

return sum;


 /***********end***********/

 }


int main()

 { 

double x,sum;

printf("Enter x:\n");

scanf("%lf",&x);

sum=fun(x);

printf("sum=%.4f\n",sum);

return 0;

 }


64.在考生文件夹下,要求程序PROG.C的功能是:

统计字符串中空格和非空格的个数。

例如,当字符串为:"Goodbye 1234!***"

输出:空格:1,非空格:15


部分源程序存在文件PROG.C中。

请在fun( )函数中的/*******begin********/ 与/********end*********/

之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改动其它位置的任何内容。

运行并调试程序,然后将源程序文件PROG.C提交。

#include

#include

int space,other;

void fun(char str[])

{


 /***********begin***********/

int i; 

space=0;other=0;

for(i=0; str[i]!='\0';i=++)

if(str[i]=' ') //判断str[i]是否为空格符

space=space+1;

else other=other+1;

 /***********end************/


}


int main()

{

charstr[80];

printf("Input string:\n");

gets(str);

fun(str);

printf("空格:%d,非空格:%d\n",space,other);

return 0;

}


int a[4][4];//二维数组

                       a[0][0] a[0][1] a[0][2] a[0][3]

a[1][0] a[1][1] a[1][2] a[1][3]

a[2][0] a[2][1] a[2][2] a[2][3]

a[3][0] a[3][1] a[3][2] a[3][3]

推荐阅读更多精彩内容