首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #include<stdio.h> #define S(x)x*x void main( ) { int k=5,j=2; printf(″%d,%d\n″,S(k+j+2),S(j+k+2)); } 程序的运行结果是( )。
有以下程序: #include<stdio.h> #define S(x)x*x void main( ) { int k=5,j=2; printf(″%d,%d\n″,S(k+j+2),S(j+k+2)); } 程序的运行结果是( )。
admin
2019-07-14
79
问题
有以下程序:
#include<stdio.h>
#define S(x)x*x
void main( )
{
int k=5,j=2;
printf(″%d,%d\n″,S(k+j+2),S(j+k+2));
}
程序的运行结果是( )。
选项
A、21,18
B、81,81
C、21,21
D、18,18
答案
A
解析
带参数的宏的调用格式:宏名(实参表),替换过程是:用宏调用提供的实参字符串,直接替换宏定义命令行中相应形参字符串,非形参字符保持不变。s(k+j+2)被s换成k+j+2*k+j+2,计算时先计算2*k,结果为21;S(j+k+2)被S换成j+k+2*j+k+2,计算时先计算2*j,结果为18。程序的运行结果是21,18。
转载请注明原文地址:https://www.kaotiyun.com/show/W8Rp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序#includefun(inta,intb){intstaticm=0,i=2;i=i+m+1;m=i+a+b;returnm;}main(){intk=4,m=1,p;p=fun(k,
有以下程序#includemain(){inti,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i
设有定义:char*c;以下选项中能够使c正确指向一个字符串的是()。
以下叙述中正确的是()。
有以下程序#include#includevoidfun(char*s){chara[10];strcpy(a,"STRING");s=a;}main(){char*p="PROGRAM";fun(
以下叙述中错误的是()。
设有定义:inta=1,b=2,c=3;以下语句中执行效果与其它三个不同的是
有三个关系R、S和T如下:则由关系R和S得到关系T的操作是( )。
某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层)( )。
软件测试的目的是
随机试题
下列行为中属于有效行为的是:()
关于重型胎盘早剥,以下正确的是
正常人动脉血液pH的参考范围是
A.0~10mm/小时B.1~15mm/小时C.0~20mm/小时D.5~20mm/小时E.0~25mm/小时
运动感觉阻滞分离现象最明显的局麻药是
下列关于梁中钢筋的保护层厚度的说法,正确的是()。
下列业务中应该编制收款凭证的是()。
信用证支付方式,属于商业银行信用,所使用的汇票也是银行汇票。()
下列选项中,会导致进程从执行态变为就绪态的事件是
求下列极限:
最新回复
(
0
)