2022年湖北专升本C语言预处理命令模拟题
一、单项选择题
1.以下说法中正确的是( D)。
A) #define 和 printf 都是 C 语句
B) #define 是 C 语句,而 printf 不是
C) printf 是 C 语句,但#define 不是
D) #define 和 printf 都不是 C 语句
2.以下程序的输出结果是( C)。
#define f(x) x*x
main( )
{int a=6, b=2, c;
c=f(a)/f(b);
printf("%d\n", c);
}
A) 9
B) 6
C) 36
D) 18
3.下列程序执行后的输出结果是(B)。
#define MA(x) x*(x-1)
main()
{int a=1, b=2; printf("%d\n", MA(1+a+b));}
A) 6
B) 8
C) 10
D) 12
4.以下程序的输出结果是(D)。
#define M(x, y, z) x*y+z
main()
{int a=1, b=2, c=3;
printf("%d\n", M(a+b, b+c, c+a));
}
A) 19
B) 17
C) 15
D) 12
5.以下程序的输出结果是( B)。
#define SQR(X) X*X
main()
{int a=16, k=2, m=1;
a/=SQR(k+m)/SQR(k+m);
printf("%d\n", a);
}
A) 16
B) 2
C) 9
D) 1
6.有如下程序:
#define N 2
#define M N+1
#define NUM 2*M+1
main()
{int i;
for(i=1; i<=NUM; i++) printf(“%d\n”, i);
}《 M=3,NUM=6》
该程序中的 for 循环执行的次数是( B)。
A) 5
B) 6
C) 7
D) 8
7.以下程序的输出结果是( C)。
#include
#define MIN(x, y)
(x)< (y)?(x):(y)
main()
{int a, b, c;
a=20;b=10;
c=5*MIN(a, b);
printf(“%d\n”, c);
}
A) 20
B) 200
C) 10
D) 50
8.在下列叙述中,正确的是( C )。
A) 下面的程序有一个整型输出值:
main()
{int a;
a=pp();
printf(“%d”,a);
}
void pp()
{ … }
B) 以下程序的运行结果为 1,3,5,7
main()
{static int a[4]={1,3,5,7};
printf(“%d,%d,%d,%d\n”,a);
}
C) 以下两个语句是等价的
for(;(c=getchar())!=‘
\n’;printf(“%c\n”, c));
for(;(c=getchar())!=‘
\n’;) printf(“%c\n”, c);
D) 以下程序中的 PRINT()是一个函数
#define PRINT(V) printf(“V=%d\t”, V)
main()
{int a,b;
a=1;
b=2;
PRINT(a);
PRINT(b);
}
9.在下列#include 命令中,正确的一条是(D)。
A) #include[string.h]
B) #include{math.h}
C) #include(stdio.h)
D) #include
10.宏定义#define PI 3.1415926 的作用是:指定用标识符 PI 来代替一个( B )。
A) 单精度数 B) 字符串
C) 双精度数
D) 整数
11.如果在用户的程序中要使用 C 库函数中的数学函数时,应在该源文件中使用的 include 命令是(B)。
A) #include
B) #include
C) #include
D) #include
12.若输入 60 和 13,以下程序的输出结果是(D)。
#define SURPLUS(a,b) ((a)%(b))
main()
{int a,b;
scanf(“%d,%d”,&a,&b);
printf(“%d\n”,SURPLUS(a,b));
}
A) 60
B) 13
C) 73
D) 8
13.如果文件 1 包含文件 2,文件 2 中要用到文件 3 的内容,而文件 3 中要用到文件 4 的内容,则可在文件 1 中用三个#include 命令分别包含文件 2、文件 3 和文件 4。在下列关于这几个文件包含顺序的叙述中,正确的一条是( A )。
A) 文件 4 应出现在文件 3 之前,文件 3 应出现在文件 2 之前
B) 文件 2 应出现在文件 3 之前,文件 3 应出现在文件 4 之前
C) 文件 3 应出现在文件 2 之前,文件 2 应出现在文件 4 之前
D) 出现的先后顺序可以任意
14.在下面四个程序中,输出结果与其它三个不同的是( C)。
A) #define MAX(a,b) ((a)>(b)?(a):(b))
main()
{int a,b,c;
scanf(“%d,%d,%d”,&a,&b,&c);
printf(“%d\n”,MAX(MAX(a,b),c));
}
B) main()
{int a,b,c;
scanf(“%d,%d,%d”,&a,&b,&c);
printf(“%d\n”,max(a,b,c));
}
max(int x,int y,int z)
{int t;
t=(x>y?x:y);
return(t>z?t:z);
}
C) main()
{int a,b,c,max;
scanf(“%d,%d,%d”,&a,&b,&c);
if(a>b>c) max=a;
if(b>c>a) max=b;
if(c>a>b) max=c;
printf(“%d\n”,max);
}
D) main()
{int a,b,c,max;
scanf(“%d,%d,%d”,&a,&b,&c);
max=a>b?a:b;
if(c>max) max=c;
printf(“%d\n”,max);
}
15.以下 for 语句构成的循环执行了( C )次。
#define N 2
#define M N+1
#define NUM
(M+1)*M/2
main()
{int i, n=0;
for(i=1; i<=NUM; i++)
{n++;
printf(“%d”, n);
}
printf(“\n”);
}
A) 4
B) 6
C) 8
D) 9
16.以下程序的输出结果是( B )。
#include
#define FUDGE(y) 2.84+y
#define PR(a) printf(“%d”, (int)(a))
#define PRINT1(a) PR(a); putchar(‘\n’)
main()
{int x=2;
PRINT1(FUDGE(5)*x);
}
A) 11
B) 12
C) 13
D) 15
17.以下程序的输出结果是(A)。
#define SUB(x, y)
(x)*y
main()
{int a=3, b=4;
printf(“%d\n”, SUB(a++, b++));
}
A) 12
B) 15
C) 16
D) 20
18.设有以下宏定义
#define N 3
#define Y(n)
((N+1)*n)
则执行语句:z=2*(N+Y(5+1));后,z 的值为( C )。
A) 出错
B) 42
C) 48
D) 54
二、填空题
1.以下程序的输出结果是7。
#define MAX(x, y)
(x)>(y)?(x):(y)
main()
{int a=5, b=2, c=3, d=3, t;
t=MAX(a+b, c+d)*10;
printf(“%d\n”, t);
}
2.以下程序的输出结果为10.000000。
#include
#include
#define POWER(x, y) pow(x, y)*y
#define ONE 1
#define SELEVE_ADD(x) ++x
main()
{int x=2;
printf(“%f\n”, POWER(SELEVE_ADD(x), ONE+1));
}
3.填空补充以下程序:
#definePRICE30
main()
{ int num ,total;
num=0;
total=num*PRICE;
printf(“total=%d, num=%d\n”, total,num);
}
4.下面程序的输出结果是5。
#define CIR(r) r*r
main()
{int a=1, b=2, t;
t=CIR(a+b);
printf(“%d\n”, t);
}
以上就是关于2022年湖北专升本C语言预处理命令模拟题的全部内容了,如果你还有专升本相关的疑惑(如专升本报名、考试动态、院校招生简章、统考动态、湖南专升本院校、历年真题、考试大纲、专升本等相关信息),可以在文章下方留下你的联系方式,老师会第一时间联系到你,为你答疑解惑哦!
部分内容来源于网络转载、学生投稿,如有侵权或对本站有任何意见、建议或者投诉,请联系邮箱(1296178999@qq.com)反馈。 未经本站授权,不得转载、摘编、复制或者建立镜像, 如有违反,本站将追究法律责任!
本文标签: 统招专升本全日制专升本统招 上一篇:2022年湖北专升本C语言函数模拟题 下一篇:2022年湖北专升本C语言指针模拟题