在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
语句是完成某种程序功能的最小单位
正确答案是: D
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
O
正确答案是: 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]