奥鹏作业答案-谋学网-专业的奥鹏在线作业答案辅导网【官网】

 找回密码
 会员注册

微信登录,扫一扫

手机号码,快捷登录

VIP会员,3年作业免费下 !奥鹏作业,奥鹏毕业论文检测新手作业下载教程,充值问题没有找到答案,请在此处留言!
2022年5月最新全国统考资料投诉建议,加盟合作!点击这里给我发消息 点击这里给我发消息
奥鹏课程积分软件(2021年最新)
查看: 58|回复: 3

[谋学网首发] 安徽继续教育在线《高级语言程序设计》参考资料

[复制链接]
发表于 2024-12-2 21:09:11 | 显示全部楼层 |阅读模式
谋学网
•        <返回
•        2023年秋季作业
•         
单选 资料来源:谋学网(www.mouxue.com)
得分:0分
正确 错误 未批阅
单选题(80题 共80分)
0 80 得分0分
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
资料来源:谋学网(www.mouxue.com)(20题 共20分)
0 20 得分0分
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
已完成批阅重做
单选题   
1(1分)、
0
若有说明:int a[3][4];则对a 数组元素的非法引用是(  )。

•        A、
a[0][2*1]

•        B、
a[1][3]

•        C、
a[4-2][0]

•        D、
a[0][4]

