目录: 标题| 题干| 答案| 搜索| 相关
问题

有如下程序#include "stdio.h"void fun(int *a


有如下程序#include "stdio.h"void fun(int *a,int *b){ int m; m=(*a+*b)*(*a+*b); m+=(*a-*b)*(*a-*b); printf("%d\n",m);}main(){ int a=5,b=6,*x=&a,*y=&b; fun(x,y);}程序执行后输出的结果为A.120 B.121 C.122 D.123

  • A120
  • B121
  • C122
  • D123
参考答案
参考解析:

在本题程序中,首先定义了一个fun函数,函数带有两个指针变量的形参,在程序体中,定义一个整型变量m用来保存计算的结果,然后执行第一条运算语句,并将运算结果保存至变量m,然后执行第二条运算语句,最后输出程序m的值。在主函数中,首先定义两个整型变量a和b,并分别赋值为5和6,定义两个指针变量x和y,分别指向变量a和b。然后调用函数fun,调用函数传递的参数为x和y,因此,执行m=(*a+*b)*(*a+*b)=(5+6)*(5+6)=121,然后执行m+=(*a-*b)*(*a-*b)等价于m=m+(-1)*(-1)=121+1=122。因此,本题程序的输出结果为122,答案选C。

分类:其他
相关推荐

1、有如下程序段#include "stdio.h"void fun(int *

有如下程序段#include "stdio.h"void fun(int *a,int *b,int *c,int *d,int *e){ int i,j,k,m; for(i=0;i< *a;i++) for(j=0;j< *b;j++)  for(k=0;k<*c;k++) ...

2、设有如下程序 #include<stdio.h> main() { int*

设有如下程序 #include<stdio.h> main() { int**k,*j,i=100; j=&i;k=&j; printf("%d ",**k); } 上述程序的输出结果是______。A运行错误B100Ci的地址Dj的地址

3、有以下程序#include "stdio.h"void fun(int *a

有以下程序#include "stdio.h"void fun(int *a,int *b){ int c=20,d=20; *a=c/3; b=d/5;}main(){ int a=3,b=5; fun(&a,&b); printf("%d,%d\n",a,b);}程序的运行结果是A.6,5 B.5,6C.20,25 D.3,5A6,5 B5,6C20,25 D3,5

4、有如下程序段void fun(int *a, int *b){ int *k

有如下程序段void fun(int *a, int *b){ int *k; k=a; a=b; b=k;}main(){ int a=3, b=6, *x=&a, *y=&b; fun(x,y); printf("%d %d", a, b);} 程序运行后输出的结果是A.6 3 B.3 6 C.编译出错 D.0 0A6 3 B3 6 C编译出错 D0 0

5、有以下程序: #include<stdio.h> int fun

有以下程序: #include<stdio.h> int fun( ) {static int x=1; X*=2;return X; main( ) int i,s=1; for(i=1;i<=2;i++)s=fun( ); printf{¨%d ",s); } 程序运行后的输出结果是( )。A0B1C4D8

6、有如下程序#include "stdio.h"main(){ int a,b

有如下程序#include "stdio.h"main(){ int a,b,m; for(a=5;a>=1;a--) { m=0;  for(b=a;b<=5;b++)  m=m+a*b; } printf("%d\n",m);}上述程序的运行结果是A.30 B.15 C.20 D.10A30 B15 C20 D10