admin 管理员组

文章数量: 1086019


2025年1月1日发(作者:2022程序设计语言排行榜)

1、

main( )函数的位置( B )。

A、必须位于程序文件的最前面

B、可位于用户自定义函数之前,也可位于用户自定义函数之后

C、必须位于用户自定义函数的前面

D、必须位于C库函数的后面

A、?a

A、20

A、5

A、ca=getchar( );

B、_count

B、8

B、6

B、getchar(ca);

C、_6b

C、12

C、7

C、putchar(ca);

D、pro

D、4

D、4

D、scanf("%c",ca) ;

2、

下列不合法的用户标识符是( A )。

3、

逗号表达式a=12, b=8, a+b的值是( A )。

4、

若已定义:int i=3, a; 语句a=(i--)+(i--); 执行后a的值是( B )。

5、

若已定义:char ca; 要从键盘输入字符'B'给变量ca,应使用的语句是( A )。

6、

若已定义:char ca; 判断变量ca值为大写字母的逻辑表达式是( C )。

A、'A'<=ca<='z'

C、(ca>='A')&&(ca<='Z')

A、6.3 B、0

B、(ca>=A)&&(ca<=Z)

D、('A'>=ca)&&( 'z')<=ca)

C、6 D、5.3

7、

若已定义:int a=5; float x=5.3; 则表达式a%3/2+x的值为( A )。

8、

下列( A )不能构成一条if语句。

A、if (x= =0) a=1: b=2;

C、if (x>0) a=1; else a=2;

9、

设有下列程序段

B、if (x>0);

D、if (x= =0) ; else a=2;

int i=6;

while (i<=6)

i++;

下列叙述正确的是( A )。

A、循环体语句执行1次

C、循环体语句执行2次

B、循环体语句执行3次

D、循环体语句一次也不执行

10、

对int x[5]={5, 3, 1}; 语句的功能描述正确的是( B )。

A、将3个初值依次赋给x[1]至x[3],且其他元素均为0

B、将3个初值依次赋给x[0]至x[2],且其他元素均为0

C、将3个初值依次赋给x[2]至x[4],且其他元素均为0

D、将3个初值依次赋给x[3]至x[5],且其他元素均为0

11、

能正确初始化二维数组arr的是( A )。

A、int arr[2][3]={{1, 2},{3, 4, 5}};

C、int arr[ ][ ]={{1, 2},{3, 4, 5}};

s2)); s3的值是( C )。

B、int arr[2][ ]={1, 2, 3, 4, 5};

D、int arr[2][3]={{1, 2},{3, 4},{5}};

12、