参考答案: D
展开解析
2(1分)、
0
以下程序运行的输出结果是        。
main()
{    int   p=30;
printf("%d\n",(p/32>0?p/10:p%3)); }

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: D
展开解析
3(1分)、
0
若有定义:int a,b;,通过语句scanf(“%d#%d”,&a,&b);,能把整数3赋给变量a,5付给变量b的输入数据是( )。

•        A、
3  5

•        B、
3,5

•        C、
3#5

•        D、
35

参考答案: C
展开解析
4(1分)、
0
以下程序的输出结果是(  )。
#include <stdio.h>  
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

参考答案: C
展开解析
5(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 5 1

•        B、
1 7 0

•        C、
3 7 0

•        D、
5 5 0

参考答案: B
展开解析
6(1分)、
0
以下C语言源程序的书写格式不正确的是(    )。

•        A、
正确的函数首部,其后必须加上分号

•        B、
分号是语句的一部分

•        C、
一行上可以书写多条语句

•        D、
一个语句可以写在多行之上

参考答案: A
展开解析
7(1分)、
0
若有定义语句:int k1=10,k2=20;,执行表达式(k1=k1>k2)&&(k2=k2>k1)后,k1和k2的值分别为( )。

•        A、
0和1   

•        B、
0和20

•        C、
10和1

•        D、
10和20

参考答案: B
展开解析
8(1分)、
0
以下程序的输出结果是(  )。
#include <stdio.h>  
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

参考答案: C
展开解析
9(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        B、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        C、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: A
展开解析
10(1分)、
0
在C语言程序中(    )。

•        A、
main函数必须放在程序最前头

•        B、
main函数必须放在程序最后

•        C、
main函数必须放在所有函数之前

•        D、
main函数可以放在程序任何允许放置函数的位置
参考答案: D
展开解析
11(1分)、
0
合法的数组说明语句是(  )。

•        A、
int a[ ]="string";

•        B、
int a[5]={0,1,2,3,4,5};

•        C、
char a ="string";

•        D、
int a[ ]={0,1,2,3,4,5};

参考答案: D
展开解析
12(1分)、
0
struct student
   {long int num;
    char name[20];
    char sex;
    char addr[20];
   }______。
以下能够正确定义的是

•        A、
a={"Li Lin",10101,'M',"123 Beijing Road"};

•        B、
a={10101,"Li Lin","123 Beijing Road",'M'};

•        C、
a={10101,"Li Lin",'M',"123 Beijing Road"};

•        D、
a={"123 Beijing Road","Li Lin",'M',10101};

参考答案: C
展开解析
13(1分)、
0
以下不能输出字符A的语句是()(注:字符A的ASCII码值为65,字符a的ASCII码值为97)

•        A、
printf(“%c\n”,’A’-32)

•        B、
printf(“%d\n”,’A’);

•        C、
printf(“%c\n”,65);

•        D、
printf(“%c\n”,’B’-1);

参考答案: B
展开解析
14(1分)、
0
一个完整的C源程序是(  )。

•        A、
要由一个主函数或一个以上的非主函数构成

•        B、
由一个且仅由一个主函数和零个以上的非主函数构成

•        C、
要由一个主函数和一个以上的非主函数构成

•        D、
由一个且只有一个主函数或多个非主函数构成

参考答案: B
展开解析
15(1分)、
0
能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是        。

•        A、
(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)

•        B、
(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)

•        C、
(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)

•        D、
(x<=-10)||(x>=-5)||(x<=0)||(x>=100)

参考答案: B
展开解析
16(1分)、
0
以下叙述中,不正确的是(  )。

•        A、
在同一C程序文件中,不同函数中可以使用同名变量

•        B、
在main函数体内定义的变量是全局变量

•        C、
形参是局部变量,函数调用完成即失去意义

•        D、
若同一文件中全局变量和局部变量同名,则全局变量在局部变量作用范围内不起作用

参考答案: B
展开解析
17(1分)、
0
已知 int x=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为:     。
         if (x>y||x<z&&y>z)
            z=x; x=y; y=z;

•        A、
x=50, y=80, z=80

•        B、
x=80, y=30, z=50

•        C、
x=30, y=50, z=80

•        D、
x=50, y=30, z=30

参考答案: D
展开解析
18(1分)、
0
两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x--);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
19(1分)、
0
两次运行下面的程序,如果从键盘上分别输入4和6,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x++);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
20(1分)、
0
有以下程序
#include <stdio.h>
main()
{  int a;
    scanf("%d" ,&a);
    if(a++<9)  printf("%d\n",a);
    else    printf("%d\n",a);
}
程序运行时从键盘输入9<回车>,则输出的结果是        。

•        A、
10
•        B、
11
•        C、
9
•        D、
8
参考答案: A
展开解析
21(1分)、
0
以下程序段:
int i,a=3,b=2;
i=(--a==b++)?--a:++b;
printf("i=%d a=%d b=%d",i,a,b);
输出结果是        。

•        A、
i=1 a=1 b=3

•        B、
i=3 a=2 b=3

•        C、
i=4 a=1 b=4

•        D、
i=4 a=2 b=4

参考答案: A
展开解析
22(1分)、
0
以下程序的输出结果是(  )。

#include <stdio.h>  
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

参考答案: C
展开解析
23(1分)、
0
有两个字符数组a,b,则以下正确的输入语句是(  )。

•        A、
gets(a,b);

•        B、
scanf("%s%s",a,b);

•        C、
scanf("%s%s",&a,&b);

•        D、
gets("a"),gets("b");

参考答案: B
展开解析
24(1分)、
0
#include <stdio.h>
void  main()
{
int i,j,k;
for(i=1;i<10;i++)
for(j=0;j<10;j++)
for(k=0;k<10;k++)
if( (i*100+j*10+k)==((i*i*i)+(j*j*j)+(k*k*k)))
printf("%d%d%d ",i,j,k);
}
该程序可以输出所有的(  )。

•        A、
素数

•        B、
奇数

•        C、
偶数

•        D、
水仙花数

参考答案: D
展开解析
25(1分)、
0
若有定义:int x,y; char a,b,c; 并有以下输入数据(此处,<cr>代表换行符)
1 2<cr>
A B C<cr>
则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是( )。

•        A、
scanf("x=%dy=%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        B、
scanf("%dy%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        C、
scanf("%d%d%c%c%c%c%c%c",&x,&y,&a,&a,&b,&b,&c,&c);

•        D、
scanf("%d%d%c%c%c",&x,&y,&a,&b,&c);

参考答案: D
展开解析
26(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        B、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        C、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: C
展开解析
27(1分)、
0
以下哪一个不是C语言中的数据类型(    )。

•        A、
集合型

•        B、
双精度型

•        C、
复数型

•        D、
布尔型

参考答案: A
展开解析
28(1分)、
0
以下程序段:
int i,a=3,b=2;
i=(--a==b++)?--a:++b;
printf("i=%d a=%d b=%d",i,a,b);
输出结果是        。

•        A、
i=1 a=1 b=3

•        B、
i=3 a=2 b=3

•        C、
i=4 a=1 b=4

•        D、
i=4 a=2 b=4

参考答案: A
展开解析
29(1分)、
0
当执行以下程序段时,程序的执行情况是(  )。

     x=-1;
     do { x=x*x;} while( !x);

•        A、
循环体将执行一次

•        B、
循环体将执行两次

•        C、
循环体将执行无限次

•        D、
系统将提示有语法错误

参考答案: A
展开解析
30(1分)、
0
以下选项中与if(a==1)a=b; else a++;语句功能不同的switch语句是        。

•        A、
switch(a)  {case 1:a=b;break;  default:a++; }

•        B、
switch(a==1)  {case 0:a=b;break;case 1:a++; }

•        C、
switch(a)  {default:a++;break;case 1:a=b;}

•        D、
switch(a==1)  {case 1:a=b;break; case 0:a++;}

参考答案: B
展开解析
31(1分)、
0
若有定义:double a=22;int i=0,k=18;,则不符合C语言规定的赋值语句是(  )

•        A、
a=a++,i++;

•        B、
i=(a+k)<=(i+k);

•        C、
i=A%11;

•        D、
i=!a;

参考答案: C
展开解析
32(1分)、
0
以下哪一个可以作为正确的变量名(    )。

•        A、
for

•        B、
$abc

•        C、
3*x

•        D、
_file

参考答案: D
展开解析
33(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
011

•        C、
211

•        D、
001

参考答案: C
展开解析
34(1分)、
0
已知if (x>y||x<z&&y>z);z=x; x=y; y=z;int x=30,y=50,z=80;语句执行后变量x、y、z的值分别为:     。

•        A、
x=50, y=80, z=80

•        B、
x=50, y=30, z=30

•        C、
x=30, y=50, z=80

•        D、
x=80, y=30, z=50

参考答案: C
展开解析
35(1分)、
0
写出下面程序的执行结果        。
main( )
{ int  x,y=1;
  if(y!=0)     x=5;
  printf(“%d\t”,x);
  if(y= =0)   x=3;
else  x=5;
printf(“%d\t\n”,x);

•        A、
1   3

•        B、
1   5

•        C、
5   3

•        D、
5   5

参考答案: D
展开解析
36(1分)、
0
若有说明:int a[3][4];则对a 数组元素的非法引用是(  )。

•        A、
a[0][2*1]

•        B、
a[1][3]

•        C、
a[4-2][0]

•        D、
a[0][4]

参考答案: D
展开解析
37(1分)、
0
有如下程序
int func(int a,int b)
  { return(a+b); }
main( )
  { int x=2,y=5,z=8,r;
    r=func(func(x,y),z);
    printf("%d\n",r);  }
该程序的输出结果是(  )。

•        A、
12

•        B、
13

•        C、
14

•        D、
15

参考答案: D
展开解析
38(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        B、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        C、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: D
展开解析
39(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
20

•        B、
24

•        C、
25

•        D、
30

参考答案: A
展开解析
40(1分)、
0
以下哪一个不是正确的C语言常量(    )。

•        A、
0x2ac

•        B、
3.25e-8

•        C、
800

•        D、
0486

参考答案: D
展开解析
41(1分)、
0
若有说明:int a[3][4]={0};则下面正确的叙述是(  )。

•        A、
只有元素a[0][0]可得到初值0

•        B、
此说明语句不正确

•        C、
数组a 中各元素都可得到初值,但其值不一定为0

•        D、
数组a 中每个元素均可得到初值0

参考答案: D
展开解析
42(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 7 0

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 5 1

参考答案: A
展开解析
43(1分)、
0
定义一个void型函数意味着调用该函数时,函数(  )。

•        A、
通过return返回一个用户所希望的函数值

•        B、
返回一个系统默认值

•        C、
没有返回值

•        D、
返回一个不确定的值

参考答案: C
展开解析
44(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 5 1

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 7 0

参考答案: D
展开解析
45(1分)、
0
以下关于函数叙述中,错误的是(  )。

•        A、
函数未被调用时,系统将不为形参分配内存单元

•        B、
实参与形参的个数应相等,且实参与形参的类型必须对应一致

•        C、
当形参是变量时,实参可以是常量、变量或表达式

•        D、
形参可以是常量、变量或表达式

参考答案: D
展开解析
46(1分)、
0
以下对一维整型数组a 的正确说明是(  )。

•        A、
int a(10);

•        B、
int n=10,a[n];

•        C、
int n; scanf("%d",&n); int a[n];

•        D、
int a[3*5+2];

参考答案: D
展开解析
47(1分)、
0
以下关于函数的叙述中正确的是(  )。

•        A、
C语言程序将从源程序中第一个函数开始执行

•        B、
可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行

•        C、
C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束

•        D、
main可作为用户标识符,用以定义任意一个函数

参考答案: C
展开解析
48(1分)、
0
以下哪一个不是C语言中的数据类型(    )。

•        A、
实型

•        B、
浮点型

•        C、
空类型

•        D、
关系型

参考答案: C
展开解析
49(1分)、
0
以下不正确的叙述是(    )。

•        A、
一个#include命令只能指定一个被包含文件

•        B、
一个#include命令可以指定多个被包含文件

•        C、
在#include命令中,文件名可以用尖括号或双引号括起来

•        D、
一个C程序中,可以使用多个#include文件包含命令

参考答案: B
展开解析
50(1分)、
0
若有说明:int a[10];,则对a数组元素的正确引用是(  )。

•        A、
a[10]

•        B、
a[3.5]

•        C、
a(5)

•        D、
a[10-10]

参考答案: D
展开解析
51(1分)、
0
若有定义:int a,b;,通过语句scanf(“%d;%d”,&a,&b);,能把整数3赋给变量a,5付给变量b的输入数据是( )。

•        A、
3  5

•        B、
3,5

•        C、
3;5

•        D、
35

参考答案: C
展开解析
52(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
25

•        B、
20

•        C、
24
•        D、
30
参考答案: B
展开解析
53(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
20

•        B、
24

•        C、
25

•        D、
30

参考答案: A
展开解析
54(1分)、
0
C语言中while 和do-while 循环的主要区别是(  )。

•        A、
do-while 的循环体不能是复合语句

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

•        C、
do-while 允许从外部转到循环体内

•        D、
do-while的循环体至少无条件执行一次

参考答案: D
展开解析
55(1分)、
0
若函数调用时参数为基本数据类型的变量,以下叙述正确的是(  )。

•        A、
实参与其对应的形参共占存储单元

•        B、
只有当实参与其对应的形参同名时才共占存储单元

•        C、
实参与对应的形参分别占用不同的存储单元

•        D、
实参将数据传递给形参后,立即释放原先占用的存储单元

参考答案: C
展开解析
56(1分)、
0
以下不能对二维数组a 进行正确初始化的语句是(  )。

•        A、
int a[2][3]={0};

•        B、
int a[][3]={{1,2},{0}};

•        C、
int a[2][3]={{1,2},{3,4},{5,6}}

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

参考答案: C
展开解析
57(1分)、
0
若有定义:int x,y; char a,b,c; 并有以下输入数据(此处,<cr>代表换行符)
1,2<cr>
A,B,C<cr>
则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是( )。

•        A、
scanf("x=%d,y=%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        B、
scanf("%d,%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        C、
scanf("%d,%d,%c,%c,%c,%c,%c,%c",&x,&y,&a,&a,&b,&b,&c,&c);

•        D、
scanf("%d,%d,%c,%c,%c",&x,&y,&a,&b,&c);

参考答案: D
展开解析
58(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
34
•        B、
4
•        C、
35
•        D、
3
参考答案: B
展开解析
59(1分)、
0
写出下面程序的执行结果        。
main( )
{ int  x,y=1;
  if(y!=0)     x=5;
  printf(“%d\t”,x);
  if(y= =0)   x=3;
else  x=5;
printf(“%d\t\n”,x);
}

•        A、
1   3

•        B、
1   5

•        C、
5   3

•        D、
5   5

参考答案: D
展开解析
60(1分)、
0
在一个C程序中,(  )。

•        A、
main函数必须出现在所有函数之前

•        B、
main函数可以在任何地方出现

•        C、
main函数必须出现在所有函数之后

•        D、
main函数必须出现在固定位置

参考答案: B
展开解析
61(1分)、
0
以下程序的运行结果是(  )。
#include <stdio.h>
main()
{
struct date
{ int year,month,day;
}today;
printf("%d\n",sizeof(today));
}

•        A、
6

•        B、
8

•        C、
10

•        D、
12

参考答案: D
展开解析
62(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
211

•        C、
011

•        D、
001

参考答案: B
展开解析
63(1分)、
0
以下叙述正确的是()
•        A、
计算机不仅能执行机器语言程序,也可以直接执行其它高级语言编写的程序。

•        B、
汇编语言是一种面向机器的低级语言,所以计算机可以直接执行用汇编语言编写的源程序。

•        C、
高级语言是与自然语言或数学语言相近的计算机语言,用高级语言编写的源程序计算机都不能直接执行。

•        D、
用高级语言编写的源程序只能经过解释程序边解释边执行。
参考答案: C
展开解析
64(1分)、
0
两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x--);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
65(1分)、
0
当执行以下程序段时,程序的执行情况是(  )。

     x=-1;
     do { x=x*x;} while( !x);

•        A、
循环体将执行一次

•        B、
循环体将执行两次

•        C、
循环体将执行无限次

•        D、
系统将提示有语法错误

参考答案: A
展开解析
66(1分)、
0
在C语言中,引用数组元素时,其数组下标的数据类型允许是(  )。

•        A、
整型常量

•        B、
整型表达式

•        C、
整型常量、变量或表达式

•        D、
任何类型的表达式

参考答案: C
展开解析
67(1分)、
0
若主调用函数类型为double,被调用函数定义中没有进行函数类型说明,而return语句中的表达式类型为float型,则被调函数返回值的类型是(  )。

•        A、
int 型

•        B、
float 型

•        C、
double 型

•        D、
由系统当时的情况而定

参考答案: A
展开解析
68(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
35
•        B、
34
•        C、
4
•        D、
3
参考答案: C
展开解析
69(1分)、
0
有以下程序
#include<stdio.h>
main()
{
int a=1,b=0;
if(--a)   b++;
else   if(a==0) b+=2;
else    b+=3;
printf(“%d\n”,b);
}
程序运行后的输出结果是(  )。

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: C
展开解析
70(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
34

•        B、
4

•        C、
35

•        D、
3

参考答案: B
展开解析
71(1分)、
0
已知 int x=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为:     。
         if (x>y||x<z&&y>z)
            z=x; x=y; y=z;

•        A、
x=50, y=80, z=80

•        B、
x=50, y=30, z=30

•        C、
x=30, y=50, z=80

•        D、
x=80, y=30, z=50

参考答案: A
展开解析
72(1分)、
0
若用数组名作为函数调用的实参,则传递给形参的是(  )。

•        A、
数组的首地址

•        B、
数组的第一个元素的值

•        C、
数组中全部元素的值

•        D、
数组元素的个数

参考答案: A
展开解析
73(1分)、
0
若A是数值类型,则逻辑表达式(a==1)||(a!=1)的值是        。

•        A、
1
•        B、
0
•        C、
2
•        D、
不知道a的值,不能确定

参考答案: A
展开解析
74(1分)、
0
若在C语言中未说明函数的类型,则系统默认该函数的数据类型是(  )。

•        A、
float

•        B、
long

•        C、
int

•        D、
double

参考答案: C
展开解析
75(1分)、
0
有以下程序
#include<stdio.h>
main()
{
int a=1,b=0;
if(--a)   b++;
else   if(a==0) b+=2;
else    b+=3;
printf(“%d\n”,b);
}
程序运行后的输出结果是        。

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: C
展开解析
76(1分)、
0
有如下嵌套的if语句
if(a<b)
if(a<c)    k=a;
else      k=c;
if(b<c)    k=b;
else     k=c;
以下选项中与上述if语句等价的语句是        。

•        A、
k=(a<b)?((a<c)?a:c)((b<c)?b:c);

•        B、
k=(a<b)?((b<c)?a:b)((b>c)?b:c);

•        C、
k=(a<b)?a:b;k=(b<c)?b:c;

•        D、
k=(a<b)?a:b;k=(a<c)?a:c;

参考答案: A
展开解析
77(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
30

•        B、
25

•        C、
24

•        D、
20

参考答案: D
展开解析
78(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);

•        A、
1 7 0

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 5 1

参考答案: A
展开解析
79(1分)、
0
能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是        。

•        A、
(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)

•        B、
(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)

•        C、
(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)

•        D、
(x<=-10)||(x>=-5)||(x<=0)||(x>=100)

参考答案: C
展开解析
80(1分)、
0
如果一个函数位于C程序中定义的第一个函数,在该函数体内说明语句后的复合语句中定义了一个变量,则该变量(  )。

•        A、
为全局变量,在本程序文件范围内有效

•        B、
为局部变量,只在该函数内有效

•        C、
为局部变量,只在该复合语句中有效

•        D、
定义无效,为非法变量

参考答案: C
展开解析
资料来源:谋学网(www.mouxue.com)   
81(1分)、
0
可以先声明结构体类型,再定义该类型的变量。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
82(1分)、
0
在调用一个函数的过程中允许间接调用该函数本身。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
83(1分)、
0
(++p)->num的计算过程是先使p自加1,然后得到p指向的元素中的num成员值。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
84(1分)、
0
如a为数组名,则可采用*(a+i)的方法引用数组元素。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
85(1分)、
0
可以在声明类型的同时定义变量。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
86(1分)、
0
地址指向变量单元。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
87(1分)、
0
指针已指向一个数组元素时,可以执行p+1。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
88(1分)、
0
存储单元的地址和存储单元的内容是相同的概念。

•        A、正确
•        B、错误
参考答案: 错误
展开解析
89(1分)、
0
可以引用结构体变量中成员的值,引用方式为结构体变量名.成员名

•        A、正确
•        B、错误
参考答案: 正确
展开解析
90(1分)、
0
一个变量的指针的含义包括两个方面,一是以存储单元编号表示的纯地址,一是它指向的存储单元的数据类型。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
91(1分)、
0
在调用一个函数的过程中允许直接调用该函数本身。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
92(1分)、
0
数组元素的作用与变量相当,一般来说,凡是变量可以出现的地方都可以用数组元素代替。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
93(1分)、
0
可以嵌套调用函数。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
94(1分)、
0
可以不指定类型名而直接定义结构体类型变量。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
95(1分)、
0
如果p是一个指向struct Student类型对象的指针变量,那么执行p++时,p的增量是结构体struct Student的长度。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
96(1分)、
0
指针已指向一个数组元素时,可以执行p++,++p。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
97(1分)、
0
结构体类型不占存储单元,但结构体类型变量占存储单元。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
98(1分)、
0
C语言的特点之一就在于允许函数的递归调用。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
99(1分)、
0
以变量名作为函数参数时,要求形参的类型是变量名;以数组名作为函数参数时,要求形参的类型是数组名或指针变量。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
100(1分)、
0
对结构体变量的成员可以像普通变量一样进行各种运算

•        A、正确
•        B、错误
参考答案: 正确
展开解析
•        <返回
•        2023年秋季作业
•         
单选题 资料来源:谋学网(www.mouxue.com)
得分:0分
正确 错误 未批阅
单选题(80题 共80分)
0 80 得分0分
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
资料来源:谋学网(www.mouxue.com)(20题 共20分)
0 20 得分0分
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
已完成批阅重做
单选题   
1(1分)、
0
以下哪一个不是C语言中的数据类型(    )。

•        A、
集合型

•        B、
双精度型

•        C、
复数型

•        D、
布尔型

参考答案: A
展开解析
2(1分)、
0
以下叙述中,不正确的是(  )。

•        A、
在同一C程序文件中,不同函数中可以使用同名变量

•        B、
在main函数体内定义的变量是全局变量

•        C、
形参是局部变量,函数调用完成即失去意义

•        D、
若同一文件中全局变量和局部变量同名,则全局变量在局部变量作用范围内不起作用

参考答案: B
展开解析
3(1分)、
0
以下程序的输出结果是(  )。
#include <stdio.h>  
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

参考答案: C
展开解析
4(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
011

•        C、
211
•        D、
001

参考答案: B
展开解析
5(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);

•        A、
1 7 0

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 5 1

参考答案: A
展开解析
6(1分)、
0
C语言中while 和do-while 循环的主要区别是(  )。

•        A、
do-while 的循环体不能是复合语句

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

•        C、
do-while 允许从外部转到循环体内

•        D、
do-while的循环体至少无条件执行一次

参考答案: D
展开解析
7(1分)、
0
若有定义:double a=22;int i=0,k=18;,则不符合C语言规定的赋值语句是(  )

•        A、
a=a++,i++;

•        B、
i=(a+k)<=(i+k);

•        C、
i=A%11;

•        D、
i=!a;

参考答案: C
展开解析
8(1分)、
0
以下关于函数的叙述中正确的是(  )。

•        A、
C语言程序将从源程序中第一个函数开始执行

•        B、
可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行

•        C、
C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束

•        D、
main可作为用户标识符,用以定义任意一个函数

参考答案: C
展开解析
9(1分)、
0
若有说明:int a[10];,则对a数组元素的正确引用是(  )。

•        A、
a[10]

•        B、
a[3.5]

•        C、
a(5)

•        D、
a[10-10]

参考答案: D
展开解析
10(1分)、
0
以下不正确的叙述是(    )。

•        A、
一个#include命令只能指定一个被包含文件

•        B、
一个#include命令可以指定多个被包含文件

•        C、
在#include命令中,文件名可以用尖括号或双引号括起来

•        D、
一个C程序中,可以使用多个#include文件包含命令

参考答案: B
展开解析
11(1分)、
0
以下能对二维数组a 进行正确初始化的语句是(  )。

•        A、
int a[2][]={{1,0,1},{5,2,3}};

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

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

•        D、
int a[][3]={{1,0,1},{},{1,1}};

参考答案: B
展开解析
12(1分)、
0
有如下程序
int func(int a,int b)
  { return(a+b); }
main( )
  { int x=2,y=5,z=8,r;
    r=func(func(x,y),z);
    printf("%d\n",r);  }
该程序的输出结果是(  )。

•        A、
12

•        B、
13

•        C、
14

•        D、
15

参考答案: D
展开解析
13(1分)、
0
已知if (x>y||x<z&&y>z);z=x; x=y; y=z;int x=30,y=50,z=80;语句执行后变量x、y、z的值分别为:     。

•        A、
x=50, y=80, z=80

•        B、
x=50, y=30, z=30

•        C、
x=30, y=50, z=80

•        D、
x=80, y=30, z=50

参考答案: C
展开解析
14(1分)、
0
两次运行下面的程序,如果从键盘上分别输入1和10,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x++);
}

•        A、
1和2

•        B、
10和11

•        C、
1和10

•        D、
2和11

参考答案: D
展开解析
15(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        B、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        C、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: C
展开解析
16(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
34

•        B、
4

•        C、
35

•        D、
3

参考答案: B
展开解析
17(1分)、
0
在C语言程序中(    )。

•        A、
main函数必须放在程序最前头

•        B、
main函数必须放在程序最后

•        C、
main函数必须放在所有函数之前

•        D、
main函数可以放在程序任何允许放置函数的位置
参考答案: D
展开解析
18(1分)、
0
能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是        。

•        A、
(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)

•        B、
(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)

•        C、
(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)

•        D、
(x<=-10)||(x>=-5)||(x<=0)||(x>=100)

参考答案: B
展开解析
19(1分)、
0
若有说明:int a[3][4];则对a 数组元素的非法引用是(  )。

•        A、
a[0][2*1]

•        B、
a[1][3]

•        C、
a[4-2][0]

•        D、
a[0][4]

参考答案: D
展开解析
20(1分)、
0
当执行以下程序段时,程序的执行情况是(  )。

     x=-1;
     do { x=x*x;} while( !x);

•        A、
循环体将执行一次

•        B、
循环体将执行两次

•        C、
循环体将执行无限次

•        D、
系统将提示有语法错误

参考答案: A
展开解析
21(1分)、
0
已知 int x=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为:     。
         if (x>y||x<z&&y>z)
            z=x; x=y; y=z;

•        A、
x=50, y=80, z=80

•        B、
x=50, y=30, z=30

•        C、
x=30, y=50, z=80

•        D、
x=80, y=30, z=50

参考答案: A
展开解析
22(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 5 1

•        B、
1 7 0

•        C、
3 7 0

•        D、
5 5 0

参考答案: B
展开解析
23(1分)、
0
若主调用函数类型为double,被调用函数定义中没有进行函数类型说明,而return语句中的表达式类型为float型,则被调函数返回值的类型是(  )。

•        A、
int 型

•        B、
float 型

•        C、
double 型

•        D、
由系统当时的情况而定

参考答案: A
展开解析
24(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
211

•        C、
011

•        D、
001

参考答案: B
展开解析
25(1分)、
0
以下不能输出字符A的语句是()(注:字符A的ASCII码值为65,字符a的ASCII码值为97)

•        A、
printf(“%c\n”,’A’-32)

•        B、
printf(“%d\n”,’A’);

•        C、
printf(“%c\n”,65);

•        D、
printf(“%c\n”,’B’-1);

参考答案: B
展开解析
26(1分)、
0
以下C语言源程序的书写格式不正确的是(    )。

•        A、
正确的函数首部,其后必须加上分号

•        B、
分号是语句的一部分

•        C、
一行上可以书写多条语句

•        D、
一个语句可以写在多行之上

参考答案: A
展开解析
27(1分)、
0
以下哪一个不是C语言中的数据类型(    )。

•        A、
实型

•        B、
浮点型

•        C、
空类型

•        D、
关系型

参考答案: C
展开解析
28(1分)、
0
一个完整的C源程序是(  )。

•        A、
要由一个主函数或一个以上的非主函数构成

•        B、
由一个且仅由一个主函数和零个以上的非主函数构成

•        C、
要由一个主函数和一个以上的非主函数构成

•        D、
由一个且只有一个主函数或多个非主函数构成

参考答案: B
展开解析
29(1分)、
0
以下不能对二维数组a 进行正确初始化的语句是(  )。

•        A、
int a[2][3]={0};

•        B、
int a[][3]={{1,2},{0}};

•        C、
int a[2][3]={{1,2},{3,4},{5,6}}

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

参考答案: C
展开解析
30(1分)、
0
以下程序段:
int i,a=3,b=2;
i=(--a==b++)?--a:++b;
printf("i=%d a=%d b=%d",i,a,b);
输出结果是        。

•        A、
i=1 a=1 b=3

•        B、
i=3 a=2 b=3

•        C、
i=4 a=1 b=4

•        D、
i=4 a=2 b=4

参考答案: A
展开解析
31(1分)、
0
以下程序的输出结果是(  )。
#include <stdio.h>  
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

参考答案: C
展开解析
32(1分)、
0
以下对一维整型数组a 的正确说明是(  )。

•        A、
int a(10);

•        B、
int n=10,a[n];

•        C、
int n; scanf("%d",&n); int a[n];

•        D、
int a[3*5+2];

参考答案: D
展开解析
33(1分)、
0
两次运行下面的程序,如果从键盘上分别输入4和6,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x++);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
34(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        B、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        C、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: A
展开解析
35(1分)、
0
若程序中定义函数
float myadd(float a, float b)
{ return a+b;}
并将其放在调用语句之后,则在调用之前应对该函数进行说明。以下说明中错误的是(  )。

•        A、
float myadd( float a,b);

•        B、
float myadd(float b, float a);

•        C、
float myadd(float, float);

•        D、
float myadd(float a, float b);

参考答案: A
展开解析
36(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        B、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        C、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: D
展开解析
37(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
25

•        B、
20

•        C、
24
•        D、
30
参考答案: B
展开解析
38(1分)、
0
以下哪一个可以作为正确的变量名(    )。

•        A、
for

•        B、
$abc

•        C、
3*x

•        D、
_file

参考答案: D
展开解析
39(1分)、
0
写出下面程序的执行结果        。
main( )
{ int  x,y=1;
  if(y!=0)     x=5;
  printf(“%d\t”,x);
  if(y= =0)   x=3;
else  x=5;
printf(“%d\t\n”,x);
}

•        A、
1   3

•        B、
1   5

•        C、
5   3

•        D、
5   5

参考答案: D
展开解析
40(1分)、
0
有如下嵌套的if语句
if(a<b)
if(a<c)    k=a;
else      k=c;
if(b<c)    k=b;
else     k=c;
以下选项中与上述if语句等价的语句是        。

•        A、
k=(a<b)?a:b;k=(b<c)?b:c;

•        B、
k=(a<b)?((b<c)?a:b)((b>c)?b:c);

•        C、
k=(a<b)?((a<c)?a:c)((b<c)?b:c);

•        D、
k=(a<b)?a:b;k=(a<c)?a:c;

参考答案: C
展开解析
41(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
011

•        C、
211

•        D、
001

参考答案: C
展开解析
42(1分)、
0
在C语言中,数字018是一个(    )。

•        A、
十进制数

•        B、
八进制数

•        C、
十六进制数

•        D、
非法数

参考答案: D
展开解析
43(1分)、
0
在一个C程序中,(  )。

•        A、
main函数必须出现在所有函数之前

•        B、
main函数可以在任何地方出现

•        C、
main函数必须出现在所有函数之后

•        D、
main函数必须出现在固定位置

参考答案: B
展开解析
44(1分)、
0
在C语言中,引用数组元素时,其数组下标的数据类型允许是(  )。

•        A、
整型常量

•        B、
整型表达式

•        C、
整型常量、变量或表达式

•        D、
任何类型的表达式

参考答案: C
展开解析
45(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
30

•        B、
25

•        C、
24

•        D、
20

参考答案: D
展开解析
46(1分)、
0
若有定义:int a,b;,通过语句scanf(“%d#%d”,&a,&b);,能把整数3赋给变量a,5付给变量b的输入数据是( )。

•        A、
3  5

•        B、
3,5

•        C、
3#5

•        D、
35

参考答案: C
展开解析
47(1分)、
0
以下选项中与if(a==1)a=b;else a++;语句功能不同的switch语句是        。

•        A、
switch(a)
{  case1:a=b;  break;      
default:a++;


•        B、
switch(a==1)
{ case 0:a=b;  break;
case 1:a++;


•        C、
switch(a)
{ default:a++;break;
case1:a=b;


•        D、
switch(a==1)
{ case 1:a=b;break;
case 0:a++;


参考答案: B
展开解析
48(1分)、
0
若用数组名作为函数调用的实参,则传递给形参的是(  )。

•        A、
数组的首地址

•        B、
数组的第一个元素的值

•        C、
数组中全部元素的值

•        D、
数组元素的个数

参考答案: A
展开解析
49(1分)、
0
#include <stdio.h>
void  main()
{
int i,j,k;
for(i=1;i<10;i++)
for(j=0;j<10;j++)
for(k=0;k<10;k++)
if( (i*100+j*10+k)==((i*i*i)+(j*j*j)+(k*k*k)))
printf("%d%d%d ",i,j,k);
}
该程序可以输出所有的(  )。

•        A、
素数

•        B、
奇数

•        C、
偶数

•        D、
水仙花数

参考答案: D
展开解析
50(1分)、
0
若有定义:int a,b;,通过语句scanf(“%d;%d”,&a,&b);,能把整数3赋给变量a,5付给变量b的输入数据是( )。

•        A、
3  5

•        B、
3,5

•        C、
3;5

•        D、
35

参考答案: C
展开解析
51(1分)、
0
定义一个void型函数意味着调用该函数时,函数(  )。

•        A、
通过return返回一个用户所希望的函数值

•        B、
返回一个系统默认值

•        C、
没有返回值

•        D、
返回一个不确定的值

参考答案: C
展开解析
52(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
20

•        B、
24

•        C、
25

•        D、
30

参考答案: A
展开解析
53(1分)、
0
合法的数组说明语句是(  )。

•        A、
int a[ ]="string";

•        B、
int a[5]={0,1,2,3,4,5};

•        C、
char a ="string";

•        D、
int a[ ]={0,1,2,3,4,5};

参考答案: D
展开解析
54(1分)、
0
若有定义语句:int k1=10,k2=20;,执行表达式(k1=k1>k2)&&(k2=k2>k1)后,k1和k2的值分别为( )。

•        A、
0和1   

•        B、
0和20

•        C、
10和1

•        D、
10和20

参考答案: B
展开解析
55(1分)、
0
以下程序的输出结果是(  )。

#include <stdio.h>  
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

参考答案: C
展开解析
56(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
34
•        B、
4
•        C、
35
•        D、
3
参考答案: B
展开解析
57(1分)、
0
若在C语言中未说明函数的类型,则系统默认该函数的数据类型是(  )。

•        A、
float

•        B、
long

•        C、
int

•        D、
double

参考答案: C
展开解析
58(1分)、
0
以下关于函数的叙述中不正确的是(  )。

•        A、
C程序是函数的集合,包括标准库函数和用户自定义函数

•        B、
在C语言程序中,被调用的函数必须在main函数中定义

•        C、
在C语言程序中,函数的定义不能嵌套

•        D、
在C语言程序中,函数的调用可以嵌套

参考答案: B
展开解析
59(1分)、
0
若A是数值类型,则逻辑表达式(a==1)||(a!=1)的值是        。

•        A、
1
•        B、
0
•        C、
2
•        D、
不知道a的值,不能确定

参考答案: A
展开解析
60(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
35
•        B、
34
•        C、
4
•        D、
3
参考答案: C
展开解析
61(1分)、
0
已知 int x=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为:     。
         if (x>y||x<z&&y>z)
            z=x; x=y; y=z;

•        A、
x=50, y=80, z=80

•        B、
x=80, y=30, z=50

•        C、
x=30, y=50, z=80

•        D、
x=50, y=30, z=30

参考答案: D
展开解析
62(1分)、
0
若有定义:int x,y; char a,b,c; 并有以下输入数据(此处,<cr>代表换行符)
1,2<cr>
A,B,C<cr>
则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是( )。

•        A、
scanf("x=%d,y=%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        B、
scanf("%d,%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        C、
scanf("%d,%d,%c,%c,%c,%c,%c,%c",&x,&y,&a,&a,&b,&b,&c,&c);

•        D、
scanf("%d,%d,%c,%c,%c",&x,&y,&a,&b,&c);

参考答案: D
展开解析
63(1分)、
0
以下关于函数叙述中,错误的是(  )。

•        A、
函数未被调用时,系统将不为形参分配内存单元

•        B、
实参与形参的个数应相等,且实参与形参的类型必须对应一致

•        C、
当形参是变量时,实参可以是常量、变量或表达式

•        D、
形参可以是常量、变量或表达式

参考答案: D
展开解析
64(1分)、
0
有两个字符数组a,b,则以下正确的输入语句是(  )。

•        A、
gets(a,b);

•        B、
scanf("%s%s",a,b);

•        C、
scanf("%s%s",&a,&b);

•        D、
gets("a"),gets("b");

参考答案: B
展开解析
65(1分)、
0
若有说明:int a[3][4]={0};则下面正确的叙述是(  )。

•        A、
只有元素a[0][0]可得到初值0

•        B、
此说明语句不正确

•        C、
数组a 中各元素都可得到初值,但其值不一定为0

•        D、
数组a 中每个元素均可得到初值0

参考答案: D
展开解析
66(1分)、
0
如果一个函数位于C程序中定义的第一个函数,在该函数体内说明语句后的复合语句中定义了一个变量,则该变量(  )。

•        A、
为全局变量,在本程序文件范围内有效

•        B、
为局部变量,只在该函数内有效

•        C、
为局部变量,只在该复合语句中有效

•        D、
定义无效,为非法变量

参考答案: C
展开解析
67(1分)、
0
以下程序的运行结果是(  )。
#include <stdio.h>
void main()
{
int i=1,s=3;
do
{
s+=i++;
if (s%7==0)
continue;
else
++i;
} while (s<15);
printf("%d\n",i);

•        A、
7
•        B、
8
•        C、
9
•        D、
10
参考答案: B
展开解析
68(1分)、
0
以下程序运行的输出结果是        。
main()
{    int   p=30;
printf("%d\n",(p/32>0?p/10:p%3)); }

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: D
展开解析
69(1分)、
0
有以下程序
#include <stdio.h>
main()
{  int a;
    scanf("%d" ,&a);
    if(a++<9)  printf("%d\n",a);
    else    printf("%d\n",a);
}
程序运行时从键盘输入9<回车>,则输出的结果是        。

•        A、
10
•        B、
11
•        C、
9
•        D、
8
参考答案: A
展开解析
70(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 7 0

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 5 1

参考答案: A
展开解析
71(1分)、
0
两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x--);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
72(1分)、
0
若函数调用时参数为基本数据类型的变量,以下叙述正确的是(  )。

•        A、
实参与其对应的形参共占存储单元

•        B、
只有当实参与其对应的形参同名时才共占存储单元

•        C、
实参与对应的形参分别占用不同的存储单元

•        D、
实参将数据传递给形参后,立即释放原先占用的存储单元

参考答案: C
展开解析
73(1分)、
0
当执行以下程序段时,程序的执行情况是(  )。

     x=-1;
     do { x=x*x;} while( !x);

•        A、
循环体将执行一次

•        B、
循环体将执行两次

•        C、
循环体将执行无限次

•        D、
系统将提示有语法错误

参考答案: A
展开解析
74(1分)、
0
以下哪一个不是正确的C语言常量(    )。

•        A、
0x2ac

•        B、
3.25e-8

•        C、
800

•        D、
0486

参考答案: D
展开解析
75(1分)、
0
以下程序段:
int i,a=3,b=2;
i=(--a==b++)?--a:++b;
printf("i=%d a=%d b=%d",i,a,b);
输出结果是        。

•        A、
i=1 a=1 b=3

•        B、
i=3 a=2 b=3

•        C、
i=4 a=1 b=4

•        D、
i=4 a=2 b=4

参考答案: A
展开解析
76(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 5 1

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 7 0

参考答案: D
展开解析
77(1分)、
0
写出下面程序的执行结果        。
main( )
{ int  x,y=1;
  if(y!=0)     x=5;
  printf(“%d\t”,x);
  if(y= =0)   x=3;
else  x=5;
printf(“%d\t\n”,x);

•        A、
1   3

•        B、
1   5

•        C、
5   3

•        D、
5   5

参考答案: D
展开解析
78(1分)、
0
以下程序的运行结果是(  )。
#include <stdio.h>
main()
{
struct date
{ int year,month,day;
}today;
printf("%d\n",sizeof(today));
}

•        A、
6

•        B、
8

•        C、
10

•        D、
12

参考答案: D
展开解析
79(1分)、
0
能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是        。

•        A、
(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)

•        B、
(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)

•        C、
(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)

•        D、
(x<=-10)||(x>=-5)||(x<=0)||(x>=100)

参考答案: C
展开解析
80(1分)、
0
有如下嵌套的if语句
if(a<b)
if(a<c)    k=a;
else      k=c;
if(b<c)    k=b;
else     k=c;
以下选项中与上述if语句等价的语句是        。

•        A、
k=(a<b)?((a<c)?a:c)((b<c)?b:c);

•        B、
k=(a<b)?((b<c)?a:b)((b>c)?b:c);

•        C、
k=(a<b)?a:b;k=(b<c)?b:c;

•        D、
k=(a<b)?a:b;k=(a<c)?a:c;

参考答案: A
展开解析
资料来源:谋学网(www.mouxue.com)   
81(1分)、
0
以变量名作为函数参数时,传递的信息是变量的值;以数组名作为函数参数时,传递的信息是实参数组首元素的地址。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
82(1分)、
0
引用数组元素可以用下标法,也可以用指针法。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
83(1分)、
0
一个变量的指针的含义包括两个方面,一是以存储单元编号表示的纯地址,一是它指向的存储单元的数据类型。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
84(1分)、
0
以变量名作为函数参数时,不能改变实参变量的值;以数组名作为函数参数时,可以改变实参数组的值。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
85(1分)、
0
存储单元的地址和存储单元的内容是相同的概念。

•        A、正确
•        B、错误
参考答案: 错误
展开解析
86(1分)、
0
如p是指针变量,a为数组名,p=a,则可采用*(p+i)的方法引用数组元素。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
87(1分)、
0
指针已指向一个数组元素时,可以执行p--,--p。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
88(1分)、
0
指针类型的数据可以作为函数参数。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
89(1分)、
0
C语言中没有字符串类型,也没有字符串变量,字符串是存放在字符型数组中的。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
90(1分)、
0
计算机程序设计语言分为机器语言、汇编语言、高级语言和自然语言。

•        A、正确
•        B、错误
参考答案: 错误
展开解析
91(1分)、
0
(++p)->num的计算过程是先使p自加1,然后得到p指向的元素中的num成员值。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
92(1分)、
0
以变量名作为函数参数时,实参类型是变量名;以数组名作为函数参数时,实参类型是数组名。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
93(1分)、
0
(p++)->num的计算过程是先求得p->num的值,然后再使p自加1。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
94(1分)、
0
地址指向变量单元。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
95(1分)、
0
在调用一个函数的过程中允许间接调用该函数本身。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
96(1分)、
0
struct Person leader[3]={};中,{}内应填写初值列表。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
97(1分)、
0
不能嵌套定义函数。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
98(1分)、
0
只有同类型的结构体变量才能互相赋值。
•        A、正确
•        B、错误
参考答案: 正确
展开解析
99(1分)、
0
可以引用结构体变量成员的地址,也可以引用结构体变量的地址

•        A、正确
•        B、错误
参考答案: 正确
展开解析
100(1分)、
0
定义函数时,一个函数内不能再定义另一个函数。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
•        <返回
•        2023年秋季作业
•         
单选题 资料来源:谋学网(www.mouxue.com)
得分:0分
正确 错误 未批阅
单选题(80题 共80分)
0 80 得分0分
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
资料来源:谋学网(www.mouxue.com)(20题 共20分)
0 20 得分0分
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
已完成批阅重做
单选题   
1(1分)、
0
已知if (x>y||x<z&&y>z);z=x; x=y; y=z;int x=30,y=50,z=80;语句执行后变量x、y、z的值分别为:     。

•        A、
x=50, y=80, z=80

•        B、
x=50, y=30, z=30

•        C、
x=30, y=50, z=80

•        D、
x=80, y=30, z=50

参考答案: C
展开解析
2(1分)、
0
已知 int x=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为:     。
         if (x>y||x<z&&y>z)
            z=x; x=y; y=z;

•        A、
x=50, y=80, z=80

•        B、
x=50, y=30, z=30

•        C、
x=30, y=50, z=80

•        D、
x=80, y=30, z=50

参考答案: A
展开解析
3(1分)、
0
以下程序的运行结果是(  )。
#include <stdio.h>
main()
{
struct date
{ int year,month,day;
}today;
printf("%d\n",sizeof(today));
}

•        A、
6

•        B、
8

•        C、
10

•        D、
12

参考答案: D
展开解析
4(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
211

•        C、
011

•        D、
001

参考答案: B
展开解析
5(1分)、
0
有两个字符数组a,b,则以下正确的输入语句是(  )。

•        A、
gets(a,b);

•        B、
scanf("%s%s",a,b);

•        C、
scanf("%s%s",&a,&b);

•        D、
gets("a"),gets("b");

参考答案: B
展开解析
6(1分)、
0
若有说明:int a[3][4];则对a 数组元素的非法引用是(  )。

•        A、
a[0][2*1]

•        B、
a[1][3]

•        C、
a[4-2][0]

•        D、
a[0][4]

参考答案: D
展开解析
7(1分)、
0
若在C语言中未说明函数的类型,则系统默认该函数的数据类型是(  )。

•        A、
float

•        B、
long

•        C、
int

•        D、
double

参考答案: C
展开解析
8(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 5 1

•        B、
1 7 0

•        C、
3 7 0

•        D、
5 5 0

参考答案: B
展开解析
9(1分)、
0
定义一个void型函数意味着调用该函数时,函数(  )。

•        A、
通过return返回一个用户所希望的函数值

•        B、
返回一个系统默认值

•        C、
没有返回值

•        D、
返回一个不确定的值

参考答案: C
展开解析
10(1分)、
0
有以下程序
#include<stdio.h>
main()
{
int a=1,b=0;
if(--a)   b++;
else   if(a==0) b+=2;
else    b+=3;
printf(“%d\n”,b);
}
程序运行后的输出结果是(  )。

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: C
展开解析
11(1分)、
0
以下程序的输出结果是(  )。

#include <stdio.h>  
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

参考答案: C
展开解析
12(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
34
•        B、
4
•        C、
35
•        D、
3
参考答案: B
展开解析
13(1分)、
0
有如下程序
int func(int a,int b)
  { return(a+b); }
main( )
  { int x=2,y=5,z=8,r;
    r=func(func(x,y),z);
    printf("%d\n",r);  }
该程序的输出结果是(  )。

•        A、
12

•        B、
13

•        C、
14

•        D、
15

参考答案: D
展开解析
14(1分)、
0
以下程序段:
int i,a=3,b=2;
i=(--a==b++)?--a:++b;
printf("i=%d a=%d b=%d",i,a,b);
输出结果是        。

•        A、
i=1 a=1 b=3

•        B、
i=3 a=2 b=3

•        C、
i=4 a=1 b=4

•        D、
i=4 a=2 b=4

参考答案: A
展开解析
15(1分)、
0
写出下面程序的执行结果        。
main( )
{ int  x,y=1;
  if(y!=0)     x=5;
  printf(“%d\t”,x);
  if(y= =0)   x=3;
else  x=5;
printf(“%d\t\n”,x);

•        A、
1   3

•        B、
1   5

•        C、
5   3

•        D、
5   5

参考答案: D
展开解析
16(1分)、
0
#include <stdio.h>
void  main()
{
int i,j,k;
for(i=1;i<10;i++)
for(j=0;j<10;j++)
for(k=0;k<10;k++)
if( (i*100+j*10+k)==((i*i*i)+(j*j*j)+(k*k*k)))
printf("%d%d%d ",i,j,k);
}
该程序可以输出所有的(  )。

•        A、
素数

•        B、
奇数

•        C、
偶数

•        D、
水仙花数

参考答案: D
展开解析
17(1分)、
0
当执行以下程序段时,程序的执行情况是(  )。

     x=-1;
     do { x=x*x;} while( !x);

•        A、
循环体将执行一次

•        B、
循环体将执行两次

•        C、
循环体将执行无限次

•        D、
系统将提示有语法错误

参考答案: A
展开解析
18(1分)、
0
以下程序段:
int i,a=3,b=2;
i=(--a==b++)?--a:++b;
printf("i=%d a=%d b=%d",i,a,b);
输出结果是        。

•        A、
i=1 a=1 b=3

•        B、
i=3 a=2 b=3

•        C、
i=4 a=1 b=4

•        D、
i=4 a=2 b=4

参考答案: A
展开解析
19(1分)、
0
若有定义语句:int k1=10,k2=20;,执行表达式(k1=k1>k2)&&(k2=k2>k1)后,k1和k2的值分别为( )。

•        A、
0和1   

•        B、
0和20

•        C、
10和1

•        D、
10和20

参考答案: B
展开解析
20(1分)、
0
合法的数组说明语句是(  )。

•        A、
int a[ ]="string";

•        B、
int a[5]={0,1,2,3,4,5};

•        C、
char a ="string";

•        D、
int a[ ]={0,1,2,3,4,5};

参考答案: D
展开解析
21(1分)、
0
以下关于函数的叙述中不正确的是(  )。

•        A、
C程序是函数的集合,包括标准库函数和用户自定义函数

•        B、
在C语言程序中,被调用的函数必须在main函数中定义

•        C、
在C语言程序中,函数的定义不能嵌套

•        D、
在C语言程序中,函数的调用可以嵌套

参考答案: B
展开解析
22(1分)、
0
两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x--);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
23(1分)、
0
以下程序的运行结果是(  )。
#include <stdio.h>
void main()
{
int i=1,s=3;
do
{
s+=i++;
if (s%7==0)
continue;
else
++i;
} while (s<15);
printf("%d\n",i);

•        A、
7
•        B、
8
•        C、
9
•        D、
10
参考答案: B
展开解析
24(1分)、
0
以下不能对二维数组a 进行正确初始化的语句是(  )。

•        A、
int a[2][3]={0};

•        B、
int a[][3]={{1,2},{0}};

•        C、
int a[2][3]={{1,2},{3,4},{5,6}}

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

参考答案: C
展开解析
25(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        B、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        C、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: A
展开解析
26(1分)、
0
以下哪一个可以作为正确的变量名(    )。

•        A、
for

•        B、
$abc

•        C、
3*x

•        D、
_file

参考答案: D
展开解析
27(1分)、
0
在C语言程序中(    )。

•        A、
main函数必须放在程序最前头

•        B、
main函数必须放在程序最后

•        C、
main函数必须放在所有函数之前

•        D、
main函数可以放在程序任何允许放置函数的位置
参考答案: D
展开解析
28(1分)、
0
有如下嵌套的if语句
if(a<b)
if(a<c)    k=a;
else      k=c;
if(b<c)    k=b;
else     k=c;
以下选项中与上述if语句等价的语句是        。

•        A、
k=(a<b)?((a<c)?a:c)((b<c)?b:c);

•        B、
k=(a<b)?((b<c)?a:b)((b>c)?b:c);

•        C、
k=(a<b)?a:b;k=(b<c)?b:c;

•        D、
k=(a<b)?a:b;k=(a<c)?a:c;

参考答案: A
展开解析
29(1分)、
0
以下程序运行的输出结果是        。
main()
{    int   p=30;
printf("%d\n",(p/32>0?p/10:p%3)); }

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: D
展开解析
30(1分)、
0
若用数组名作为函数调用的实参,则传递给形参的是(  )。

•        A、
数组的首地址

•        B、
数组的第一个元素的值

•        C、
数组中全部元素的值

•        D、
数组元素的个数

参考答案: A
展开解析
31(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 7 0

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 5 1

参考答案: A
展开解析
32(1分)、
0
以下能对二维数组a 进行正确初始化的语句是(  )。

•        A、
int a[2][]={{1,0,1},{5,2,3}};

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

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

•        D、
int a[][3]={{1,0,1},{},{1,1}};

参考答案: B
展开解析
33(1分)、
0
如果一个函数位于C程序中定义的第一个函数,在该函数体内说明语句后的复合语句中定义了一个变量,则该变量(  )。

•        A、
为全局变量,在本程序文件范围内有效

•        B、
为局部变量,只在该函数内有效

•        C、
为局部变量,只在该复合语句中有效

•        D、
定义无效,为非法变量

参考答案: C
展开解析
34(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
30

•        B、
25

•        C、
24

•        D、
20

参考答案: D
展开解析
35(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        B、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        C、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: D
展开解析
36(1分)、
0
一个完整的C源程序是(  )。

•        A、
要由一个主函数或一个以上的非主函数构成

•        B、
由一个且仅由一个主函数和零个以上的非主函数构成

•        C、
要由一个主函数和一个以上的非主函数构成

•        D、
由一个且只有一个主函数或多个非主函数构成

参考答案: B
展开解析
37(1分)、
0
若有定义:int x,y; char a,b,c; 并有以下输入数据(此处,<cr>代表换行符)
1,2<cr>
A,B,C<cr>
则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是( )。

•        A、
scanf("x=%d,y=%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        B、
scanf("%d,%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        C、
scanf("%d,%d,%c,%c,%c,%c,%c,%c",&x,&y,&a,&a,&b,&b,&c,&c);

•        D、
scanf("%d,%d,%c,%c,%c",&x,&y,&a,&b,&c);

参考答案: D
展开解析
38(1分)、
0
在C语言中,数字018是一个(    )。

•        A、
十进制数

•        B、
八进制数

•        C、
十六进制数

•        D、
非法数

参考答案: D
展开解析
39(1分)、
0
以下哪一个不是C语言中的数据类型(    )。

•        A、
实型

•        B、
浮点型

•        C、
空类型

•        D、
关系型

参考答案: C
展开解析
40(1分)、
0
以下不正确的叙述是(    )。

•        A、
一个#include命令只能指定一个被包含文件

•        B、
一个#include命令可以指定多个被包含文件

•        C、
在#include命令中,文件名可以用尖括号或双引号括起来

•        D、
一个C程序中,可以使用多个#include文件包含命令

参考答案: B
展开解析
41(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
20

•        B、
24

•        C、
25

•        D、
30

参考答案: A
展开解析
42(1分)、
0
以下关于函数叙述中,错误的是(  )。

•        A、
函数未被调用时,系统将不为形参分配内存单元

•        B、
实参与形参的个数应相等,且实参与形参的类型必须对应一致

•        C、
当形参是变量时,实参可以是常量、变量或表达式

•        D、
形参可以是常量、变量或表达式

参考答案: D
展开解析
43(1分)、
0
若主调用函数类型为double,被调用函数定义中没有进行函数类型说明,而return语句中的表达式类型为float型,则被调函数返回值的类型是(  )。

•        A、
int 型

•        B、
float 型

•        C、
double 型

•        D、
由系统当时的情况而定

参考答案: A
展开解析
44(1分)、
0
以下选项中与if(a==1)a=b; else a++;语句功能不同的switch语句是        。

•        A、
switch(a)  {case 1:a=b;break;  default:a++; }

•        B、
switch(a==1)  {case 0:a=b;break;case 1:a++; }

•        C、
switch(a)  {default:a++;break;case 1:a=b;}

•        D、
switch(a==1)  {case 1:a=b;break; case 0:a++;}

参考答案: B
展开解析
45(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
35
•        B、
34
•        C、
4
•        D、
3
参考答案: C
展开解析
46(1分)、
0
若A是数值类型,则逻辑表达式(a==1)||(a!=1)的值是        。

•        A、
1
•        B、
0
•        C、
2
•        D、
不知道a的值,不能确定

参考答案: A
展开解析
47(1分)、
0
能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是        。

•        A、
(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)

•        B、
(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)

•        C、
(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)

•        D、
(x<=-10)||(x>=-5)||(x<=0)||(x>=100)

参考答案: B
展开解析
48(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
20

•        B、
24

•        C、
25

•        D、
30

参考答案: A
展开解析
49(1分)、
0
以下哪一个不是C语言中的数据类型(    )。

•        A、
集合型

•        B、
双精度型

•        C、
复数型

•        D、
布尔型

参考答案: A
展开解析
50(1分)、
0
以下C语言源程序的书写格式不正确的是(    )。

•        A、
正确的函数首部,其后必须加上分号

•        B、
分号是语句的一部分

•        C、
一行上可以书写多条语句

•        D、
一个语句可以写在多行之上

参考答案: A
展开解析
51(1分)、
0
以下程序的输出结果是(  )。
#include <stdio.h>  
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

参考答案: C
展开解析
52(1分)、
0
以下叙述中,不正确的是(  )。

•        A、
在同一C程序文件中,不同函数中可以使用同名变量

•        B、
在main函数体内定义的变量是全局变量

•        C、
形参是局部变量,函数调用完成即失去意义

•        D、
若同一文件中全局变量和局部变量同名,则全局变量在局部变量作用范围内不起作用

参考答案: B
展开解析
53(1分)、
0
以下关于函数的叙述中正确的是(  )。

•        A、
C语言程序将从源程序中第一个函数开始执行

•        B、
可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行

•        C、
C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束

•        D、
main可作为用户标识符,用以定义任意一个函数

参考答案: C
展开解析
54(1分)、
0
若程序中定义函数
float myadd(float a, float b)
{ return a+b;}
并将其放在调用语句之后,则在调用之前应对该函数进行说明。以下说明中错误的是(  )。

•        A、
float myadd( float a,b);

•        B、
float myadd(float b, float a);

•        C、
float myadd(float, float);

•        D、
float myadd(float a, float b);

参考答案: A
展开解析
55(1分)、
0
以下程序的输出结果是(  )。
#include <stdio.h>  
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

参考答案: C
展开解析
56(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        B、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        C、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: C
展开解析
57(1分)、
0
有以下程序
#include<stdio.h>
main()
{
int a=1,b=0;
if(--a)   b++;
else   if(a==0) b+=2;
else    b+=3;
printf(“%d\n”,b);
}
程序运行后的输出结果是        。

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: C
展开解析
58(1分)、
0
以下不能输出字符A的语句是()(注:字符A的ASCII码值为65,字符a的ASCII码值为97)

•        A、
printf(“%c\n”,’A’-32)

•        B、
printf(“%d\n”,’A’);

•        C、
printf(“%c\n”,65);

•        D、
printf(“%c\n”,’B’-1);

参考答案: B
展开解析
59(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
011

•        C、
211

•        D、
001

参考答案: C
展开解析
60(1分)、
0
若有说明:int a[10];,则对a数组元素的正确引用是(  )。

•        A、
a[10]

•        B、
a[3.5]

•        C、
a(5)

•        D、
a[10-10]

参考答案: D
展开解析
61(1分)、
0
struct student
   {long int num;
    char name[20];
    char sex;
    char addr[20];
   }______。
以下能够正确定义的是

•        A、
a={"Li Lin",10101,'M',"123 Beijing Road"};

•        B、
a={10101,"Li Lin","123 Beijing Road",'M'};

•        C、
a={10101,"Li Lin",'M',"123 Beijing Road"};

•        D、
a={"123 Beijing Road","Li Lin",'M',10101};

参考答案: C
展开解析
62(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
25

•        B、
20

•        C、
24
•        D、
30
参考答案: B
展开解析
63(1分)、
0
有如下嵌套的if语句
if(a<b)
if(a<c)    k=a;
else      k=c;
if(b<c)    k=b;
else     k=c;
以下选项中与上述if语句等价的语句是        。

•        A、
k=(a<b)?a:b;k=(b<c)?b:c;

•        B、
k=(a<b)?((b<c)?a:b)((b>c)?b:c);

•        C、
k=(a<b)?((a<c)?a:c)((b<c)?b:c);

•        D、
k=(a<b)?a:b;k=(a<c)?a:c;

参考答案: C
展开解析
64(1分)、
0
若有定义:double a=22;int i=0,k=18;,则不符合C语言规定的赋值语句是(  )

•        A、
a=a++,i++;

•        B、
i=(a+k)<=(i+k);

•        C、
i=A%11;

•        D、
i=!a;

参考答案: C
展开解析
65(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
011

•        C、
211
•        D、
001

参考答案: B
展开解析
66(1分)、
0
若函数调用时参数为基本数据类型的变量,以下叙述正确的是(  )。

•        A、
实参与其对应的形参共占存储单元

•        B、
只有当实参与其对应的形参同名时才共占存储单元

•        C、
实参与对应的形参分别占用不同的存储单元

•        D、
实参将数据传递给形参后,立即释放原先占用的存储单元

参考答案: C
展开解析
67(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);

•        A、
1 7 0

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 5 1

参考答案: A
展开解析
68(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
34

•        B、
4

•        C、
35

•        D、
3

参考答案: B
展开解析
69(1分)、
0
以下选项中与if(a==1)a=b;else a++;语句功能不同的switch语句是        。

•        A、
switch(a)
{  case1:a=b;  break;      
default:a++;


•        B、
switch(a==1)
{ case 0:a=b;  break;
case 1:a++;


•        C、
switch(a)
{ default:a++;break;
case1:a=b;


•        D、
switch(a==1)
{ case 1:a=b;break;
case 0:a++;


参考答案: B
展开解析
70(1分)、
0
两次运行下面的程序,如果从键盘上分别输入4和6,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x++);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
71(1分)、
0
C语言中while 和do-while 循环的主要区别是(  )。

•        A、
do-while 的循环体不能是复合语句

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

•        C、
do-while 允许从外部转到循环体内

•        D、
do-while的循环体至少无条件执行一次

参考答案: D
展开解析
72(1分)、
0
写出下面程序的执行结果        。
main( )
{ int  x,y=1;
  if(y!=0)     x=5;
  printf(“%d\t”,x);
  if(y= =0)   x=3;
else  x=5;
printf(“%d\t\n”,x);
}

•        A、
1   3

•        B、
1   5

•        C、
5   3

•        D、
5   5

参考答案: D
展开解析
73(1分)、
0
以下哪一个不是正确的C语言常量(    )。

•        A、
0x2ac

•        B、
3.25e-8

•        C、
800

•        D、
0486

参考答案: D
展开解析
74(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 5 1

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 7 0

参考答案: D
展开解析
75(1分)、
0
两次运行下面的程序,如果从键盘上分别输入1和10,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x++);
}

•        A、
1和2

•        B、
10和11

•        C、
1和10

•        D、
2和11

参考答案: D
展开解析
76(1分)、
0
若有定义:int a,b;,通过语句scanf(“%d#%d”,&a,&b);,能把整数3赋给变量a,5付给变量b的输入数据是( )。

•        A、
3  5

•        B、
3,5

•        C、
3#5

•        D、
35

参考答案: C
展开解析
77(1分)、
0
若有定义:int a,b;,通过语句scanf(“%d;%d”,&a,&b);,能把整数3赋给变量a,5付给变量b的输入数据是( )。

•        A、
3  5

•        B、
3,5

•        C、
3;5

•        D、
35

参考答案: C
展开解析
78(1分)、
0
能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是        。

•        A、
(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)

•        B、
(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)

•        C、
(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)

•        D、
(x<=-10)||(x>=-5)||(x<=0)||(x>=100)

参考答案: C
展开解析
79(1分)、
0
以下叙述正确的是()
•        A、
计算机不仅能执行机器语言程序,也可以直接执行其它高级语言编写的程序。

•        B、
汇编语言是一种面向机器的低级语言,所以计算机可以直接执行用汇编语言编写的源程序。

•        C、
高级语言是与自然语言或数学语言相近的计算机语言,用高级语言编写的源程序计算机都不能直接执行。

•        D、
用高级语言编写的源程序只能经过解释程序边解释边执行。
参考答案: C
展开解析
80(1分)、
0
若有说明:int a[3][4];则对a 数组元素的非法引用是(  )。

•        A、
a[0][2*1]

•        B、
a[1][3]

•        C、
a[4-2][0]

•        D、
a[0][4]

参考答案: D
展开解析
资料来源:谋学网(www.mouxue.com)   
81(1分)、
0
(p++)->num的计算过程是先求得p->num的值,然后再使p自加1。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
82(1分)、
0
指向整型数据的指针类型表示为“int *”,读作“指向int的指针”或简称“int指针”。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
83(1分)、
0
如a为数组名,则可采用*(a+i)的方法引用数组元素。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
84(1分)、
0
结构体数组的每一个数组元素都是一个结构体类型的数据。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
85(1分)、
0
定义函数时,一个函数内不能再定义另一个函数。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
86(1分)、
0
数组元素的指针就是数组元素的地址。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
87(1分)、
0
可以嵌套调用函数。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
88(1分)、
0
程序中不应出现无终止的递归调用,只应出现有限次数、有终止的递归调用。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
89(1分)、
0
数组元素的作用与变量相当,一般来说,凡是变量可以出现的地方都可以用数组元素代替。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
90(1分)、
0
可以在声明类型的同时定义变量。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
91(1分)、
0
struct Person leader[3]中leader是结构体数组名。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
92(1分)、
0
可以引用结构体变量中成员的值,引用方式为结构体变量名.成员名

•        A、正确
•        B、错误
参考答案: 正确
展开解析
93(1分)、
0
在调用一个函数的过程中允许直接调用该函数本身。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
94(1分)、
0
指向是通过地址来体现的。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
95(1分)、
0
引用数组元素可以用下标法,也可以用指针法。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
96(1分)、
0
指针类型的数据可以作为函数参数。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
97(1分)、
0
如p是指针变量,a为数组名,p=a,则可采用*(p+i)的方法引用数组元素。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
98(1分)、
0
计算机程序设计语言分为机器语言、汇编语言、高级语言和自然语言。

•        A、正确
•        B、错误
参考答案: 错误
展开解析
99(1分)、
0
以变量名作为函数参数时,不能改变实参变量的值;以数组名作为函数参数时,可以改变实参数组的值。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
100(1分)、
0
地址指向变量单元。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
•        <返回
•        2023年秋季作业
•         
单选题 资料来源:谋学网(www.mouxue.com)
得分:0分
正确 错误 未批阅
单选题(80题 共80分)
0 80 得分0分
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
资料来源:谋学网(www.mouxue.com)(20题 共20分)
0 20 得分0分
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
已完成批阅重做
单选题   
1(1分)、
0
以下哪一个不是C语言中的数据类型(    )。

•        A、
集合型

•        B、
双精度型

•        C、
复数型

•        D、
布尔型

参考答案: A
展开解析
2(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 5 1

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 7 0

参考答案: D
展开解析
3(1分)、
0
若有定义:int a,b;,通过语句scanf(“%d#%d”,&a,&b);,能把整数3赋给变量a,5付给变量b的输入数据是( )。

•        A、
3  5

•        B、
3,5

•        C、
3#5

•        D、
35

参考答案: C
展开解析
4(1分)、
0
有以下程序
#include <stdio.h>
main()
{  int a;
    scanf("%d" ,&a);
    if(a++<9)  printf("%d\n",a);
    else    printf("%d\n",a);
}
程序运行时从键盘输入9<回车>,则输出的结果是        。

•        A、
10
•        B、
11
•        C、
9
•        D、
8
参考答案: A
展开解析
5(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
011

•        C、
211
•        D、
001

参考答案: B
展开解析
6(1分)、
0
以下哪一个不是C语言中的数据类型(    )。

•        A、
实型

•        B、
浮点型

•        C、
空类型

•        D、
关系型

参考答案: C
展开解析
7(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
35
•        B、
34
•        C、
4
•        D、
3
参考答案: C
展开解析
8(1分)、
0
若函数调用时参数为基本数据类型的变量,以下叙述正确的是(  )。

•        A、
实参与其对应的形参共占存储单元

•        B、
只有当实参与其对应的形参同名时才共占存储单元

•        C、
实参与对应的形参分别占用不同的存储单元

•        D、
实参将数据传递给形参后,立即释放原先占用的存储单元

参考答案: C
展开解析
9(1分)、
0
以下C语言源程序的书写格式不正确的是(    )。

•        A、
正确的函数首部,其后必须加上分号

•        B、
分号是语句的一部分

•        C、
一行上可以书写多条语句

•        D、
一个语句可以写在多行之上

参考答案: A
展开解析
10(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 7 0

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 5 1

参考答案: A
展开解析
11(1分)、
0
若程序中定义函数
float myadd(float a, float b)
{ return a+b;}
并将其放在调用语句之后,则在调用之前应对该函数进行说明。以下说明中错误的是(  )。

•        A、
float myadd( float a,b);

•        B、
float myadd(float b, float a);

•        C、
float myadd(float, float);

•        D、
float myadd(float a, float b);

参考答案: A
展开解析
12(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
34

•        B、
4

•        C、
35

•        D、
3

参考答案: B
展开解析
13(1分)、
0
若有定义:int x,y; char a,b,c; 并有以下输入数据(此处,<cr>代表换行符)
1 2<cr>
A B C<cr>
则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是( )。

•        A、
scanf("x=%dy=%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        B、
scanf("%dy%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        C、
scanf("%d%d%c%c%c%c%c%c",&x,&y,&a,&a,&b,&b,&c,&c);

•        D、
scanf("%d%d%c%c%c",&x,&y,&a,&b,&c);

参考答案: D
展开解析
14(1分)、
0
以下程序的输出结果是(  )。
#include <stdio.h>  
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

参考答案: C
展开解析
15(1分)、
0
已知if (x>y||x<z&&y>z);z=x; x=y; y=z;int x=30,y=50,z=80;语句执行后变量x、y、z的值分别为:     。

•        A、
x=50, y=80, z=80

•        B、
x=50, y=30, z=30

•        C、
x=30, y=50, z=80

•        D、
x=80, y=30, z=50

参考答案: C
展开解析
16(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
211

•        C、
011

•        D、
001

参考答案: B
展开解析
17(1分)、
0
有如下嵌套的if语句
if(a<b)
if(a<c)    k=a;
else      k=c;
if(b<c)    k=b;
else     k=c;
以下选项中与上述if语句等价的语句是        。

•        A、
k=(a<b)?a:b;k=(b<c)?b:c;

•        B、
k=(a<b)?((b<c)?a:b)((b>c)?b:c);

•        C、
k=(a<b)?((a<c)?a:c)((b<c)?b:c);

•        D、
k=(a<b)?a:b;k=(a<c)?a:c;

参考答案: C
展开解析
18(1分)、
0
struct student
   {long int num;
    char name[20];
    char sex;
    char addr[20];
   }______。
以下能够正确定义的是

•        A、
a={"Li Lin",10101,'M',"123 Beijing Road"};

•        B、
a={10101,"Li Lin","123 Beijing Road",'M'};

•        C、
a={10101,"Li Lin",'M',"123 Beijing Road"};

•        D、
a={"123 Beijing Road","Li Lin",'M',10101};

参考答案: C
展开解析
19(1分)、
0
写出下面程序的执行结果        。
main( )
{ int  x,y=1;
  if(y!=0)     x=5;
  printf(“%d\t”,x);
  if(y= =0)   x=3;
else  x=5;
printf(“%d\t\n”,x);
}

•        A、
1   3

•        B、
1   5

•        C、
5   3

•        D、
5   5

参考答案: D
展开解析
20(1分)、
0
以下选项中与if(a==1)a=b; else a++;语句功能不同的switch语句是        。

•        A、
switch(a)  {case 1:a=b;break;  default:a++; }

•        B、
switch(a==1)  {case 0:a=b;break;case 1:a++; }

•        C、
switch(a)  {default:a++;break;case 1:a=b;}

•        D、
switch(a==1)  {case 1:a=b;break; case 0:a++;}

参考答案: B
展开解析
21(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
30

•        B、
25

•        C、
24

•        D、
20

参考答案: D
展开解析
22(1分)、
0
能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是        。

•        A、
(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)

•        B、
(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)

•        C、
(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)

•        D、
(x<=-10)||(x>=-5)||(x<=0)||(x>=100)

参考答案: C
展开解析
23(1分)、
0
两次运行下面的程序,如果从键盘上分别输入4和6,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x++);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
24(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        B、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        C、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: D
展开解析
25(1分)、
0
两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x--);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
26(1分)、
0
以下关于函数的叙述中不正确的是(  )。

•        A、
C程序是函数的集合,包括标准库函数和用户自定义函数

•        B、
在C语言程序中,被调用的函数必须在main函数中定义

•        C、
在C语言程序中,函数的定义不能嵌套

•        D、
在C语言程序中,函数的调用可以嵌套

参考答案: B
展开解析
27(1分)、
0
合法的数组说明语句是(  )。

•        A、
int a[ ]="string";

•        B、
int a[5]={0,1,2,3,4,5};

•        C、
char a ="string";

•        D、
int a[ ]={0,1,2,3,4,5};

参考答案: D
展开解析
28(1分)、
0
以下程序段:
int i,a=3,b=2;
i=(--a==b++)?--a:++b;
printf("i=%d a=%d b=%d",i,a,b);
输出结果是        。

•        A、
i=1 a=1 b=3

•        B、
i=3 a=2 b=3

•        C、
i=4 a=1 b=4

•        D、
i=4 a=2 b=4

参考答案: A
展开解析
29(1分)、
0
若有定义:int x,y; char a,b,c; 并有以下输入数据(此处,<cr>代表换行符)
1,2<cr>
A,B,C<cr>
则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是( )。

•        A、
scanf("x=%d,y=%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        B、
scanf("%d,%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        C、
scanf("%d,%d,%c,%c,%c,%c,%c,%c",&x,&y,&a,&a,&b,&b,&c,&c);

•        D、
scanf("%d,%d,%c,%c,%c",&x,&y,&a,&b,&c);

参考答案: D
展开解析
30(1分)、
0
以下程序运行的输出结果是        。
main()
{    int   p=30;
printf("%d\n",(p/32>0?p/10:p%3)); }

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: D
展开解析
31(1分)、
0
若有说明:int a[3][4];则对a 数组元素的非法引用是(  )。

•        A、
a[0][2*1]

•        B、
a[1][3]

•        C、
a[4-2][0]

•        D、
a[0][4]

参考答案: D
展开解析
32(1分)、
0
若有定义:int a,b;,通过语句scanf(“%d;%d”,&a,&b);,能把整数3赋给变量a,5付给变量b的输入数据是( )。

•        A、
3  5

•        B、
3,5

•        C、
3;5

•        D、
35

参考答案: C
展开解析
33(1分)、
0
若在C语言中未说明函数的类型,则系统默认该函数的数据类型是(  )。

•        A、
float

•        B、
long

•        C、
int

•        D、
double

参考答案: C
展开解析
34(1分)、
0
若A是数值类型,则逻辑表达式(a==1)||(a!=1)的值是        。

•        A、
1
•        B、
0
•        C、
2
•        D、
不知道a的值,不能确定

参考答案: A
展开解析
35(1分)、
0
若有说明:int a[10];,则对a数组元素的正确引用是(  )。

•        A、
a[10]

•        B、
a[3.5]

•        C、
a(5)

•        D、
a[10-10]

参考答案: D
展开解析
36(1分)、
0
以下关于函数的叙述中正确的是(  )。

•        A、
C语言程序将从源程序中第一个函数开始执行

•        B、
可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行

•        C、
C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束

•        D、
main可作为用户标识符,用以定义任意一个函数

参考答案: C
展开解析
37(1分)、
0
当执行以下程序段时,程序的执行情况是(  )。

     x=-1;
     do { x=x*x;} while( !x);

•        A、
循环体将执行一次

•        B、
循环体将执行两次

•        C、
循环体将执行无限次

•        D、
系统将提示有语法错误

参考答案: A
展开解析
38(1分)、
0
以下叙述正确的是()
•        A、
计算机不仅能执行机器语言程序,也可以直接执行其它高级语言编写的程序。

•        B、
汇编语言是一种面向机器的低级语言,所以计算机可以直接执行用汇编语言编写的源程序。

•        C、
高级语言是与自然语言或数学语言相近的计算机语言,用高级语言编写的源程序计算机都不能直接执行。

•        D、
用高级语言编写的源程序只能经过解释程序边解释边执行。
参考答案: C
展开解析
39(1分)、
0
以下关于函数叙述中,错误的是(  )。

•        A、
函数未被调用时,系统将不为形参分配内存单元

•        B、
实参与形参的个数应相等,且实参与形参的类型必须对应一致

•        C、
当形参是变量时,实参可以是常量、变量或表达式

•        D、
形参可以是常量、变量或表达式

参考答案: D
展开解析
40(1分)、
0
以下选项中与if(a==1)a=b;else a++;语句功能不同的switch语句是        。

•        A、
switch(a)
{  case1:a=b;  break;      
default:a++;


•        B、
switch(a==1)
{ case 0:a=b;  break;
case 1:a++;


•        C、
switch(a)
{ default:a++;break;
case1:a=b;


•        D、
switch(a==1)
{ case 1:a=b;break;
case 0:a++;


参考答案: B
展开解析
41(1分)、
0
当执行以下程序段时,程序的执行情况是(  )。

     x=-1;
     do { x=x*x;} while( !x);

•        A、
循环体将执行一次

•        B、
循环体将执行两次

•        C、
循环体将执行无限次

•        D、
系统将提示有语法错误

参考答案: A
展开解析
42(1分)、
0
以下哪一个不是正确的C语言常量(    )。

•        A、
0x2ac

•        B、
3.25e-8

•        C、
800

•        D、
0486

参考答案: D
展开解析
43(1分)、
0
以下程序的运行结果是(  )。
#include <stdio.h>
void main()
{
int i=1,s=3;
do
{
s+=i++;
if (s%7==0)
continue;
else
++i;
} while (s<15);
printf("%d\n",i);

•        A、
7
•        B、
8
•        C、
9
•        D、
10
参考答案: B
展开解析
44(1分)、
0
以下不能输出字符A的语句是()(注:字符A的ASCII码值为65,字符a的ASCII码值为97)

•        A、
printf(“%c\n”,’A’-32)

•        B、
printf(“%d\n”,’A’);

•        C、
printf(“%c\n”,65);

•        D、
printf(“%c\n”,’B’-1);

参考答案: B
展开解析
45(1分)、
0
若有定义语句:int k1=10,k2=20;,执行表达式(k1=k1>k2)&&(k2=k2>k1)后,k1和k2的值分别为( )。

•        A、
0和1   

•        B、
0和20

•        C、
10和1

•        D、
10和20

参考答案: B
展开解析
46(1分)、
0
两次运行下面的程序,如果从键盘上分别输入1和10,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x++);
}

•        A、
1和2

•        B、
10和11

•        C、
1和10

•        D、
2和11

参考答案: D
展开解析
47(1分)、
0
以下能对二维数组a 进行正确初始化的语句是(  )。

•        A、
int a[2][]={{1,0,1},{5,2,3}};

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

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

•        D、
int a[][3]={{1,0,1},{},{1,1}};

参考答案: B
展开解析
48(1分)、
0
写出下面程序的执行结果        。
main( )
{ int  x,y=1;
  if(y!=0)     x=5;
  printf(“%d\t”,x);
  if(y= =0)   x=3;
else  x=5;
printf(“%d\t\n”,x);

•        A、
1   3

•        B、
1   5

•        C、
5   3

•        D、
5   5

参考答案: D
展开解析
49(1分)、
0
C语言中while 和do-while 循环的主要区别是(  )。

•        A、
do-while 的循环体不能是复合语句

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

•        C、
do-while 允许从外部转到循环体内

•        D、
do-while的循环体至少无条件执行一次

参考答案: D
展开解析
50(1分)、
0
若用数组名作为函数调用的实参,则传递给形参的是(  )。

•        A、
数组的首地址

•        B、
数组的第一个元素的值

•        C、
数组中全部元素的值

•        D、
数组元素的个数

参考答案: A
展开解析
51(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);

•        A、
1 7 0

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 5 1

参考答案: A
展开解析
52(1分)、
0
以下叙述中,不正确的是(  )。

•        A、
在同一C程序文件中,不同函数中可以使用同名变量

•        B、
在main函数体内定义的变量是全局变量

•        C、
形参是局部变量,函数调用完成即失去意义

•        D、
若同一文件中全局变量和局部变量同名,则全局变量在局部变量作用范围内不起作用

参考答案: B
展开解析
53(1分)、
0
有如下程序
int func(int a,int b)
  { return(a+b); }
main( )
  { int x=2,y=5,z=8,r;
    r=func(func(x,y),z);
    printf("%d\n",r);  }
该程序的输出结果是(  )。

•        A、
12

•        B、
13

•        C、
14

•        D、
15

参考答案: D
展开解析
54(1分)、
0
在C语言中,数字018是一个(    )。

•        A、
十进制数

•        B、
八进制数

•        C、
十六进制数

•        D、
非法数

参考答案: D
展开解析
55(1分)、
0
若有说明:int a[3][4]={0};则下面正确的叙述是(  )。

•        A、
只有元素a[0][0]可得到初值0

•        B、
此说明语句不正确

•        C、
数组a 中各元素都可得到初值,但其值不一定为0

•        D、
数组a 中每个元素均可得到初值0

参考答案: D
展开解析
56(1分)、
0
两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x--);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
57(1分)、
0
已知 int x=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为:     。
         if (x>y||x<z&&y>z)
            z=x; x=y; y=z;

•        A、
x=50, y=80, z=80

•        B、
x=80, y=30, z=50

•        C、
x=30, y=50, z=80

•        D、
x=50, y=30, z=30

参考答案: D
展开解析
58(1分)、
0
有以下程序
#include<stdio.h>
main()
{
int a=1,b=0;
if(--a)   b++;
else   if(a==0) b+=2;
else    b+=3;
printf(“%d\n”,b);
}
程序运行后的输出结果是        。

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: C
展开解析
59(1分)、
0
以下不正确的叙述是(    )。

•        A、
一个#include命令只能指定一个被包含文件

•        B、
一个#include命令可以指定多个被包含文件

•        C、
在#include命令中,文件名可以用尖括号或双引号括起来

•        D、
一个C程序中,可以使用多个#include文件包含命令

参考答案: B
展开解析
60(1分)、
0
以下不正确的概念是(    )。

•        A、
一个C程序必须包含一个main函数

•        B、
一个C程序可以只有一个语句

•        C、
一个C程序可以由一个或多个函数组成

•        D、
一个C语言函数可以没有任何可执行语句

参考答案: B
展开解析
61(1分)、
0
有以下程序
#include<stdio.h>
main()
{
int a=1,b=0;
if(--a)   b++;
else   if(a==0) b+=2;
else    b+=3;
printf(“%d\n”,b);
}
程序运行后的输出结果是(  )。

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: C
展开解析
62(1分)、
0
已知 int x=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为:     。
         if (x>y||x<z&&y>z)
            z=x; x=y; y=z;

•        A、
x=50, y=80, z=80

•        B、
x=50, y=30, z=30

•        C、
x=30, y=50, z=80

•        D、
x=80, y=30, z=50

参考答案: A
展开解析
63(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
011

•        C、
211

•        D、
001

参考答案: C
展开解析
64(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        B、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        C、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: C
展开解析
65(1分)、
0
有如下嵌套的if语句
if(a<b)
if(a<c)    k=a;
else      k=c;
if(b<c)    k=b;
else     k=c;
以下选项中与上述if语句等价的语句是        。

•        A、
k=(a<b)?((a<c)?a:c)((b<c)?b:c);

•        B、
k=(a<b)?((b<c)?a:b)((b>c)?b:c);

•        C、
k=(a<b)?a:b;k=(b<c)?b:c;

•        D、
k=(a<b)?a:b;k=(a<c)?a:c;

参考答案: A
展开解析
66(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 5 1

•        B、
1 7 0

•        C、
3 7 0

•        D、
5 5 0

参考答案: B
展开解析
67(1分)、
0
定义一个void型函数意味着调用该函数时,函数(  )。

•        A、
通过return返回一个用户所希望的函数值

•        B、
返回一个系统默认值

•        C、
没有返回值

•        D、
返回一个不确定的值

参考答案: C
展开解析
68(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        B、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        C、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: A
展开解析
69(1分)、
0
#include <stdio.h>
void  main()
{
int i,j,k;
for(i=1;i<10;i++)
for(j=0;j<10;j++)
for(k=0;k<10;k++)
if( (i*100+j*10+k)==((i*i*i)+(j*j*j)+(k*k*k)))
printf("%d%d%d ",i,j,k);
}
该程序可以输出所有的(  )。

•        A、
素数

•        B、
奇数

•        C、
偶数

•        D、
水仙花数

参考答案: D
展开解析
70(1分)、
0
若有定义:double a=22;int i=0,k=18;,则不符合C语言规定的赋值语句是(  )

•        A、
a=a++,i++;

•        B、
i=(a+k)<=(i+k);

•        C、
i=A%11;

•        D、
i=!a;

参考答案: C
展开解析
71(1分)、
0
能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是        。

•        A、
(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)

•        B、
(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)

•        C、
(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)

•        D、
(x<=-10)||(x>=-5)||(x<=0)||(x>=100)

参考答案: B
展开解析
72(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
34
•        B、
4
•        C、
35
•        D、
3
参考答案: B
展开解析
73(1分)、
0
以下程序的输出结果是(  )。

#include <stdio.h>  
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

参考答案: C
展开解析
74(1分)、
0
若主调用函数类型为double,被调用函数定义中没有进行函数类型说明,而return语句中的表达式类型为float型,则被调函数返回值的类型是(  )。

•        A、
int 型

•        B、
float 型

•        C、
double 型

•        D、
由系统当时的情况而定

参考答案: A
展开解析
75(1分)、
0
如果一个函数位于C程序中定义的第一个函数,在该函数体内说明语句后的复合语句中定义了一个变量,则该变量(  )。

•        A、
为全局变量,在本程序文件范围内有效

•        B、
为局部变量,只在该函数内有效

•        C、
为局部变量,只在该复合语句中有效

•        D、
定义无效,为非法变量

参考答案: C
展开解析
76(1分)、
0
以下哪一个可以作为正确的变量名(    )。

•        A、
for

•        B、
$abc

•        C、
3*x

•        D、
_file

参考答案: D
展开解析
77(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
20

•        B、
24

•        C、
25

•        D、
30

参考答案: A
展开解析
78(1分)、
0
以下对一维整型数组a 的正确说明是(  )。

•        A、
int a(10);

•        B、
int n=10,a[n];

•        C、
int n; scanf("%d",&n); int a[n];

•        D、
int a[3*5+2];

参考答案: D
展开解析
79(1分)、
0
在一个C程序中,(  )。

•        A、
main函数必须出现在所有函数之前

•        B、
main函数可以在任何地方出现

•        C、
main函数必须出现在所有函数之后

•        D、
main函数必须出现在固定位置

参考答案: B
展开解析
80(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
25

•        B、
20

•        C、
24
•        D、
30
参考答案: B
展开解析
资料来源:谋学网(www.mouxue.com)   
81(1分)、
0
结构体数组的每一个数组元素都是一个结构体类型的数据。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
82(1分)、
0
不能嵌套定义函数。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
83(1分)、
0
结构体类型不占存储单元,但结构体类型变量占存储单元。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
84(1分)、
0
存储单元的地址和存储单元的内容是相同的概念。

•        A、正确
•        B、错误
参考答案: 错误
展开解析
85(1分)、
0
以变量名作为函数参数时,不能改变实参变量的值;以数组名作为函数参数时,可以改变实参数组的值。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
86(1分)、
0
struct Person leader[3]中leader是结构体数组名。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
87(1分)、
0
在调用一个函数的过程中,可以又调用另一个函数。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
88(1分)、
0
结构体数组的每个元素都包含多个成员。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
89(1分)、
0
调用有参函数时,需要提供实参。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
90(1分)、
0
在调用一个函数的过程中允许直接调用该函数本身。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
91(1分)、
0
C语言允许把(*p).num用p_>num来代替( )。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
92(1分)、
0
struct Person leader[3]={};中,{}内应填写初值列表。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
93(1分)、
0
指针已指向一个数组元素时,可以执行p-1。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
94(1分)、
0
在调用一个函数的过程中允许间接调用该函数本身。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
95(1分)、
0
(p++)->num的计算过程是先求得p->num的值,然后再使p自加1。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
96(1分)、
0
以变量名作为函数参数时,传递的信息是变量的值;以数组名作为函数参数时,传递的信息是实参数组首元素的地址。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
97(1分)、
0
程序中不应出现无终止的递归调用,只应出现有限次数、有终止的递归调用。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
98(1分)、
0
地址指向变量单元。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
99(1分)、
0
以变量名作为函数参数时,实参类型是变量名;以数组名作为函数参数时,实参类型是数组名。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
100(1分)、
0
对结构体变量的成员可以像普通变量一样进行各种运算

•        A、正确
•        B、错误
参考答案: 正确
展开解析
•        <返回
•        2023年秋季作业
•         
单选题 资料来源:谋学网(www.mouxue.com)
得分:0分
正确 错误 未批阅
单选题(80题 共80分)
0 80 得分0分
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
资料来源:谋学网(www.mouxue.com)(20题 共20分)
0 20 得分0分
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
已完成批阅重做
单选题   
1(1分)、
0
若有说明:int a[3][4]={0};则下面正确的叙述是(  )。

•        A、
只有元素a[0][0]可得到初值0

•        B、
此说明语句不正确

•        C、
数组a 中各元素都可得到初值,但其值不一定为0

•        D、
数组a 中每个元素均可得到初值0

参考答案: D
展开解析
2(1分)、
0
能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是        。

•        A、
(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)

•        B、
(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)

•        C、
(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)

•        D、
(x<=-10)||(x>=-5)||(x<=0)||(x>=100)

参考答案: C
展开解析
3(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        B、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        C、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: A
展开解析
4(1分)、
0
以下哪一个可以作为正确的变量名(    )。

•        A、
for

•        B、
$abc

•        C、
3*x

•        D、
_file

参考答案: D
展开解析
5(1分)、
0
以下程序的输出结果是(  )。
#include <stdio.h>  
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

参考答案: C
展开解析
6(1分)、
0
在C语言中,数字018是一个(    )。

•        A、
十进制数

•        B、
八进制数

•        C、
十六进制数

•        D、
非法数

参考答案: D
展开解析
7(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
34

•        B、
4

•        C、
35

•        D、
3

参考答案: B
展开解析
8(1分)、
0
有以下程序
#include<stdio.h>
main()
{
int a=1,b=0;
if(--a)   b++;
else   if(a==0) b+=2;
else    b+=3;
printf(“%d\n”,b);
}
程序运行后的输出结果是        。

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: C
展开解析
9(1分)、
0
两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x--);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
10(1分)、
0
若主调用函数类型为double,被调用函数定义中没有进行函数类型说明,而return语句中的表达式类型为float型,则被调函数返回值的类型是(  )。

•        A、
int 型

•        B、
float 型

•        C、
double 型

•        D、
由系统当时的情况而定

参考答案: A
展开解析
11(1分)、
0
有如下程序
int func(int a,int b)
  { return(a+b); }
main( )
  { int x=2,y=5,z=8,r;
    r=func(func(x,y),z);
    printf("%d\n",r);  }
该程序的输出结果是(  )。

•        A、
12

•        B、
13

•        C、
14

•        D、
15

参考答案: D
展开解析
12(1分)、
0
以下能对二维数组a 进行正确初始化的语句是(  )。

•        A、
int a[2][]={{1,0,1},{5,2,3}};

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

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

•        D、
int a[][3]={{1,0,1},{},{1,1}};

参考答案: B
展开解析
13(1分)、
0
两次运行下面的程序,如果从键盘上分别输入1和10,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x++);
}

•        A、
1和2

•        B、
10和11

•        C、
1和10

•        D、
2和11

参考答案: D
展开解析
14(1分)、
0
在一个C程序中,(  )。

•        A、
main函数必须出现在所有函数之前

•        B、
main函数可以在任何地方出现

•        C、
main函数必须出现在所有函数之后

•        D、
main函数必须出现在固定位置

参考答案: B
展开解析
15(1分)、
0
以下程序段:
int i,a=3,b=2;
i=(--a==b++)?--a:++b;
printf("i=%d a=%d b=%d",i,a,b);
输出结果是        。

•        A、
i=1 a=1 b=3

•        B、
i=3 a=2 b=3

•        C、
i=4 a=1 b=4

•        D、
i=4 a=2 b=4

参考答案: A
展开解析
16(1分)、
0
定义一个void型函数意味着调用该函数时,函数(  )。

•        A、
通过return返回一个用户所希望的函数值

•        B、
返回一个系统默认值

•        C、
没有返回值

•        D、
返回一个不确定的值

参考答案: C
展开解析
17(1分)、
0
若有定义语句:int k1=10,k2=20;,执行表达式(k1=k1>k2)&&(k2=k2>k1)后,k1和k2的值分别为( )。

•        A、
0和1   

•        B、
0和20

•        C、
10和1

•        D、
10和20

参考答案: B
展开解析
18(1分)、
0
以下关于函数的叙述中不正确的是(  )。

•        A、
C程序是函数的集合,包括标准库函数和用户自定义函数

•        B、
在C语言程序中,被调用的函数必须在main函数中定义

•        C、
在C语言程序中,函数的定义不能嵌套

•        D、
在C语言程序中,函数的调用可以嵌套

参考答案: B
展开解析
19(1分)、
0
以下选项中与if(a==1)a=b; else a++;语句功能不同的switch语句是        。

•        A、
switch(a)  {case 1:a=b;break;  default:a++; }

•        B、
switch(a==1)  {case 0:a=b;break;case 1:a++; }

•        C、
switch(a)  {default:a++;break;case 1:a=b;}

•        D、
switch(a==1)  {case 1:a=b;break; case 0:a++;}

参考答案: B
展开解析
20(1分)、
0
已知 int x=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为:     。
         if (x>y||x<z&&y>z)
            z=x; x=y; y=z;

•        A、
x=50, y=80, z=80

•        B、
x=50, y=30, z=30

•        C、
x=30, y=50, z=80

•        D、
x=80, y=30, z=50

参考答案: A
展开解析
21(1分)、
0
如果一个函数位于C程序中定义的第一个函数,在该函数体内说明语句后的复合语句中定义了一个变量,则该变量(  )。

•        A、
为全局变量,在本程序文件范围内有效

•        B、
为局部变量,只在该函数内有效

•        C、
为局部变量,只在该复合语句中有效

•        D、
定义无效,为非法变量

参考答案: C
展开解析
22(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
20

•        B、
24

•        C、
25

•        D、
30

参考答案: A
展开解析
23(1分)、
0
已知if (x>y||x<z&&y>z);z=x; x=y; y=z;int x=30,y=50,z=80;语句执行后变量x、y、z的值分别为:     。

•        A、
x=50, y=80, z=80

•        B、
x=50, y=30, z=30

•        C、
x=30, y=50, z=80

•        D、
x=80, y=30, z=50

参考答案: C
展开解析
24(1分)、
0
若函数调用时参数为基本数据类型的变量,以下叙述正确的是(  )。

•        A、
实参与其对应的形参共占存储单元

•        B、
只有当实参与其对应的形参同名时才共占存储单元

•        C、
实参与对应的形参分别占用不同的存储单元

•        D、
实参将数据传递给形参后,立即释放原先占用的存储单元

参考答案: C
展开解析
25(1分)、
0
以下关于函数叙述中,错误的是(  )。

•        A、
函数未被调用时,系统将不为形参分配内存单元

•        B、
实参与形参的个数应相等,且实参与形参的类型必须对应一致

•        C、
当形参是变量时,实参可以是常量、变量或表达式

•        D、
形参可以是常量、变量或表达式

参考答案: D
展开解析
26(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
011

•        C、
211
•        D、
001

参考答案: B
展开解析
27(1分)、
0
以下程序的输出结果是(  )。

#include <stdio.h>  
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

参考答案: C
展开解析
28(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        B、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        C、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: D
展开解析
29(1分)、
0
能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是        。

•        A、
(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)

•        B、
(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)

•        C、
(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)

•        D、
(x<=-10)||(x>=-5)||(x<=0)||(x>=100)

参考答案: B
展开解析
30(1分)、
0
若A是数值类型,则逻辑表达式(a==1)||(a!=1)的值是        。

•        A、
1
•        B、
0
•        C、
2
•        D、
不知道a的值,不能确定

参考答案: A
展开解析
31(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
25

•        B、
20

•        C、
24
•        D、
30
参考答案: B
展开解析
32(1分)、
0
以下哪一个不是C语言中的数据类型(    )。

•        A、
实型

•        B、
浮点型

•        C、
空类型

•        D、
关系型

参考答案: C
展开解析
33(1分)、
0
以下叙述正确的是()
•        A、
计算机不仅能执行机器语言程序,也可以直接执行其它高级语言编写的程序。

•        B、
汇编语言是一种面向机器的低级语言,所以计算机可以直接执行用汇编语言编写的源程序。

•        C、
高级语言是与自然语言或数学语言相近的计算机语言,用高级语言编写的源程序计算机都不能直接执行。

•        D、
用高级语言编写的源程序只能经过解释程序边解释边执行。
参考答案: C
展开解析
34(1分)、
0
有以下程序
#include <stdio.h>
main()
{  int a;
    scanf("%d" ,&a);
    if(a++<9)  printf("%d\n",a);
    else    printf("%d\n",a);
}
程序运行时从键盘输入9<回车>,则输出的结果是        。

•        A、
10
•        B、
11
•        C、
9
•        D、
8
参考答案: A
展开解析
35(1分)、
0
有以下程序
#include<stdio.h>
main()
{
int a=1,b=0;
if(--a)   b++;
else   if(a==0) b+=2;
else    b+=3;
printf(“%d\n”,b);
}
程序运行后的输出结果是(  )。

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: C
展开解析
36(1分)、
0
C语言中while 和do-while 循环的主要区别是(  )。

•        A、
do-while 的循环体不能是复合语句

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

•        C、
do-while 允许从外部转到循环体内

•        D、
do-while的循环体至少无条件执行一次

参考答案: D
展开解析
37(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
34
•        B、
4
•        C、
35
•        D、
3
参考答案: B
展开解析
38(1分)、
0
一个完整的C源程序是(  )。

•        A、
要由一个主函数或一个以上的非主函数构成

•        B、
由一个且仅由一个主函数和零个以上的非主函数构成

•        C、
要由一个主函数和一个以上的非主函数构成

•        D、
由一个且只有一个主函数或多个非主函数构成

参考答案: B
展开解析
39(1分)、
0
有如下嵌套的if语句
if(a<b)
if(a<c)    k=a;
else      k=c;
if(b<c)    k=b;
else     k=c;
以下选项中与上述if语句等价的语句是        。

•        A、
k=(a<b)?a:b;k=(b<c)?b:c;

•        B、
k=(a<b)?((b<c)?a:b)((b>c)?b:c);

•        C、
k=(a<b)?((a<c)?a:c)((b<c)?b:c);

•        D、
k=(a<b)?a:b;k=(a<c)?a:c;

参考答案: C
展开解析
40(1分)、
0
以下选项中与if(a==1)a=b;else a++;语句功能不同的switch语句是        。

•        A、
switch(a)
{  case1:a=b;  break;      
default:a++;


•        B、
switch(a==1)
{ case 0:a=b;  break;
case 1:a++;


•        C、
switch(a)
{ default:a++;break;
case1:a=b;


•        D、
switch(a==1)
{ case 1:a=b;break;
case 0:a++;


参考答案: B
展开解析
41(1分)、
0
两次运行下面的程序,如果从键盘上分别输入4和6,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x++);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
42(1分)、
0
#include <stdio.h>
void  main()
{
int i,j,k;
for(i=1;i<10;i++)
for(j=0;j<10;j++)
for(k=0;k<10;k++)
if( (i*100+j*10+k)==((i*i*i)+(j*j*j)+(k*k*k)))
printf("%d%d%d ",i,j,k);
}
该程序可以输出所有的(  )。

•        A、
素数

•        B、
奇数

•        C、
偶数

•        D、
水仙花数

参考答案: D
展开解析
43(1分)、
0
写出下面程序的执行结果        。
main( )
{ int  x,y=1;
  if(y!=0)     x=5;
  printf(“%d\t”,x);
  if(y= =0)   x=3;
else  x=5;
printf(“%d\t\n”,x);
}

•        A、
1   3

•        B、
1   5

•        C、
5   3

•        D、
5   5

参考答案: D
展开解析
44(1分)、
0
以下不能对二维数组a 进行正确初始化的语句是(  )。

•        A、
int a[2][3]={0};

•        B、
int a[][3]={{1,2},{0}};

•        C、
int a[2][3]={{1,2},{3,4},{5,6}}

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

参考答案: C
展开解析
45(1分)、
0
以下程序的运行结果是(  )。
#include <stdio.h>
void main()
{
int i=1,s=3;
do
{
s+=i++;
if (s%7==0)
continue;
else
++i;
} while (s<15);
printf("%d\n",i);

•        A、
7
•        B、
8
•        C、
9
•        D、
10
参考答案: B
展开解析
46(1分)、
0
若有说明:int a[3][4];则对a 数组元素的非法引用是(  )。

•        A、
a[0][2*1]

•        B、
a[1][3]

•        C、
a[4-2][0]

•        D、
a[0][4]

参考答案: D
展开解析
47(1分)、
0
合法的数组说明语句是(  )。

•        A、
int a[ ]="string";

•        B、
int a[5]={0,1,2,3,4,5};

•        C、
char a ="string";

•        D、
int a[ ]={0,1,2,3,4,5};

参考答案: D
展开解析
48(1分)、
0
有如下嵌套的if语句
if(a<b)
if(a<c)    k=a;
else      k=c;
if(b<c)    k=b;
else     k=c;
以下选项中与上述if语句等价的语句是        。

•        A、
k=(a<b)?((a<c)?a:c)((b<c)?b:c);

•        B、
k=(a<b)?((b<c)?a:b)((b>c)?b:c);

•        C、
k=(a<b)?a:b;k=(b<c)?b:c;

•        D、
k=(a<b)?a:b;k=(a<c)?a:c;

参考答案: A
展开解析
49(1分)、
0
在C语言程序中(    )。

•        A、
main函数必须放在程序最前头

•        B、
main函数必须放在程序最后

•        C、
main函数必须放在所有函数之前

•        D、
main函数可以放在程序任何允许放置函数的位置
参考答案: D
展开解析
50(1分)、
0
已知 int x=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为:     。
         if (x>y||x<z&&y>z)
            z=x; x=y; y=z;

•        A、
x=50, y=80, z=80

•        B、
x=80, y=30, z=50

•        C、
x=30, y=50, z=80

•        D、
x=50, y=30, z=30

参考答案: D
展开解析
51(1分)、
0
两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x--);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
52(1分)、
0
以下程序段:
int i,a=3,b=2;
i=(--a==b++)?--a:++b;
printf("i=%d a=%d b=%d",i,a,b);
输出结果是        。

•        A、
i=1 a=1 b=3

•        B、
i=3 a=2 b=3

•        C、
i=4 a=1 b=4

•        D、
i=4 a=2 b=4

参考答案: A
展开解析
53(1分)、
0
在C语言中,引用数组元素时,其数组下标的数据类型允许是(  )。

•        A、
整型常量

•        B、
整型表达式

•        C、
整型常量、变量或表达式

•        D、
任何类型的表达式

参考答案: C
展开解析
54(1分)、
0
以下对一维整型数组a 的正确说明是(  )。

•        A、
int a(10);

•        B、
int n=10,a[n];

•        C、
int n; scanf("%d",&n); int a[n];

•        D、
int a[3*5+2];

参考答案: D
展开解析
55(1分)、
0
若有说明:int a[3][4];则对a 数组元素的非法引用是(  )。

•        A、
a[0][2*1]

•        B、
a[1][3]

•        C、
a[4-2][0]

•        D、
a[0][4]

参考答案: D
展开解析
56(1分)、
0
以下程序的运行结果是(  )。
#include <stdio.h>
main()
{
struct date
{ int year,month,day;
}today;
printf("%d\n",sizeof(today));
}

•        A、
6

•        B、
8

•        C、
10

•        D、
12

参考答案: D
展开解析
57(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);

•        A、
1 7 0

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 5 1

参考答案: A
展开解析
58(1分)、
0
若有定义:int a,b;,通过语句scanf(“%d#%d”,&a,&b);,能把整数3赋给变量a,5付给变量b的输入数据是( )。

•        A、
3  5

•        B、
3,5

•        C、
3#5

•        D、
35

参考答案: C
展开解析
59(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
011

•        C、
211

•        D、
001

参考答案: C
展开解析
60(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 5 1

•        B、
1 7 0

•        C、
3 7 0

•        D、
5 5 0

参考答案: B
展开解析
61(1分)、
0
若在C语言中未说明函数的类型,则系统默认该函数的数据类型是(  )。

•        A、
float

•        B、
long

•        C、
int

•        D、
double

参考答案: C
展开解析
62(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
20

•        B、
24

•        C、
25

•        D、
30

参考答案: A
展开解析
63(1分)、
0
若有定义:int x,y; char a,b,c; 并有以下输入数据(此处,<cr>代表换行符)
1,2<cr>
A,B,C<cr>
则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是( )。

•        A、
scanf("x=%d,y=%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        B、
scanf("%d,%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        C、
scanf("%d,%d,%c,%c,%c,%c,%c,%c",&x,&y,&a,&a,&b,&b,&c,&c);

•        D、
scanf("%d,%d,%c,%c,%c",&x,&y,&a,&b,&c);

参考答案: D
展开解析
64(1分)、
0
以下叙述中,不正确的是(  )。

•        A、
在同一C程序文件中,不同函数中可以使用同名变量

•        B、
在main函数体内定义的变量是全局变量

•        C、
形参是局部变量,函数调用完成即失去意义

•        D、
若同一文件中全局变量和局部变量同名,则全局变量在局部变量作用范围内不起作用

参考答案: B
展开解析
65(1分)、
0
若用数组名作为函数调用的实参,则传递给形参的是(  )。

•        A、
数组的首地址

•        B、
数组的第一个元素的值

•        C、
数组中全部元素的值

•        D、
数组元素的个数

参考答案: A
展开解析
66(1分)、
0
以下程序运行的输出结果是        。
main()
{    int   p=30;
printf("%d\n",(p/32>0?p/10:p%3)); }

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: D
展开解析
67(1分)、
0
以下不正确的概念是(    )。

•        A、
一个C程序必须包含一个main函数

•        B、
一个C程序可以只有一个语句

•        C、
一个C程序可以由一个或多个函数组成

•        D、
一个C语言函数可以没有任何可执行语句

参考答案: B
展开解析
68(1分)、
0
若程序中定义函数
float myadd(float a, float b)
{ return a+b;}
并将其放在调用语句之后,则在调用之前应对该函数进行说明。以下说明中错误的是(  )。

•        A、
float myadd( float a,b);

•        B、
float myadd(float b, float a);

•        C、
float myadd(float, float);

•        D、
float myadd(float a, float b);

参考答案: A
展开解析
69(1分)、
0
若有定义:double a=22;int i=0,k=18;,则不符合C语言规定的赋值语句是(  )

•        A、
a=a++,i++;

•        B、
i=(a+k)<=(i+k);

•        C、
i=A%11;

•        D、
i=!a;

参考答案: C
展开解析
70(1分)、
0
当执行以下程序段时,程序的执行情况是(  )。

     x=-1;
     do { x=x*x;} while( !x);

•        A、
循环体将执行一次

•        B、
循环体将执行两次

•        C、
循环体将执行无限次

•        D、
系统将提示有语法错误

参考答案: A
展开解析
71(1分)、
0
有两个字符数组a,b,则以下正确的输入语句是(  )。

•        A、
gets(a,b);

•        B、
scanf("%s%s",a,b);

•        C、
scanf("%s%s",&a,&b);

•        D、
gets("a"),gets("b");

参考答案: B
展开解析
72(1分)、
0
写出下面程序的执行结果        。
main( )
{ int  x,y=1;
  if(y!=0)     x=5;
  printf(“%d\t”,x);
  if(y= =0)   x=3;
else  x=5;
printf(“%d\t\n”,x);

•        A、
1   3

•        B、
1   5

•        C、
5   3

•        D、
5   5

参考答案: D
展开解析
73(1分)、
0
以下不能输出字符A的语句是()(注:字符A的ASCII码值为65,字符a的ASCII码值为97)

•        A、
printf(“%c\n”,’A’-32)

•        B、
printf(“%d\n”,’A’);

•        C、
printf(“%c\n”,65);

•        D、
printf(“%c\n”,’B’-1);

参考答案: B
展开解析
74(1分)、
0
struct student
   {long int num;
    char name[20];
    char sex;
    char addr[20];
   }______。
以下能够正确定义的是

•        A、
a={"Li Lin",10101,'M',"123 Beijing Road"};

•        B、
a={10101,"Li Lin","123 Beijing Road",'M'};

•        C、
a={10101,"Li Lin",'M',"123 Beijing Road"};

•        D、
a={"123 Beijing Road","Li Lin",'M',10101};

参考答案: C
展开解析
75(1分)、
0
若有定义:int x,y; char a,b,c; 并有以下输入数据(此处,<cr>代表换行符)
1 2<cr>
A B C<cr>
则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是( )。

•        A、
scanf("x=%dy=%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        B、
scanf("%dy%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        C、
scanf("%d%d%c%c%c%c%c%c",&x,&y,&a,&a,&b,&b,&c,&c);

•        D、
scanf("%d%d%c%c%c",&x,&y,&a,&b,&c);

参考答案: D
展开解析
76(1分)、
0
以下C语言源程序的书写格式不正确的是(    )。

•        A、
正确的函数首部,其后必须加上分号

•        B、
分号是语句的一部分

•        C、
一行上可以书写多条语句

•        D、
一个语句可以写在多行之上

参考答案: A
展开解析
77(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 7 0

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 5 1

参考答案: A
展开解析
78(1分)、
0
以下哪一个不是正确的C语言常量(    )。

•        A、
0x2ac

•        B、
3.25e-8

•        C、
800

•        D、
0486

参考答案: D
展开解析
79(1分)、
0
若有说明:int a[10];,则对a数组元素的正确引用是(  )。

•        A、
a[10]

•        B、
a[3.5]

•        C、
a(5)

•        D、
a[10-10]

参考答案: D
展开解析
80(1分)、
0
若有定义:int a,b;,通过语句scanf(“%d;%d”,&a,&b);,能把整数3赋给变量a,5付给变量b的输入数据是( )。

•        A、
3  5

•        B、
3,5

•        C、
3;5

•        D、
35

参考答案: C
展开解析
资料来源:谋学网(www.mouxue.com)   
81(1分)、
0
以变量名作为函数参数时,传递的信息是变量的值;以数组名作为函数参数时,传递的信息是实参数组首元素的地址。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
82(1分)、
0
不能嵌套定义函数。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
83(1分)、
0
若有int a[10]; p=&a; 则p+1的值是数组a第1个元素的地址。

•        A、正确
•        B、错误
参考答案: 错误
展开解析
84(1分)、
0
指针已指向一个数组元素时,可以执行p+1。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
85(1分)、
0
实参数组名代表一个固定的地址,或者说是指针常量,但形参数组名并不是一个固定的地址,而是按指针变量处理。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
86(1分)、
0
C语言的函数定义是相互平行、独立的。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
87(1分)、
0
以变量名作为函数参数时,要求形参的类型是变量名;以数组名作为函数参数时,要求形参的类型是数组名或指针变量。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
88(1分)、
0
如果p是一个指向struct Student类型对象的指针变量,那么执行p++时,p的增量是结构体struct Student的长度。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
89(1分)、
0
可以先声明结构体类型,再定义该类型的变量。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
90(1分)、
0
结构体类型不占存储单元,但结构体类型变量占存储单元。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
91(1分)、
0
指向整型数据的指针类型表示为“int *”,读作“指向int的指针”或简称“int指针”。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
92(1分)、
0
指针变量可指向结构体数组中的元素。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
93(1分)、
0
C语言允许把(*p).num用p_>num来代替( )。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
94(1分)、
0
引用数组元素可以用下标法,也可以用指针法。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
95(1分)、
0
可以引用结构体变量中成员的值,引用方式为结构体变量名.成员名

•        A、正确
•        B、错误
参考答案: 正确
展开解析
96(1分)、
0
数组元素的作用与变量相当,一般来说,凡是变量可以出现的地方都可以用数组元素代替。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
97(1分)、
0
数组元素的指针就是数组元素的地址。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
98(1分)、
0
C语言的特点之一就在于允许函数的递归调用。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
99(1分)、
0
数组只能存放同一类型的数据。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
100(1分)、
0
在调用一个函数的过程中允许直接调用该函数本身。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
•        <返回
•        2023年秋季作业
•         
单选题 资料来源:谋学网(www.mouxue.com)
得分:0分
正确 错误 未批阅
单选题(80题 共80分)
0 80 得分0分
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
资料来源:谋学网(www.mouxue.com)(20题 共20分)
0 20 得分0分
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
已完成批阅重做
单选题   
1(1分)、
0
若有说明:int a[3][4]={0};则下面正确的叙述是(  )。

•        A、
只有元素a[0][0]可得到初值0

•        B、
此说明语句不正确

•        C、
数组a 中各元素都可得到初值,但其值不一定为0

•        D、
数组a 中每个元素均可得到初值0

参考答案: D
展开解析
2(1分)、
0
能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是        。

•        A、
(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)

•        B、
(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)

•        C、
(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)

•        D、
(x<=-10)||(x>=-5)||(x<=0)||(x>=100)

参考答案: C
展开解析
3(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        B、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        C、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: A
展开解析
4(1分)、
0
以下哪一个可以作为正确的变量名(    )。

•        A、
for

•        B、
$abc

•        C、
3*x

•        D、
_file

参考答案: D
展开解析
5(1分)、
0
以下程序的输出结果是(  )。
#include <stdio.h>  
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

参考答案: C
展开解析
6(1分)、
0
在C语言中,数字018是一个(    )。

•        A、
十进制数

•        B、
八进制数

•        C、
十六进制数

•        D、
非法数

参考答案: D
展开解析
7(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
34

•        B、
4

•        C、
35

•        D、
3

参考答案: B
展开解析
8(1分)、
0
有以下程序
#include<stdio.h>
main()
{
int a=1,b=0;
if(--a)   b++;
else   if(a==0) b+=2;
else    b+=3;
printf(“%d\n”,b);
}
程序运行后的输出结果是        。

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: C
展开解析
9(1分)、
0
两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x--);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
10(1分)、
0
若主调用函数类型为double,被调用函数定义中没有进行函数类型说明,而return语句中的表达式类型为float型,则被调函数返回值的类型是(  )。

•        A、
int 型

•        B、
float 型

•        C、
double 型

•        D、
由系统当时的情况而定

参考答案: A
展开解析
11(1分)、
0
有如下程序
int func(int a,int b)
  { return(a+b); }
main( )
  { int x=2,y=5,z=8,r;
    r=func(func(x,y),z);
    printf("%d\n",r);  }
该程序的输出结果是(  )。

•        A、
12

•        B、
13

•        C、
14

•        D、
15

参考答案: D
展开解析
12(1分)、
0
以下能对二维数组a 进行正确初始化的语句是(  )。

•        A、
int a[2][]={{1,0,1},{5,2,3}};

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

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

•        D、
int a[][3]={{1,0,1},{},{1,1}};

参考答案: B
展开解析
13(1分)、
0
两次运行下面的程序,如果从键盘上分别输入1和10,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x++);
}

•        A、
1和2

•        B、
10和11

•        C、
1和10

•        D、
2和11

参考答案: D
展开解析
14(1分)、
0
在一个C程序中,(  )。

•        A、
main函数必须出现在所有函数之前

•        B、
main函数可以在任何地方出现

•        C、
main函数必须出现在所有函数之后

•        D、
main函数必须出现在固定位置

参考答案: B
展开解析
15(1分)、
0
以下程序段:
int i,a=3,b=2;
i=(--a==b++)?--a:++b;
printf("i=%d a=%d b=%d",i,a,b);
输出结果是        。

•        A、
i=1 a=1 b=3

•        B、
i=3 a=2 b=3

•        C、
i=4 a=1 b=4

•        D、
i=4 a=2 b=4

参考答案: A
展开解析
16(1分)、
0
定义一个void型函数意味着调用该函数时,函数(  )。

•        A、
通过return返回一个用户所希望的函数值

•        B、
返回一个系统默认值

•        C、
没有返回值

•        D、
返回一个不确定的值

参考答案: C
展开解析
17(1分)、
0
若有定义语句:int k1=10,k2=20;,执行表达式(k1=k1>k2)&&(k2=k2>k1)后,k1和k2的值分别为( )。

•        A、
0和1   

•        B、
0和20

•        C、
10和1

•        D、
10和20

参考答案: B
展开解析
18(1分)、
0
以下关于函数的叙述中不正确的是(  )。

•        A、
C程序是函数的集合,包括标准库函数和用户自定义函数

•        B、
在C语言程序中,被调用的函数必须在main函数中定义

•        C、
在C语言程序中,函数的定义不能嵌套

•        D、
在C语言程序中,函数的调用可以嵌套

参考答案: B
展开解析
19(1分)、
0
以下选项中与if(a==1)a=b; else a++;语句功能不同的switch语句是        。

•        A、
switch(a)  {case 1:a=b;break;  default:a++; }

•        B、
switch(a==1)  {case 0:a=b;break;case 1:a++; }

•        C、
switch(a)  {default:a++;break;case 1:a=b;}

•        D、
switch(a==1)  {case 1:a=b;break; case 0:a++;}

参考答案: B
展开解析
20(1分)、
0
已知 int x=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为:     。
         if (x>y||x<z&&y>z)
            z=x; x=y; y=z;

•        A、
x=50, y=80, z=80

•        B、
x=50, y=30, z=30

•        C、
x=30, y=50, z=80

•        D、
x=80, y=30, z=50

参考答案: A
展开解析
21(1分)、
0
如果一个函数位于C程序中定义的第一个函数,在该函数体内说明语句后的复合语句中定义了一个变量,则该变量(  )。

•        A、
为全局变量,在本程序文件范围内有效

•        B、
为局部变量,只在该函数内有效

•        C、
为局部变量,只在该复合语句中有效

•        D、
定义无效,为非法变量

参考答案: C
展开解析
22(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
20

•        B、
24

•        C、
25

•        D、
30

参考答案: A
展开解析
23(1分)、
0
已知if (x>y||x<z&&y>z);z=x; x=y; y=z;int x=30,y=50,z=80;语句执行后变量x、y、z的值分别为:     。

•        A、
x=50, y=80, z=80

•        B、
x=50, y=30, z=30

•        C、
x=30, y=50, z=80

•        D、
x=80, y=30, z=50

参考答案: C
展开解析
24(1分)、
0
若函数调用时参数为基本数据类型的变量,以下叙述正确的是(  )。

•        A、
实参与其对应的形参共占存储单元

•        B、
只有当实参与其对应的形参同名时才共占存储单元

•        C、
实参与对应的形参分别占用不同的存储单元

•        D、
实参将数据传递给形参后,立即释放原先占用的存储单元

参考答案: C
展开解析
25(1分)、
0
以下关于函数叙述中,错误的是(  )。

•        A、
函数未被调用时,系统将不为形参分配内存单元

•        B、
实参与形参的个数应相等,且实参与形参的类型必须对应一致

•        C、
当形参是变量时,实参可以是常量、变量或表达式

•        D、
形参可以是常量、变量或表达式

参考答案: D
展开解析
26(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
011

•        C、
211
•        D、
001

参考答案: B
展开解析
27(1分)、
0
以下程序的输出结果是(  )。

#include <stdio.h>  
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

参考答案: C
展开解析
28(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        B、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        C、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: D
展开解析
29(1分)、
0
能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是        。

•        A、
(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)

•        B、
(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)

•        C、
(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)

•        D、
(x<=-10)||(x>=-5)||(x<=0)||(x>=100)

参考答案: B
展开解析
30(1分)、
0
若A是数值类型,则逻辑表达式(a==1)||(a!=1)的值是        。

•        A、
1
•        B、
0
•        C、
2
•        D、
不知道a的值,不能确定

参考答案: A
展开解析
31(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
25

•        B、
20

•        C、
24
•        D、
30
参考答案: B
展开解析
32(1分)、
0
以下哪一个不是C语言中的数据类型(    )。

•        A、
实型

•        B、
浮点型

•        C、
空类型

•        D、
关系型

参考答案: C
展开解析
33(1分)、
0
以下叙述正确的是()
•        A、
计算机不仅能执行机器语言程序,也可以直接执行其它高级语言编写的程序。

•        B、
汇编语言是一种面向机器的低级语言,所以计算机可以直接执行用汇编语言编写的源程序。

•        C、
高级语言是与自然语言或数学语言相近的计算机语言,用高级语言编写的源程序计算机都不能直接执行。

•        D、
用高级语言编写的源程序只能经过解释程序边解释边执行。
参考答案: C
展开解析
34(1分)、
0
有以下程序
#include <stdio.h>
main()
{  int a;
    scanf("%d" ,&a);
    if(a++<9)  printf("%d\n",a);
    else    printf("%d\n",a);
}
程序运行时从键盘输入9<回车>,则输出的结果是        。

•        A、
10
•        B、
11
•        C、
9
•        D、
8
参考答案: A
展开解析
35(1分)、
0
有以下程序
#include<stdio.h>
main()
{
int a=1,b=0;
if(--a)   b++;
else   if(a==0) b+=2;
else    b+=3;
printf(“%d\n”,b);
}
程序运行后的输出结果是(  )。

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: C
展开解析
36(1分)、
0
C语言中while 和do-while 循环的主要区别是(  )。

•        A、
do-while 的循环体不能是复合语句

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

•        C、
do-while 允许从外部转到循环体内

•        D、
do-while的循环体至少无条件执行一次

参考答案: D
展开解析
37(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
34
•        B、
4
•        C、
35
•        D、
3
参考答案: B
展开解析
38(1分)、
0
一个完整的C源程序是(  )。

•        A、
要由一个主函数或一个以上的非主函数构成

•        B、
由一个且仅由一个主函数和零个以上的非主函数构成

•        C、
要由一个主函数和一个以上的非主函数构成

•        D、
由一个且只有一个主函数或多个非主函数构成

参考答案: B
展开解析
39(1分)、
0
有如下嵌套的if语句
if(a<b)
if(a<c)    k=a;
else      k=c;
if(b<c)    k=b;
else     k=c;
以下选项中与上述if语句等价的语句是        。

•        A、
k=(a<b)?a:b;k=(b<c)?b:c;

•        B、
k=(a<b)?((b<c)?a:b)((b>c)?b:c);

•        C、
k=(a<b)?((a<c)?a:c)((b<c)?b:c);

•        D、
k=(a<b)?a:b;k=(a<c)?a:c;

参考答案: C
展开解析
40(1分)、
0
以下选项中与if(a==1)a=b;else a++;语句功能不同的switch语句是        。

•        A、
switch(a)
{  case1:a=b;  break;      
default:a++;


•        B、
switch(a==1)
{ case 0:a=b;  break;
case 1:a++;


•        C、
switch(a)
{ default:a++;break;
case1:a=b;


•        D、
switch(a==1)
{ case 1:a=b;break;
case 0:a++;


参考答案: B
展开解析
41(1分)、
0
两次运行下面的程序,如果从键盘上分别输入4和6,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x++);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
42(1分)、
0
#include <stdio.h>
void  main()
{
int i,j,k;
for(i=1;i<10;i++)
for(j=0;j<10;j++)
for(k=0;k<10;k++)
if( (i*100+j*10+k)==((i*i*i)+(j*j*j)+(k*k*k)))
printf("%d%d%d ",i,j,k);
}
该程序可以输出所有的(  )。

•        A、
素数

•        B、
奇数

•        C、
偶数

•        D、
水仙花数

参考答案: D
展开解析
43(1分)、
0
写出下面程序的执行结果        。
main( )
{ int  x,y=1;
  if(y!=0)     x=5;
  printf(“%d\t”,x);
  if(y= =0)   x=3;
else  x=5;
printf(“%d\t\n”,x);
}

•        A、
1   3

•        B、
1   5

•        C、
5   3

•        D、
5   5

参考答案: D
展开解析
44(1分)、
0
以下不能对二维数组a 进行正确初始化的语句是(  )。

•        A、
int a[2][3]={0};

•        B、
int a[][3]={{1,2},{0}};

•        C、
int a[2][3]={{1,2},{3,4},{5,6}}

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

参考答案: C
展开解析
45(1分)、
0
以下程序的运行结果是(  )。
#include <stdio.h>
void main()
{
int i=1,s=3;
do
{
s+=i++;
if (s%7==0)
continue;
else
++i;
} while (s<15);
printf("%d\n",i);

•        A、
7
•        B、
8
•        C、
9
•        D、
10
参考答案: B
展开解析
46(1分)、
0
若有说明:int a[3][4];则对a 数组元素的非法引用是(  )。

•        A、
a[0][2*1]

•        B、
a[1][3]

•        C、
a[4-2][0]

•        D、
a[0][4]

参考答案: D
展开解析
47(1分)、
0
合法的数组说明语句是(  )。

•        A、
int a[ ]="string";

•        B、
int a[5]={0,1,2,3,4,5};

•        C、
char a ="string";

•        D、
int a[ ]={0,1,2,3,4,5};

参考答案: D
展开解析
48(1分)、
0
有如下嵌套的if语句
if(a<b)
if(a<c)    k=a;
else      k=c;
if(b<c)    k=b;
else     k=c;
以下选项中与上述if语句等价的语句是        。

•        A、
k=(a<b)?((a<c)?a:c)((b<c)?b:c);

•        B、
k=(a<b)?((b<c)?a:b)((b>c)?b:c);

•        C、
k=(a<b)?a:b;k=(b<c)?b:c;

•        D、
k=(a<b)?a:b;k=(a<c)?a:c;

参考答案: A
展开解析
49(1分)、
0
在C语言程序中(    )。

•        A、
main函数必须放在程序最前头

•        B、
main函数必须放在程序最后

•        C、
main函数必须放在所有函数之前

•        D、
main函数可以放在程序任何允许放置函数的位置
参考答案: D
展开解析
50(1分)、
0
已知 int x=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为:     。
         if (x>y||x<z&&y>z)
            z=x; x=y; y=z;

•        A、
x=50, y=80, z=80

•        B、
x=80, y=30, z=50

•        C、
x=30, y=50, z=80

•        D、
x=50, y=30, z=30

参考答案: D
展开解析
51(1分)、
0
两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x--);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
52(1分)、
0
以下程序段:
int i,a=3,b=2;
i=(--a==b++)?--a:++b;
printf("i=%d a=%d b=%d",i,a,b);
输出结果是        。

•        A、
i=1 a=1 b=3

•        B、
i=3 a=2 b=3

•        C、
i=4 a=1 b=4

•        D、
i=4 a=2 b=4

参考答案: A
展开解析
53(1分)、
0
在C语言中,引用数组元素时,其数组下标的数据类型允许是(  )。

•        A、
整型常量

•        B、
整型表达式

•        C、
整型常量、变量或表达式

•        D、
任何类型的表达式

参考答案: C
展开解析
54(1分)、
0
以下对一维整型数组a 的正确说明是(  )。

•        A、
int a(10);

•        B、
int n=10,a[n];

•        C、
int n; scanf("%d",&n); int a[n];

•        D、
int a[3*5+2];

参考答案: D
展开解析
55(1分)、
0
若有说明:int a[3][4];则对a 数组元素的非法引用是(  )。

•        A、
a[0][2*1]

•        B、
a[1][3]

•        C、
a[4-2][0]

•        D、
a[0][4]

参考答案: D
展开解析
56(1分)、
0
以下程序的运行结果是(  )。
#include <stdio.h>
main()
{
struct date
{ int year,month,day;
}today;
printf("%d\n",sizeof(today));
}

•        A、
6

•        B、
8

•        C、
10

•        D、
12

参考答案: D
展开解析
57(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);

•        A、
1 7 0

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 5 1

参考答案: A
展开解析
58(1分)、
0
若有定义:int a,b;,通过语句scanf(“%d#%d”,&a,&b);,能把整数3赋给变量a,5付给变量b的输入数据是( )。

•        A、
3  5

•        B、
3,5

•        C、
3#5

•        D、
35

参考答案: C
展开解析
59(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
011

•        C、
211

•        D、
001

参考答案: C
展开解析
60(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 5 1

•        B、
1 7 0

•        C、
3 7 0

•        D、
5 5 0

参考答案: B
展开解析
61(1分)、
0
若在C语言中未说明函数的类型,则系统默认该函数的数据类型是(  )。

•        A、
float

•        B、
long

•        C、
int

•        D、
double

参考答案: C
展开解析
62(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
20

•        B、
24

•        C、
25

•        D、
30

参考答案: A
展开解析
63(1分)、
0
若有定义:int x,y; char a,b,c; 并有以下输入数据(此处,<cr>代表换行符)
1,2<cr>
A,B,C<cr>
则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是( )。

•        A、
scanf("x=%d,y=%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        B、
scanf("%d,%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        C、
scanf("%d,%d,%c,%c,%c,%c,%c,%c",&x,&y,&a,&a,&b,&b,&c,&c);

•        D、
scanf("%d,%d,%c,%c,%c",&x,&y,&a,&b,&c);

参考答案: D
展开解析
64(1分)、
0
以下叙述中,不正确的是(  )。

•        A、
在同一C程序文件中,不同函数中可以使用同名变量

•        B、
在main函数体内定义的变量是全局变量

•        C、
形参是局部变量,函数调用完成即失去意义

•        D、
若同一文件中全局变量和局部变量同名,则全局变量在局部变量作用范围内不起作用

参考答案: B
展开解析
65(1分)、
0
若用数组名作为函数调用的实参,则传递给形参的是(  )。

•        A、
数组的首地址

•        B、
数组的第一个元素的值

•        C、
数组中全部元素的值

•        D、
数组元素的个数

参考答案: A
展开解析
66(1分)、
0
以下程序运行的输出结果是        。
main()
{    int   p=30;
printf("%d\n",(p/32>0?p/10:p%3)); }

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: D
展开解析
67(1分)、
0
以下不正确的概念是(    )。

•        A、
一个C程序必须包含一个main函数

•        B、
一个C程序可以只有一个语句

•        C、
一个C程序可以由一个或多个函数组成

•        D、
一个C语言函数可以没有任何可执行语句

参考答案: B
展开解析
68(1分)、
0
若程序中定义函数
float myadd(float a, float b)
{ return a+b;}
并将其放在调用语句之后,则在调用之前应对该函数进行说明。以下说明中错误的是(  )。

•        A、
float myadd( float a,b);

•        B、
float myadd(float b, float a);

•        C、
float myadd(float, float);

•        D、
float myadd(float a, float b);

参考答案: A
展开解析
69(1分)、
0
若有定义:double a=22;int i=0,k=18;,则不符合C语言规定的赋值语句是(  )

•        A、
a=a++,i++;

•        B、
i=(a+k)<=(i+k);

•        C、
i=A%11;

•        D、
i=!a;

参考答案: C
展开解析
70(1分)、
0
当执行以下程序段时,程序的执行情况是(  )。

     x=-1;
     do { x=x*x;} while( !x);

•        A、
循环体将执行一次

•        B、
循环体将执行两次

•        C、
循环体将执行无限次

•        D、
系统将提示有语法错误

参考答案: A
展开解析
71(1分)、
0
有两个字符数组a,b,则以下正确的输入语句是(  )。

•        A、
gets(a,b);

•        B、
scanf("%s%s",a,b);

•        C、
scanf("%s%s",&a,&b);

•        D、
gets("a"),gets("b");

参考答案: B
展开解析
72(1分)、
0
写出下面程序的执行结果        。
main( )
{ int  x,y=1;
  if(y!=0)     x=5;
  printf(“%d\t”,x);
  if(y= =0)   x=3;
else  x=5;
printf(“%d\t\n”,x);

•        A、
1   3

•        B、
1   5

•        C、
5   3

•        D、
5   5

参考答案: D
展开解析
73(1分)、
0
以下不能输出字符A的语句是()(注:字符A的ASCII码值为65,字符a的ASCII码值为97)

•        A、
printf(“%c\n”,’A’-32)

•        B、
printf(“%d\n”,’A’);

•        C、
printf(“%c\n”,65);

•        D、
printf(“%c\n”,’B’-1);

参考答案: B
展开解析
74(1分)、
0
struct student
   {long int num;
    char name[20];
    char sex;
    char addr[20];
   }______。
以下能够正确定义的是

•        A、
a={"Li Lin",10101,'M',"123 Beijing Road"};

•        B、
a={10101,"Li Lin","123 Beijing Road",'M'};

•        C、
a={10101,"Li Lin",'M',"123 Beijing Road"};

•        D、
a={"123 Beijing Road","Li Lin",'M',10101};

参考答案: C
展开解析
75(1分)、
0
若有定义:int x,y; char a,b,c; 并有以下输入数据(此处,<cr>代表换行符)
1 2<cr>
A B C<cr>
则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是( )。

•        A、
scanf("x=%dy=%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        B、
scanf("%dy%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        C、
scanf("%d%d%c%c%c%c%c%c",&x,&y,&a,&a,&b,&b,&c,&c);

•        D、
scanf("%d%d%c%c%c",&x,&y,&a,&b,&c);

参考答案: D
展开解析
76(1分)、
0
以下C语言源程序的书写格式不正确的是(    )。

•        A、
正确的函数首部,其后必须加上分号

•        B、
分号是语句的一部分

•        C、
一行上可以书写多条语句

•        D、
一个语句可以写在多行之上

参考答案: A
展开解析
77(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 7 0

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 5 1

参考答案: A
展开解析
78(1分)、
0
以下哪一个不是正确的C语言常量(    )。

•        A、
0x2ac

•        B、
3.25e-8

•        C、
800

•        D、
0486

参考答案: D
展开解析
79(1分)、
0
若有说明:int a[10];,则对a数组元素的正确引用是(  )。

•        A、
a[10]

•        B、
a[3.5]

•        C、
a(5)

•        D、
a[10-10]

参考答案: D
展开解析
80(1分)、
0
若有定义:int a,b;,通过语句scanf(“%d;%d”,&a,&b);,能把整数3赋给变量a,5付给变量b的输入数据是( )。

•        A、
3  5

•        B、
3,5

•        C、
3;5

•        D、
35

参考答案: C
展开解析
资料来源:谋学网(www.mouxue.com)   
81(1分)、
0
以变量名作为函数参数时,传递的信息是变量的值;以数组名作为函数参数时,传递的信息是实参数组首元素的地址。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
82(1分)、
0
不能嵌套定义函数。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
83(1分)、
0
若有int a[10]; p=&a; 则p+1的值是数组a第1个元素的地址。

•        A、正确
•        B、错误
参考答案: 错误
展开解析
84(1分)、
0
指针已指向一个数组元素时,可以执行p+1。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
85(1分)、
0
实参数组名代表一个固定的地址,或者说是指针常量,但形参数组名并不是一个固定的地址,而是按指针变量处理。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
86(1分)、
0
C语言的函数定义是相互平行、独立的。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
87(1分)、
0
以变量名作为函数参数时,要求形参的类型是变量名;以数组名作为函数参数时,要求形参的类型是数组名或指针变量。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
88(1分)、
0
如果p是一个指向struct Student类型对象的指针变量,那么执行p++时,p的增量是结构体struct Student的长度。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
89(1分)、
0
可以先声明结构体类型,再定义该类型的变量。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
90(1分)、
0
结构体类型不占存储单元,但结构体类型变量占存储单元。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
91(1分)、
0
指向整型数据的指针类型表示为“int *”,读作“指向int的指针”或简称“int指针”。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
92(1分)、
0
指针变量可指向结构体数组中的元素。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
93(1分)、
0
C语言允许把(*p).num用p_>num来代替( )。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
94(1分)、
0
引用数组元素可以用下标法,也可以用指针法。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
95(1分)、
0
可以引用结构体变量中成员的值,引用方式为结构体变量名.成员名

•        A、正确
•        B、错误
参考答案: 正确
展开解析
96(1分)、
0
数组元素的作用与变量相当,一般来说,凡是变量可以出现的地方都可以用数组元素代替。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
97(1分)、
0
数组元素的指针就是数组元素的地址。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
98(1分)、
0
C语言的特点之一就在于允许函数的递归调用。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
99(1分)、
0
数组只能存放同一类型的数据。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
100(1分)、
0
在调用一个函数的过程中允许直接调用该函数本身。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
•        <返回
•        2023年秋季作业
•         
单选题 资料来源:谋学网(www.mouxue.com)
得分:0分
正确 错误 未批阅
单选题(80题 共80分)
0 80 得分0分
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
资料来源:谋学网(www.mouxue.com)(20题 共20分)
0 20 得分0分
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
已完成批阅重做
单选题   
1(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        B、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        C、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: D
展开解析
2(1分)、
0
已知 int x=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为:     。
         if (x>y||x<z&&y>z)
            z=x; x=y; y=z;

•        A、
x=50, y=80, z=80

•        B、
x=80, y=30, z=50

•        C、
x=30, y=50, z=80

•        D、
x=50, y=30, z=30

参考答案: D
展开解析
3(1分)、
0
有以下程序
#include <stdio.h>
main()
{  int a;
    scanf("%d" ,&a);
    if(a++<9)  printf("%d\n",a);
    else    printf("%d\n",a);
}
程序运行时从键盘输入9<回车>,则输出的结果是        。

•        A、
10
•        B、
11
•        C、
9
•        D、
8
参考答案: A
展开解析
4(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
011

•        C、
211

•        D、
001

参考答案: C
展开解析
5(1分)、
0
有如下嵌套的if语句
if(a<b)
if(a<c)    k=a;
else      k=c;
if(b<c)    k=b;
else     k=c;
以下选项中与上述if语句等价的语句是        。

•        A、
k=(a<b)?((a<c)?a:c)((b<c)?b:c);

•        B、
k=(a<b)?((b<c)?a:b)((b>c)?b:c);

•        C、
k=(a<b)?a:b;k=(b<c)?b:c;

•        D、
k=(a<b)?a:b;k=(a<c)?a:c;

参考答案: A
展开解析
6(1分)、
0
当执行以下程序段时,程序的执行情况是(  )。

     x=-1;
     do { x=x*x;} while( !x);

•        A、
循环体将执行一次

•        B、
循环体将执行两次

•        C、
循环体将执行无限次

•        D、
系统将提示有语法错误

参考答案: A
展开解析
7(1分)、
0
有如下嵌套的if语句
if(a<b)
if(a<c)    k=a;
else      k=c;
if(b<c)    k=b;
else     k=c;
以下选项中与上述if语句等价的语句是        。

•        A、
k=(a<b)?a:b;k=(b<c)?b:c;

•        B、
k=(a<b)?((b<c)?a:b)((b>c)?b:c);

•        C、
k=(a<b)?((a<c)?a:c)((b<c)?b:c);

•        D、
k=(a<b)?a:b;k=(a<c)?a:c;

参考答案: C
展开解析
8(1分)、
0
若有定义语句:int k1=10,k2=20;,执行表达式(k1=k1>k2)&&(k2=k2>k1)后,k1和k2的值分别为( )。

•        A、
0和1   

•        B、
0和20

•        C、
10和1

•        D、
10和20

参考答案: B
展开解析
9(1分)、
0
两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x--);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
10(1分)、
0
一个完整的C源程序是(  )。

•        A、
要由一个主函数或一个以上的非主函数构成

•        B、
由一个且仅由一个主函数和零个以上的非主函数构成

•        C、
要由一个主函数和一个以上的非主函数构成

•        D、
由一个且只有一个主函数或多个非主函数构成

参考答案: B
展开解析
11(1分)、
0
以下叙述正确的是()
•        A、
计算机不仅能执行机器语言程序,也可以直接执行其它高级语言编写的程序。

•        B、
汇编语言是一种面向机器的低级语言,所以计算机可以直接执行用汇编语言编写的源程序。

•        C、
高级语言是与自然语言或数学语言相近的计算机语言,用高级语言编写的源程序计算机都不能直接执行。

•        D、
用高级语言编写的源程序只能经过解释程序边解释边执行。
参考答案: C
展开解析
12(1分)、
0
以下程序的运行结果是(  )。
#include <stdio.h>
main()
{
struct date
{ int year,month,day;
}today;
printf("%d\n",sizeof(today));
}

•        A、
6

•        B、
8

•        C、
10

•        D、
12

参考答案: D
展开解析
13(1分)、
0
在一个C程序中,(  )。

•        A、
main函数必须出现在所有函数之前

•        B、
main函数可以在任何地方出现

•        C、
main函数必须出现在所有函数之后

•        D、
main函数必须出现在固定位置

参考答案: B
展开解析
14(1分)、
0
若有说明:int a[3][4];则对a 数组元素的非法引用是(  )。

•        A、
a[0][2*1]

•        B、
a[1][3]

•        C、
a[4-2][0]

•        D、
a[0][4]

参考答案: D
展开解析
15(1分)、
0
以下不正确的概念是(    )。

•        A、
一个C程序必须包含一个main函数

•        B、
一个C程序可以只有一个语句

•        C、
一个C程序可以由一个或多个函数组成

•        D、
一个C语言函数可以没有任何可执行语句

参考答案: B
展开解析
16(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 5 1

•        B、
1 7 0

•        C、
3 7 0

•        D、
5 5 0

参考答案: B
展开解析
17(1分)、
0
有如下程序
int func(int a,int b)
  { return(a+b); }
main( )
  { int x=2,y=5,z=8,r;
    r=func(func(x,y),z);
    printf("%d\n",r);  }
该程序的输出结果是(  )。

•        A、
12

•        B、
13

•        C、
14

•        D、
15

参考答案: D
展开解析
18(1分)、
0
若函数调用时参数为基本数据类型的变量,以下叙述正确的是(  )。

•        A、
实参与其对应的形参共占存储单元

•        B、
只有当实参与其对应的形参同名时才共占存储单元

•        C、
实参与对应的形参分别占用不同的存储单元

•        D、
实参将数据传递给形参后,立即释放原先占用的存储单元

参考答案: C
展开解析
19(1分)、
0
以下程序段:
int i,a=3,b=2;
i=(--a==b++)?--a:++b;
printf("i=%d a=%d b=%d",i,a,b);
输出结果是        。

•        A、
i=1 a=1 b=3

•        B、
i=3 a=2 b=3

•        C、
i=4 a=1 b=4

•        D、
i=4 a=2 b=4

参考答案: A
展开解析
20(1分)、
0
在C语言中,引用数组元素时,其数组下标的数据类型允许是(  )。

•        A、
整型常量

•        B、
整型表达式

•        C、
整型常量、变量或表达式

•        D、
任何类型的表达式

参考答案: C
展开解析
21(1分)、
0
写出下面程序的执行结果        。
main( )
{ int  x,y=1;
  if(y!=0)     x=5;
  printf(“%d\t”,x);
  if(y= =0)   x=3;
else  x=5;
printf(“%d\t\n”,x);

•        A、
1   3

•        B、
1   5

•        C、
5   3

•        D、
5   5

参考答案: D
展开解析
22(1分)、
0
以下哪一个不是C语言中的数据类型(    )。

•        A、
集合型

•        B、
双精度型

•        C、
复数型

•        D、
布尔型

参考答案: A
展开解析
23(1分)、
0
以下程序段:
int i,a=3,b=2;
i=(--a==b++)?--a:++b;
printf("i=%d a=%d b=%d",i,a,b);
输出结果是        。

•        A、
i=1 a=1 b=3

•        B、
i=3 a=2 b=3

•        C、
i=4 a=1 b=4

•        D、
i=4 a=2 b=4

参考答案: A
展开解析
24(1分)、
0
以下关于函数的叙述中正确的是(  )。

•        A、
C语言程序将从源程序中第一个函数开始执行

•        B、
可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行

•        C、
C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束

•        D、
main可作为用户标识符,用以定义任意一个函数

参考答案: C
展开解析
25(1分)、
0
#include <stdio.h>
void  main()
{
int i,j,k;
for(i=1;i<10;i++)
for(j=0;j<10;j++)
for(k=0;k<10;k++)
if( (i*100+j*10+k)==((i*i*i)+(j*j*j)+(k*k*k)))
printf("%d%d%d ",i,j,k);
}
该程序可以输出所有的(  )。

•        A、
素数

•        B、
奇数

•        C、
偶数

•        D、
水仙花数

参考答案: D
展开解析
26(1分)、
0
若有定义:int a,b;,通过语句scanf(“%d#%d”,&a,&b);,能把整数3赋给变量a,5付给变量b的输入数据是( )。

•        A、
3  5

•        B、
3,5

•        C、
3#5

•        D、
35

参考答案: C
展开解析
27(1分)、
0
以下不能对二维数组a 进行正确初始化的语句是(  )。

•        A、
int a[2][3]={0};

•        B、
int a[][3]={{1,2},{0}};

•        C、
int a[2][3]={{1,2},{3,4},{5,6}}

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

参考答案: C
展开解析
28(1分)、
0
以下对一维整型数组a 的正确说明是(  )。

•        A、
int a(10);

•        B、
int n=10,a[n];

•        C、
int n; scanf("%d",&n); int a[n];

•        D、
int a[3*5+2];

参考答案: D
展开解析
29(1分)、
0
以下程序的输出结果是(  )。
#include <stdio.h>  
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

参考答案: C
展开解析
30(1分)、
0
如果一个函数位于C程序中定义的第一个函数,在该函数体内说明语句后的复合语句中定义了一个变量,则该变量(  )。

•        A、
为全局变量,在本程序文件范围内有效

•        B、
为局部变量,只在该函数内有效

•        C、
为局部变量,只在该复合语句中有效

•        D、
定义无效,为非法变量

参考答案: C
展开解析
31(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
30

•        B、
25

•        C、
24

•        D、
20

参考答案: D
展开解析
32(1分)、
0
在C语言中,数字018是一个(    )。

•        A、
十进制数

•        B、
八进制数

•        C、
十六进制数

•        D、
非法数

参考答案: D
展开解析
33(1分)、
0
以下不正确的叙述是(    )。

•        A、
一个#include命令只能指定一个被包含文件

•        B、
一个#include命令可以指定多个被包含文件

•        C、
在#include命令中,文件名可以用尖括号或双引号括起来

•        D、
一个C程序中,可以使用多个#include文件包含命令

参考答案: B
展开解析
34(1分)、
0
C语言中while 和do-while 循环的主要区别是(  )。

•        A、
do-while 的循环体不能是复合语句

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

•        C、
do-while 允许从外部转到循环体内

•        D、
do-while的循环体至少无条件执行一次

参考答案: D
展开解析
35(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
211

•        C、
011

•        D、
001

参考答案: B
展开解析
36(1分)、
0
以下程序的运行结果是        。
main( )
{
int c,x,y;
       x=1; y=1; c=0;
  c=x++||y++;
      printf(“\n%d%d%d\n”,x,y,c);
}

•        A、
110

•        B、
011

•        C、
211
•        D、
001

参考答案: B
展开解析
37(1分)、
0
两次运行下面的程序,如果从键盘上分别输入1和10,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x++);
}

•        A、
1和2

•        B、
10和11

•        C、
1和10

•        D、
2和11

参考答案: D
展开解析
38(1分)、
0
当执行以下程序段时,程序的执行情况是(  )。

     x=-1;
     do { x=x*x;} while( !x);

•        A、
循环体将执行一次

•        B、
循环体将执行两次

•        C、
循环体将执行无限次

•        D、
系统将提示有语法错误

参考答案: A
展开解析
39(1分)、
0
以下选项中与if(a==1)a=b;else a++;语句功能不同的switch语句是        。

•        A、
switch(a)
{  case1:a=b;  break;      
default:a++;


•        B、
switch(a==1)
{ case 0:a=b;  break;
case 1:a++;


•        C、
switch(a)
{ default:a++;break;
case1:a=b;


•        D、
switch(a==1)
{ case 1:a=b;break;
case 0:a++;


参考答案: B
展开解析
40(1分)、
0
若有定义:int a,b;,通过语句scanf(“%d;%d”,&a,&b);,能把整数3赋给变量a,5付给变量b的输入数据是( )。

•        A、
3  5

•        B、
3,5

•        C、
3;5

•        D、
35

参考答案: C
展开解析
41(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
34

•        B、
4

•        C、
35

•        D、
3

参考答案: B
展开解析
42(1分)、
0
struct student
   {long int num;
    char name[20];
    char sex;
    char addr[20];
   }______。
以下能够正确定义的是

•        A、
a={"Li Lin",10101,'M',"123 Beijing Road"};

•        B、
a={10101,"Li Lin","123 Beijing Road",'M'};

•        C、
a={10101,"Li Lin",'M',"123 Beijing Road"};

•        D、
a={"123 Beijing Road","Li Lin",'M',10101};

参考答案: C
展开解析
43(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
35
•        B、
34
•        C、
4
•        D、
3
参考答案: C
展开解析
44(1分)、
0
有以下程序
#include<stdio.h>
main()
{
int a=1,b=0;
if(--a)   b++;
else   if(a==0) b+=2;
else    b+=3;
printf(“%d\n”,b);
}
程序运行后的输出结果是        。

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: C
展开解析
45(1分)、
0
若主调用函数类型为double,被调用函数定义中没有进行函数类型说明,而return语句中的表达式类型为float型,则被调函数返回值的类型是(  )。

•        A、
int 型

•        B、
float 型

•        C、
double 型

•        D、
由系统当时的情况而定

参考答案: A
展开解析
46(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
20

•        B、
24

•        C、
25

•        D、
30

参考答案: A
展开解析
47(1分)、
0
若有说明:int a[10];,则对a数组元素的正确引用是(  )。

•        A、
a[10]

•        B、
a[3.5]

•        C、
a(5)

•        D、
a[10-10]

参考答案: D
展开解析
48(1分)、
0
以下能对二维数组a 进行正确初始化的语句是(  )。

•        A、
int a[2][]={{1,0,1},{5,2,3}};

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

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

•        D、
int a[][3]={{1,0,1},{},{1,1}};

参考答案: B
展开解析
49(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
20

•        B、
24

•        C、
25

•        D、
30

参考答案: A
展开解析
50(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        B、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        C、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: C
展开解析
51(1分)、
0
以下哪一个不是C语言中的数据类型(    )。

•        A、
实型

•        B、
浮点型

•        C、
空类型

•        D、
关系型

参考答案: C
展开解析
52(1分)、
0
假定所有变量均已正确说明,下列程序段运行后x的值是        。
a=b=c=0;x=35;
if(!a)  x=-1;
else if(b);
if(c)  x=3;
else  x=4;

•        A、
34
•        B、
4
•        C、
35
•        D、
3
参考答案: B
展开解析
53(1分)、
0
若程序中定义函数
float myadd(float a, float b)
{ return a+b;}
并将其放在调用语句之后,则在调用之前应对该函数进行说明。以下说明中错误的是(  )。

•        A、
float myadd( float a,b);

•        B、
float myadd(float b, float a);

•        C、
float myadd(float, float);

•        D、
float myadd(float a, float b);

参考答案: A
展开解析
54(1分)、
0
有两个字符数组a,b,则以下正确的输入语句是(  )。

•        A、
gets(a,b);

•        B、
scanf("%s%s",a,b);

•        C、
scanf("%s%s",&a,&b);

•        D、
gets("a"),gets("b");

参考答案: B
展开解析
55(1分)、
0
以下选项中与if(a==1)a=b; else a++;语句功能不同的switch语句是        。

•        A、
switch(a)  {case 1:a=b;break;  default:a++; }

•        B、
switch(a==1)  {case 0:a=b;break;case 1:a++; }

•        C、
switch(a)  {default:a++;break;case 1:a=b;}

•        D、
switch(a==1)  {case 1:a=b;break; case 0:a++;}

参考答案: B
展开解析
56(1分)、
0
若有说明:int a[3][4]={0};则下面正确的叙述是(  )。

•        A、
只有元素a[0][0]可得到初值0

•        B、
此说明语句不正确

•        C、
数组a 中各元素都可得到初值,但其值不一定为0

•        D、
数组a 中每个元素均可得到初值0

参考答案: D
展开解析
57(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 5 1

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 7 0

参考答案: D
展开解析
58(1分)、
0
两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x--);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
59(1分)、
0
以下程序的运行结果是(  )。
#include <stdio.h>
void main()
{
int i=1,s=3;
do
{
s+=i++;
if (s%7==0)
continue;
else
++i;
} while (s<15);
printf("%d\n",i);

•        A、
7
•        B、
8
•        C、
9
•        D、
10
参考答案: B
展开解析
60(1分)、
0
若用数组名作为函数调用的实参,则传递给形参的是(  )。

•        A、
数组的首地址

•        B、
数组的第一个元素的值

•        C、
数组中全部元素的值

•        D、
数组元素的个数

参考答案: A
展开解析
61(1分)、
0
以下关于函数叙述中,错误的是(  )。

•        A、
函数未被调用时,系统将不为形参分配内存单元

•        B、
实参与形参的个数应相等,且实参与形参的类型必须对应一致

•        C、
当形参是变量时,实参可以是常量、变量或表达式

•        D、
形参可以是常量、变量或表达式

参考答案: D
展开解析
62(1分)、
0
以下程序的输出结果是(  )。
#include <stdio.h>  
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

参考答案: C
展开解析
63(1分)、
0
若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是(  )。

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

•        A、
25

•        B、
20

•        C、
24
•        D、
30
参考答案: B
展开解析
64(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);

•        A、
1 7 0

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 5 1

参考答案: A
展开解析
65(1分)、
0
以下哪一个可以作为正确的变量名(    )。

•        A、
for

•        B、
$abc

•        C、
3*x

•        D、
_file

参考答案: D
展开解析
66(1分)、
0
写出下面程序的执行结果        。
main()
{ int x=1,y=1,z=0;
if(z<0)
if(y>0) x=3;
else x=5;
printf("%d\t",x);
if(z=y<0) x=3;
else if(y= =0 ) x=5;
else x=7;
printf("%d\t",x);
printf("%d\t",z);
}

•        A、
1 7 0

•        B、
3 7 0

•        C、
5 5 0

•        D、
1 5 1

参考答案: A
展开解析
67(1分)、
0
以下程序的输出结果是(  )。

#include <stdio.h>  
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

参考答案: C
展开解析
68(1分)、
0
定义一个void型函数意味着调用该函数时,函数(  )。

•        A、
通过return返回一个用户所希望的函数值

•        B、
返回一个系统默认值

•        C、
没有返回值

•        D、
返回一个不确定的值

参考答案: C
展开解析
69(1分)、
0
若有定义:double a=22;int i=0,k=18;,则不符合C语言规定的赋值语句是(  )

•        A、
a=a++,i++;

•        B、
i=(a+k)<=(i+k);

•        C、
i=A%11;

•        D、
i=!a;

参考答案: C
展开解析
70(1分)、
0
以下程序运行的输出结果是        。
main()
{    int   p=30;
printf("%d\n",(p/32>0?p/10:p%3)); }

•        A、
0
•        B、
1
•        C、
2
•        D、
3
参考答案: D
展开解析
71(1分)、
0
合法的数组说明语句是(  )。

•        A、
int a[ ]="string";

•        B、
int a[5]={0,1,2,3,4,5};

•        C、
char a ="string";

•        D、
int a[ ]={0,1,2,3,4,5};

参考答案: D
展开解析
72(1分)、
0
以下哪一个不是正确的C语言常量(    )。

•        A、
0x2ac

•        B、
3.25e-8

•        C、
800

•        D、
0486

参考答案: D
展开解析
73(1分)、
0
以下关于函数的叙述中不正确的是(  )。

•        A、
C程序是函数的集合,包括标准库函数和用户自定义函数

•        B、
在C语言程序中,被调用的函数必须在main函数中定义

•        C、
在C语言程序中,函数的定义不能嵌套

•        D、
在C语言程序中,函数的调用可以嵌套

参考答案: B
展开解析
74(1分)、
0
若有定义:int x,y; char a,b,c; 并有以下输入数据(此处,<cr>代表换行符)
1 2<cr>
A B C<cr>
则能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是( )。

•        A、
scanf("x=%dy=%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        B、
scanf("%dy%d",&x,&y);a=getchar();b=getchar();c=getchar();

•        C、
scanf("%d%d%c%c%c%c%c%c",&x,&y,&a,&a,&b,&b,&c,&c);

•        D、
scanf("%d%d%c%c%c",&x,&y,&a,&b,&c);

参考答案: D
展开解析
75(1分)、
0
两次运行下面的程序,如果从键盘上分别输入4和6,则输出结果是        。
main( )
{ int x;
  scanf(“%d”,&x);
  if(x++>5)  printf(“%d”,x);
  else   printf(“%d\n”,x++);
}

•        A、
7和5

•        B、
6和3

•        C、
7和4

•        D、
6和4

参考答案: A
展开解析
76(1分)、
0
能正确表示x的取值范围在[0,100]和[-10,-5]内的表达式是        。

•        A、
(x<=-10)||(x>=-5)&&(x<=0)||(x>=100)

•        B、
(x>=-10)&&(x<=-5)||(x>=0)&&(x<=100)

•        C、
(x>=-10)&&(x<=-5)&&(x>=0)&&(x<=100)

•        D、
(x<=-10)||(x>=-5)||(x<=0)||(x>=100)

参考答案: B
展开解析
77(1分)、
0
以下叙述中,不正确的是(  )。

•        A、
在同一C程序文件中,不同函数中可以使用同名变量

•        B、
在main函数体内定义的变量是全局变量

•        C、
形参是局部变量,函数调用完成即失去意义

•        D、
若同一文件中全局变量和局部变量同名,则全局变量在局部变量作用范围内不起作用

参考答案: B
展开解析
78(1分)、
0
已知 int x=30,y=50,z=80;以下语句执行后变量x、y、z的值分别为:     。
         if (x>y||x<z&&y>z)
            z=x; x=y; y=z;

•        A、
x=50, y=80, z=80

•        B、
x=50, y=30, z=30

•        C、
x=30, y=50, z=80

•        D、
x=80, y=30, z=50

参考答案: A
展开解析
79(1分)、
0
写出下面程序的执行结果        。
main( )
{ int  x,y=1;
  if(y!=0)     x=5;
  printf(“%d\t”,x);
  if(y= =0)   x=3;
else  x=5;
printf(“%d\t\n”,x);
}

•        A、
1   3

•        B、
1   5

•        C、
5   3

•        D、
5   5

参考答案: D
展开解析
80(1分)、
0
下列条件语句中输出结果与其他语句不同的是        。

•        A、
if(a==0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        B、
if(a==0) printf(“%d\n”,y);  else printf(“%d\n”,x);

•        C、
if(a!=0) printf(“%d\n”,x);  else printf(“%d\n”,y);

•        D、
if(a) printf(“%d\n”,x);  else printf(“%d\n”,y);

参考答案: A
展开解析
资料来源:谋学网(www.mouxue.com)   
81(1分)、
0
以变量名作为函数参数时,要求形参的类型是变量名;以数组名作为函数参数时,要求形参的类型是数组名或指针变量。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
82(1分)、
0
指针变量的基类型必须与结构体变量的类型相同( )。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
83(1分)、
0
存储单元的地址和存储单元的内容是相同的概念。

•        A、正确
•        B、错误
参考答案: 错误
展开解析
84(1分)、
0
如果p是一个指向struct Student类型对象的指针变量,则它不应用来指向stu数组元素中的某一成员。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
85(1分)、
0
若有int a[10]; p=&a[2]; 则p-1的值是数组a第1个元素的地址。

•        A、正确
•        B、错误
参考答案: 错误
展开解析
86(1分)、
0
指针变量可指向结构体变量。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
87(1分)、
0
程序中不应出现无终止的递归调用,只应出现有限次数、有终止的递归调用。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
88(1分)、
0
可以用下标法引用一个数组元素,也可以用指针法引用一个数组元素。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
89(1分)、
0
可以先声明结构体类型,再定义该类型的变量。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
90(1分)、
0
可以引用结构体变量成员的地址,也可以引用结构体变量的地址

•        A、正确
•        B、错误
参考答案: 正确
展开解析
91(1分)、
0
p1和p2都指向同一个数组元素时,可以执行p1-p2或p1+p2。

•        A、正确
•        B、错误
参考答案: 错误
展开解析
92(1分)、
0
如a为数组名,则可采用*(a+i)的方法引用数组元素。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
93(1分)、
0
指针已指向一个数组元素时,可以执行p++,++p。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
94(1分)、
0
可以不指定类型名而直接定义结构体类型变量。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
95(1分)、
0
结构体类型不占存储单元,但结构体类型变量占存储单元。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
96(1分)、
0
由于通过地址能找到所需变量单元,可以说,地址指向该变量单元。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
97(1分)、
0
指向整型数据的指针类型表示为“int *”,读作“指向int的指针”或简称“int指针”。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
98(1分)、
0
结构体数组的每个元素都包含多个成员。

•        A、正确
•        B、错误
参考答案: 正确
展开解析
99(1分)、
0
可以引用结构体变量中成员的值,引用方式为结构体变量名.成员名

•        A、正确
•        B、错误
参考答案: 正确
展开解析
100(1分)、
0
数组元素的指针就是数组元素的地址。

•        A、正确
•        B、错误
参考答案: 正确
展开解析

奥鹏作业答案,奥鹏在线作业答案
发表于 2024-12-2 21:10:35 | 显示全部楼层
奥鹏作业答案,奥鹏在线作业答案
回复

使用道具 举报

发表于 2024-12-2 21:30:46 | 显示全部楼层
奥鹏作业答案,奥鹏在线作业答案
回复

使用道具 举报

发表于 2024-12-2 21:50:56 | 显示全部楼层
奥鹏作业答案,奥鹏在线作业答案
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

 
 
客服一
客服二
客服三
客服四
点这里给我发消息
点这里给我发消息
谋学网奥鹏同学群2
微信客服扫一扫

QQ|关于我们|联系方式|网站特点|加入VIP|加盟合作|投诉建议|法律申明|Archiver|小黑屋|奥鹏作业答案-谋学网 ( 湘ICP备2021015247号 )

GMT+8, 2024-12-23 17:20 , Processed in 0.147159 second(s), 20 queries .

Powered by Discuz! X3.5

Copyright © 2001-2023 Tencent Cloud.

快速回复 返回顶部 返回列表