首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #include #define S(x)x*x main() {int k=5,j=2; printf("%d,%d\n",S(k+j+2),S(j+k+2)); } 程序的运行结果是
有以下程序: #include #define S(x)x*x main() {int k=5,j=2; printf("%d,%d\n",S(k+j+2),S(j+k+2)); } 程序的运行结果是
admin
2021-04-28
31
问题
有以下程序:
#include
#define S(x)x*x
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)被置换成k+j+2*k+j+2,计算时先计算2*k,结果为21;S(j+k+2)被置换成j+k+2*j+k+2,计算时先计算2*j,结果为18。程序的运行结果是21,18。
转载请注明原文地址:https://kaotiyun.com/show/Vttp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下选项中非法的C语言字符常量是
以下关于逻辑运算符两侧运算对象的叙述中正确的是
程序中已构成如下图所示的不带头结点的单向链表结构,指针变量s、p、q均已正确定义,并用于指向链表结点,指针变量S总是作为头指针指向链表的第一个结点。若有以下程序段:q=s;s=s->next;p=s;while(p->n
有以下程序#includemain(){inti,j,m=1;for(i=1:i0;j--){if(i*j>3)break;m*=i*j;}}printf("m=%d\n
若各选项中所用变量已正确定义,函数fun中通过return语句返回一个函数值,以下选项中错误的程序是
有以下程序#includeintfun(chars[]){char*p=s;while(*p!=0)p++;return(p-s):}main(){printf("%d\n",fun("0ABCDEF"
下列选项中不属于软件生命周期开发阶段任务的是
给定程序中,函数fun的功能是:有N×N矩阵,将矩阵的外围元素顺时针旋转。操作顺序是:首先将第一行元素的值存入临时数组r,然后使第一列成为第一行,最后一行成为第一列,最后一列成为最后一行,临时数组中的元素成为最后一列。例如,若N=3,有下列矩阵:1
下列关于数据库设计的叙述中,正确的是
软件调试的目的是
随机试题
在理财规划方面,生活费、房租与保险费通常发生在________,收入的取得、每期房贷本息的支出、利用储蓄来投资等,通常是________。()
日本新闻界一般认为日本近代报纸诞生于________。
属于细胞内玻璃样变性的有
中药成分在煎制过程中的变化包括
关于疫苗的接种方式,以下哪项是错误的
在通信专业中,描述网络模式的缩写词VPN的英文全称是(91),“时隙”英文通常翻译为(92)。(92)
拉文格认为,成人最难达到的自我发展的水平是()
下列不是阿特金森所提出的成就动机理论模型的缺陷的是()
Generallyspeaking,employersarelookingfortwothingsinjobapplicants:proofthatacandidatecanhandleaspecificjoband
In"Hewillcometolearndrivingfromyou",theinfinitiveindicates
最新回复
(
0
)