f(int
x,int
y)这个函数返回的值是(y-x)x
d=f(f(a,b),f(a,c))相当于
int m,n;
m=f(a,b);n=f(a,c);
d=f(m,n);
由f函数可知m=(b-a)a;n=(c-a)a;
d=(n-m)m;
依次带入值m=(4-3)3=3;n=(5-3)3=6;
d=(6-3)3=9;
所以输出值是9
#include <stdioh>
void main()
{
float a,b,c,d;
for(d=1;;d++)//这里的d就不做要求,它属于整个自然数集合里面,另外a,b,c,d都是分母,所以定义的初始值都为1//
for(c=1;c<=d;c++)
for(b=1;b<=c;b++)
for(a=1;a<=b;a++)
if(1/a+1/b+1/c+1/d==1)
printf("a=%g,b=%g,c=%g,d=%g\n",a,b,c,d);
getchar();
getchar();
//3、以下程序的运行结果是( D)。
#include<stdioh>
int main( )
{
int a=3,b=2,c=1;
{
int b=5,c=12;
c-=b2;
printf("a=%d,b=%d,c=%d\n",a,b,c); //输出显示为:a=3,b=5,c=2
a+=c;
}
printf("a=%d,b=%d,c=%d\n",a,b,c); //输出显示为:a=5,b=2,c=1
}
//4、对函数不正确的描述是( D)
//A 当用数组名作参数时,形参数组的改变可使实参数组随之改变
//B 允许函数递归调用
//C.函数形参的作用范围只是局限于所定义的函数内
//D 函数说明必须在主调函数之前
//5、若执行以下程序段,其运行结果是( A)。
//char c[ ]={‘a’, ‘b’, ‘\0’, ‘c’,‘\0’};
//printf(“%s\n”,c);
//A ab c B’a’’b’ Cabc Dab
#include<stdioh>
int main( )
{
char c[ ]={'a', 'b', '\0', 'c','\0'};
printf("%s\n",c); //输出显示为:ab
//因为 '\0' 是表示字符串的结果,所以相当于放弃了后面的字符了。
}
//6、若定义int i;则以下循环语句的循环执行次数是( B )。
//for(i=2;i= =0;) printf(“%d”, i--);
//A 无限次 B0次 C1次 D2次
#include<stdioh>
int main()
{
char i;
for(i=2;i==0;)
printf("%d", i--);
//因为 i 被初始化为2,其循环条件为 i等于0 ,所以条件不成立,不执行。
}
//7、以下程序的输出结果是( C )
#include<stdioh>
int f(int b[],int m, int n)
{
int i,s=0;
for(i=m; i<n; i=i+2) //循环条件:大于等于3且小于7的数组
s=s+b[i]; //计算过程:0+4+6=10
return(s);
}
int main( )
{
int x,a[ ]={1,2,3,4,5,6,7,8,9};
x=f(a,3,7);
printf("%d\n",x); //输出显示为:10
}
//A 18 B15 C10 D8
//8、以下程序的输出结果是( D )
#include<stdioh>
void f(int x, int y) //因为函数 f 并没有返回改变后的数据。
{
int t;
if(x<y)
{
t=x;
x=y;
y=t;
}
}
int main( )
{
int a=4,b=3,c=5;
f(a,b);
f(a,c);
f(b,c);
printf("%d,%d,%d\n",a,b,c);
}
//A 3,4,5 B5,3,4 C5,4,3 D4,3,5
//9、已知变量定义如下:
//int i=8,a,b;
//double x=142,y=52;
//则以下符合C语法的表达式是( A )。
//A a+=a-=(b=4)(a=3) Ba=a3=2 Cx%(-3) Dy=float(i)
#include<stdioh>
int main( )
{
int i=8,a,b;
double x=142,y=52;
a+=a-=(b=4)(a=3); //a=-18 b=4
//上面的命令,相当于把命令拆解为
// a=3;
// b=4;
// a-=ba;
// a+=a;
// a=a3=2; //这个不能编译
// x%(-3); //这个提示︰无效 *** 作数的类型
y=float(i); //y =8,考虑到 y=double i被强制转换成 float数据,所以当这条命令无效,答案选择 A
}
//10、以下程序的输出结果是( A )
#include<stdioh>
int main( )
{
int a[4][4]={{1,3,5},{2,4,6},{3,5,7}};
//数组相当于
//{1,3,5,0}
//{2,4,6,0}
//{3,5,7,0}
//{0,0,0,0}
printf("%d%d%d%d\n",a[0][3],a[1][2],a[2][1],a[3][0]);
}
//A 0650 B1470 C5430 D输出值不确定
没学到指针或者没学好指针吧。
函数void f(int v,int w)是被调用了,但是其形参(int v,int w)并不是指针变量,第一次调用f(y,z);,是传过去(y=3,z=2),但是这函数是无返回值得函数,调用完后,函数所开辟的空间会立刻被释放掉,所以调换是被执行了,但是是无法回传。(好好看书或者老师的笔记或者PPT什么的,一定有!!)
首先执行switch里语句,然后在case里找到匹配值,找到之后依次执行此语句之后的所有case语句,直到碰到一个break;
n--返回值为9,然后n值为8没有指定匹配值9,所以执行default语句,n++返回值为8,然后n值为9,所以这一次输出8
再执行case 8:空语句
再执行case 7:输出n值为9,遇到break;跳出
所以最终选C
x表示16进制,16进制是0123456789abcdef这些字符,0-9依然用阿拉伯数字表示,10在16进制中用a表示,11用b表示,依次12对应c,13对应d,14对应e,15对应f
16进制是累加到16进1,所以10进制的16用16进制的字符表示就是10,
其中1是16进位后得到的1,0是16进制的个位。
而题中的62是3个16+1个14,对应16进制的字符就是十位是3,个位是e,所以转换位16进制就是3e
而输出格式中写的是大写X,所以输出的e也会以大写E显示,所以输出是3E。
而d=6,6在16进制中也是用6表示,所以10进制转换为16进制还是用6表示,所以输出是6
首先要明确结构体数组初始化的结果为:
num[0]x=1
num[0]y=3
num[1]x=2
num[1]7=7
其次人,还不要忘了二个int的商仍是一个int。所以,输出的结果为:
3/12=6
即输出:
6
以上就是关于以下程序的运行结果是_o #include"stdio.h" voidf(int*x,inty)全部的内容,包括:以下程序的运行结果是_o #include"stdio.h" voidf(int*x,inty)、以下程序的运行结果是#include<stdio.h> void main( ) { int a=3,b=2,c=1; { int b=5,c=12; c-=b*2;、以下程序的运行结果是( )。 #include<stdio.h> void main( ) { int a=3,b=2,c=1; { int b=5,c=12;等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)