若已定义char s3[20], s1[10]= "How are ", s2[10]= "you"; 执行语句strcpy(s3, strcat (s1,

A、How are

int a=1, b=2, m=3;

fun((a, b), m);

A、3, 3

# define M 3+1

void main( )

{ int a[2*M];

……

}

A、8

A、a[1]

B、s1 s2 C、How are you D、youHow are

13、

以下程序段中函数调用语句fun((a, b), m); 的实参值是( B )。

B、2, 3 C、1, 3 D、(1, 2), 3

14、

下列程序中定义的一维数组a的长度是( B )。

B、7

B、p[1]

C、6

C、a++

D、10

D、p++

15、

若已定义:int a[5]={1, 2, 3, 4, 5}; 执行*p=a; 后能表示a[1]地址的是( D )。

16、

下列程序的运行结果是( C )。

void main( )

{ int a=1, b=2;

int *pa=&a, *pb=&b;

*pa=*pb;

*pb=*pa;

printf("%d, %dn", a, b);

}

A、1, 1 B、2, 1

17、

若有以下对结构类型和结构变量的定义:

C、2, 2 D、1, 2

struct date

{

int year;

int month;

int day;

};

struct student

{

char name[20];

struct date birthday;

}stu;

下列能对结构变量stu的birthday成员进行正确赋值的是( D )。

A、=20 B、=20 C、=20 D、=20

18、

若已定义:int a[5]={1, 2, 3, 4, 5}; int *p=&a[2]; 则下列值为3的是( C )。

A、p-a B、p-a[0] C、*p D、a[3]

19、

若已定义:typedef enum week {mon, tue, wed, thu, fri, sat, sun} week_day; 则下列语句

错误的是( B )。

A、enum week_day day;

C、enum week day;

# include

int main( )

{

FILE *fp;

fp=fopen("", "w+");

if (fp==NULL)

return 0;

else

{

fputs("one", fp);

rewind(fp);

fputs("two", fp);

fclose(fp);

return 1;

}

}

A、0 B、one

21、

通常将程序设计语言划分为( A )。

B、week day;

D、week_day day;

20、

以下程序运行后,文件的内容是( C )。

C、two D、onetwo

A、机器语言、汇编语言和高级语言

C、高级语言、自然语言和伪代码

22、

下列合法的长整型常量是( C )。

B、汇编语言、高级语言和低级语言

D、自然语言、流程图和伪代码

C、32768L

C、c='101'

C、3

D、Long32768

D、c=101

D、5

A、328Long

A、c="101"+10.78

A、0

B、32768+Long

B、c="e"+10.78

B、9

23、

若已定义:char c; 则( D )是正确的赋值表达式。

24、

若已定义:int a=2; 语句a*=a-=a+=3; 执行后,a的值是( A )。

25、

要使下列程序的运行结果为123, 123, 12,则( C )是正确的数据输入方式。

void main( )

{ int a, b, c;

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

printf("%d,%d,%dn", a, b, c);

}

A、123, 12312 B、123, 123, 12

A、0.5 B、1

C、123-123-12

C、0.4

D、12312312

D、0

26、

若已定义:int x=2, y=4; 则表达式(double) x/(y+1)的值是( C )。

27、

下列程序段运行后count的值为( C )。

int i=8, count=0;

while (i>=2)

{++count;

i-=2;

}

A、10 B、8 C、4

B、按列优先

D、按行优先

D、6

28、

C语言中,二维数组元素的存放顺序是( D )。

A、由用户自己定义

C、既可以按行优先,也可以按列优先

A、gets(s1[20], s2[20]);

C、getch(s1, s2);

30、

下列叙述正确的是( D )。

29、

若已定义char s1[20], s2[30]; 能正确从键盘读入字符串的是( D )。

B、scanf("%c%c", s1[20], s2[20]);

D、scanf("%s%s", s1, s2);

A、函数的形参和对应的实参个数应相等,类型可以不兼容

B、形参是变量名,实参也只能是变量名,不可以是表达式

C、函数至少要有一个返回值

D、函数的形参在被调用前是没有确定值的

31、

下列叙述错误的是( B )。

A、预处理命令“#define N 3”后不能加“;”

B、宏定义也是C语言的语句,可出现在源程序中任意位置

C、C源程序加入一些预处理命令是为了改进程序设计环境,提高编程效率

D、预处理命令行都必须以#号开始

32、

以下程序的运行结果是( C )。

void main( )

{ int a=3, b=4, c;

int *p1, *p2;

p1=&a;

p2=&b;

p2=p1;

c=*p1+2*(*p2);

printf("%dn", c);

}

A、15 B、11 C、9 D、7

33、

错误定义与初始化结构类型变量stu1的是( A )。

A、struct student B、struct student C、struct student D、struct

{ int num; { int num; { int num; { int num;

float score; float score; float score; float score;

}; }stu1={1001, 85.0}; }; }stu1={1001, 85.0};

student stu1={1001, 85.0}; struct student stu1={1001, 85.0};

34、

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

int a[2][2]={1, 2, 3, 4}, (*p)[2];

p=a;

printf("%dn", (*p)[2]);

A、4 B、2

35、

下列语句正确的是( A )。

C、1 D、3

A、typedef int INTEGER;

C、typedef INTEGER=int

A、fwrite("HELLO", 1, 5, fp);

C、fputs("hello", fp);

37、

下列叙述正确的是( B )。

B、typedef INTEGER int;

D、typedef int=INTEGER

B、fwrite("hello", 5, fp);

D、fprintf(fp, "%s", "hello");

36、

若已定义:FILE *fp; 则不能向fp所指向的文件写入字符串“hello”的语句是( B )。

A、分号是C语句之间的分隔符,并不表示一条语句的结束

B、注释部分在C源程序可独占一行,也可跟在一行语句的后面

C、花括号“{ }”只能用作复合语句的定界符

D、函数是C源程序的基本单位,所有函数名都可以由用户命名

A、’t’

A、(x+y)/(1+z)/3

C、(x+y)/(3*(1+z))

A、!(c/a)

A、4.5

A、if (a>b)

k=1;

else if (b>c)

k=1;

B、’b’

B、(x+y)/3/(1+z)

D、1/3*(x+y)/(1+z)

B、b+c

B、5.5

B、if (a>b&&b>c)

k=1;

else

k=0;

C、"b"

D、’n’

38、

下列不合法的字符常量是( C )。

39、

若已定义:float x, y, z; 则表达式( D )与右侧所示代数式计算结果不相符。

40、

若已定义:int a=4, b=3, c=2; 下列表达式值为0的是( D )。

C、(b-a)&&(b-c)

C、3.5

C、if (a>b||b>c)

k=1;

D、c%b && b/a

D、2.5

D、if (a<=b)

k=0;

else if (b<=c)

k=1;

else

k=0;

41、

若已定义:int a=7; float x=2.5,y=5; 则表达式x+(a/3*(int)(x+y))%4的值是( A )。

42、

若已定义int k, a, b, c; 则语句( B )与k=a>b?(b>c?1:0):0语句的功能等价。

43、

以下程序的运行结果是( D )。

void main( )

{ int i;

for (i=7; i>3; i--, i--)

printf("A");

}

A、AAAA B、A

44、

下列程序段的运行结果是( C )。

C、AAA D、AA

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

while (i<=4)

{ t=a[i];

a[i]=a[9-i];

a[9-i]=t;

i++;

}

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

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

A、 B、1357924680

A、6 B、3

C、9876543210

C、2

D、2468013579

D、1

45、

若已定义int arr[ ][3]={1, 2, 3, 4, 5, 6}; 则数组a第一维长度是( C )。

46、

以下程序的运行结果是( D )。

int fun (int k)

{ switch(k)

{ case 2: k++;

case 3:

case 4: k++;

default: k++;

}

return k;

}

void main( )

{ printf("%dn", fun(2));

}

A、4 B、2

47、

若已定义:

C、3 D、5

struct student

{

int num;

char name[20];

}stu[2]={{20, "Yan wei"},{19, "Ma tao"}};

struct student *p=stu;

无法正确引用" Ma tao " 的是( A )。

A、 B、(p+1)->name C、stu[1].name

48、

下列对枚举类型的定义正确的是( C )。

D、(*(p+1)).name

A、enum a{"a","b","c"};

C、enum a{a=-2,b=1,c=3};

( B )。

A、ch=getchar( );

B、enum a={a,b,c};

D、enum a={'a', 'b', 'c'};

49、

若已定义:char ch; FILE *fp;,要从fp所指向文件中读入一个字符,正确的语句是

B、ch=fgetc(fp); C、ch=fgets(fp); D、ch=getc( );

50、

C源程序由函数构成,函数则由函数的首体和( C )两部分组成。

A、结构体

A、(int)x/a

A、14,5

B、联合体

B、(int)(x%a)

B、14,6

C、函数体

C、(int)(x/a)

C、12,5

B、(x-y)*(x-y)>9

D、abs(x-y)>3

D、复合语句

D、(int)x%a

D、12,6

51、

若已定义:int a=2; double x=5.5; 下列不正确的表达式是( B )。

52、

若已定义:int a=5, b=7, x; 语句x=(++a)+(++b); 执行后x , a的值分别是( B )。

53、

若已定义:int x, y; 则( A )表达式无法正确表示数学关系式 |x-y|>3。

A、(x-y)<-3&&(x-y)>3

C、(x-y)>3||(x-y)<-3

54、

若已定义:int a=1, b=2, c=3; 则表达式!(a+b)+c-1的值是(

A、5 B、6 C、3

55、

以下程序的运行结果是( D )。

void main( )

{ int k=1;

switch(++k)

{ default

printf("%d", k);

case 1:

printf("%d", k);

break;

case 2:

printf("%d", 2*k);

case 3:

printf("%d", 3*k);

break;

}

}

A、4 B、11 C、1

56、

以下程序的运行结果是( C )。

#define M 3

#define N M+5

void main( )

{ printf("%dn", N*2);

}

A、6 B、11 C、13

57、

以下程序的运行结果是( D )。

void fn(int x, int y, int *p)

{ *p=x+y;

}

void main( )

D )。

D、2

D、46

D、16

{ int a, b;

fn(1,2,&a):

fn(3,a,&b):

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

}

A、a=6,b=6 B、a=3,b=3

58、

若已定义:

C、a=1,b=3 D、a=3,b=6

struct student

{ int num;

char *name;

float score;

}stu , *p=&stu;

不合法引用结构变量stu中成员的是( D )。

A、p->num B、 C、

59、

下列叙述正确的是( C )。

D、

A、注释部分只能单独占用一行,不能跟在一行语句的后面

B、C源程序中每一行就是一条语句

C、函数体的定界符只能用一对花括号“{ }”

D、C源程序都是从main( )函数开始执行,所以main( )函数必须位于程序文件最前面

A、整型

int i=1,a=0;

while (i++<=6)

{ a+=1;

if (i%2!=0)

break;

a+=2;

}

A、1

B、枚举类型 C、单精度型 D、长复数类型

60、

下列不属于C语言数据类型的是( D )。

61、

以下程序段运行后a的值为( C )。

B、3 C、4 D、6

62、

下列程序段的运行结果是( B )。

int a[5]={2, 4, 3, 5, 6}, i, s=0;

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

s+=a[i-1];

printf("%dn", s);

A、20 B、9

A、5

#define K 3

B、4

C、12

C、2

D、14

D、9

63、

若已定义:int a[ ][4]={{0},{1,2},{3,4,5},{6,7,8,9}}; 则a[2][2]的值为( A )。

64、

下列程序的运行结果是( D )。

void main( )

{ int a=2,b=4;

printf("%dn", a*(K+b));

}

A、10 B、6

A、*p2=*a;

66、

若已定义:

C、11

C、p1=*(a+1);

D、14

D、p2=b

65、

若已定义:int a=5, *p1=&a; float b=5.1, *p2=&b; 下列正确的赋值语句是( B )。

B、b=*p1+*p2;

struct student

{ int num;

char name[20];

}stu1,stu2;

下列错误的语句是( D )。

A、=;

C、strcpy(,);

67、

若已定义:

B、stu1=stu2;

D、=;

struct student

{

int num;

float score;

}stu[2]={{101,85.5},{102,90.0}}, *p=stu;

下列对结构体数组引用正确的是( D )。

A、p[1]->num B、 C、stu[2].num

也能写,正确的语句是( C )。

A、fp=fopen("d:","rw");

C、fp=fopen("d:","w+");

69、

下列合法的常量是( C )。

D、p->num

68、

若已定义:FILE *fp; 要打开d盘temp文件夹下的文件,打开方式是既能读

B、fp=fopen("d:/emp/","r+");

D、fp=fopen("d:","wr");

C、'n' D、'a'+3

A、'3a' B、E13

70、

若已定义:int x=3,y=2; 语句( C )可以实现输出结果为:3*2=6。

A、printf("x*y=%d", x*y);

C、printf("%d*%d=%d", x,y, x*y);

A、!、=、*、+

void main( )

{ int a[3][3]={0},i,j;

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

a[i][0]=i+1;

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

B、!、*、=、+

B、printf("%d*%d=x*y", x,y);

D、printf("x,y=x*y");

C、*、! 、+、= D、! 、*、+、=

71、

下列四个运算符,按优先级别由高到低排列的是( D )。

72、

以下程序的运行结果是( A )。

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

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

printf("n");

}

}

A、1 0 0 B、1 0 0

2 0 0 0 2 0

3 0 0 0 0 3

A、p=a[0]

A、x= =(y!=x)

A、3

B、p=&a[0]+1;

B、(!x)&&y

B、1

C、0 0 1

0 2 0

3 0 0

C、p=a;

C、x&&(!y)

C、2

D、1 2 3

0 0 0

0 0 0

D、p=&a[0];

D、x||!y

D、4

73、

若已定义:int a[6]={1,2,3,4,5,6}, *p; 下列赋值语句不合理的是( A )。

74、

若已定义:int x=2,y=3; 下列表达式值为1的是( D )。

75、

若已定义:int a=1,b=2,x=3,y=4; 则表达式a>b?a:x

76、

以下程序的运行结果是( D )。

void main( )

{ int a[5]={1}, i;

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

a[i+1]=a[i]+2*(i+1);

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

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

}

A、1 2 6 15 23

C、1 2 3 4 5

77、

下列正确描述字符数组的是( C )。

B、1 3 5 7 9

D、1 3 7 13 21

A、字符数组只能存放字符串,不能存放单个字符

B、只能利用赋值语句实现字符数组的整体赋值

C、C语言没有字符串类型变量,可用字符数组实现字符串操作

D、字符串中可以含有'0'字符

78、

下列程序的运行结果是( C )。

union data

{

char c;

int k;

}data1;

void main( )

{

data1.k=66;

data1.c='A';

printf("%cn", data1.k);

}

A、B

别是( B )。

A、1和3

B、66 C、A D、65

79、

若已定义:enum week {mon,tue,wed=5,thu} week_day; 则枚举常量tue和thu的值分

B、1和6 C、2和6 D、2和4

80、

下列程序的运行结果是( A )

#define M 5

#define N M+1

#define NN N*M

void main( )

{ printf("%dn", 2*NN);

}

A、15 B、60

81、

以下程序的运行结果是( A )。

C、20 D、52

void main( )

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

int i, *p;

p=a;

for (p=a; p

printf("%d ", *p);

printf("n");

}

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

A、char B、int

C、1 2 3 4 5 6

C、float

D、1 2 3

D、double

82、

若已定义:int x; char c; 则表达式c+10*x的结果类型是( B )。

83、

以下程序运行时,要使运行结果为:3 6,正确的数据输入形式是( B )。

void main( )

{ int a,b;

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

printf("%d %dn", a , b);

}

A、36 B、3,6

A、(a+b>0)&&(a*b<0)

C、(a>0||b>0)&&(a<0||b<0)

85、

以下程序段的运行结果是( A )。

C、a=3,b=6 D、6,3

84、

逻辑表达式( D )能正确判断变量a和b的值同时为正或同时为负。

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

D、(a>0&&b>0)||(a<0&&b<0)

char str1[ ]={ 'Y', 'o', 'u', '0', 'a', 'r', 'e', '0', 'w', 'e', 'l'};

char str2[ ]={ 'w', 'e', 'l','c', 'o', 'm', 'e', '0', };

puts(strcat(str1,str2));

A、Youwelcome B、You welcome C、You are welcome D、Youarewelwelcome

86、

若已定义:int a[5]={1,2,3,4,5},*pa=a; 下列叙述正确的是( A )。

A、pa[0]与a[0]的值相等

C、pa++与a++的作用相同

87、

下列程序的运行结果是( D )。

B、pa+2与a[2]的值相同

D、pa与a[0]的值相等

void fn (int *p, int n)

{ int j;

for (j=0; j

*(p+j)+=1;

}

void main( )

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

int i;

fn(a,3);

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

printf("%d ", *(a+i));

}

A、3 3 4 B、3 4 5

88、

下列错误的枚举类型定义是( B )。

C、1 2 3 D、2 3 4

A、enum a{x=-1,y};

C、enum a{x=2,y=1,z};

# include

void main( )

{ FILE *fp;

int i=1,j=2;

fp=fopen("","w");

fprintf(fp,"%d",i);

fclose(fp);

fp=fopen("","w");

fprintf(fp,"%d",j);

fclose(fp);

}

A、1 B、12

A、fabs(x) B、sqrt(x)

B、enum a{a,2,b};

D、enum a{a=3,b,c=0};

89、

执行以下程序后,文件内容是( D )。

C、1 2

C、log(x)

D、2

D、abs(x)

90、

若已定义:double x; 函数( A )可用于求x的绝对值。

91、

continue语句在循环语句中的作用是( D )。

A、继续执行continue语句后的循环体各语句

B、终止程序运行

C、结束本次循环并跳出循环体

D、结束本次循环并执行下一次的循环

92、

函数调用中,若实参为数组名,则传递给对应形参的是( D )。

A、数组首元素的值 B、数组的长度

C、数组中每个元素的值 D、数组的首地址

93、

若已定义:int a=2, *p=&a, b=5, *q=&b; 下列运算无意义的是( D )

A、*q+*p B、*q-*p C、q-p

94、

C语言要求运算对象必须是整型的算术运算符是( D )。

A、- B、+ C、/

95、

以下程序段的运行结果是( A )。

char s1[7]= "abcdef", s2[4]= "12";

strcpy(s1,s2);

printf("%s %c", s1, s1[5]);

A、12 f B、12 ef f C、abcdef12

96、

下列程序的运行结果是( A )。

# include

int fun(int x, int y)

{ int z;

z=x>y?x:y;

return(x+z);

}

main( )

{ int a=6, b=3;

printf("%dn", fun(a,b));

}

A、12 B、7 C、9

97、

若已定义:int a=2; 则( A )是正确的赋值表达式。

A、a-=(a*3) B、a+3=a C、a=double (a/3)

98、

下列程序的运行结果是( A )。

void main( )

{ int a=23;

switch(a%3)

{ default:

printf("DD");

case 1:

printf("AA");

break;

case 2:

printf("BB");

case 3:

printf("CC");

}

}

A、BBCC B、AA C、DDAA

D、q+p

D、%

D、12 e

D、4

D、a*3=4

D、CC

99、

若已定义:int a[8]; 对数组a元素引用正确的是( C )。

A、a(6)

A、&a[0]

B、a[8]

B、*p-2

C、a[5]

C、p-2

D、a[-1]

D、a

100、

若已定义:int a[5]={1,2,3,4,5}, *p=&a[2]; 则不能表示a[0]地址的是( B )。


本文标签: 下列 语句 结果 函数 数组