题目内容 (请给出正确答案)
[单选题]

有函数 void swap(int * p1 , int * p2) { int temp; temp=*p1; *p1=*p2; *p2=temp; } 下面程序中,()能正确地调用swap函数,使数组前2个元素的值互换。

A.#include <stdio.h> int main() { int a[5]={1,2,3,4,5}; swap(&a[0],&a[1]); printf("调用函数后:a[0]=%d\ta[1]=%d\n",a[0],a[1]); return 0; }

B.#include <stdio.h> int main() { int a[5]={1,2,3,4,5},*p; p=a; swap(p,p+1); printf("调用函数后:a[0]=%d\ta[1]=%d\n",a[0],a[1]); return 0; }

C.#include <stdio.h> int main() { int a[5]={1,2,3,4,5},*p; swap(a,a+1); printf("调用函数后:a[0]=%d\ta[1]=%d\n",a[0],a[1]); return 0; }

D.#include <stdio.h> int main() { int a[5]={1,2,3,4,5},*p; swap(a[0],a[1]); printf("调用函数后:a[0]=%d\ta[1]=%d\n",a[0],a[1]); return 0; }

查看答案
如搜索结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能会需要:
您的账号:
发送账号密码至手机
发送
更多“有函数 void swap(int * p1 , int *…”相关的问题

第1题

再看看下面的一段程序有什么错误:

swap( int* p1,int* p2 )

{

int *p;

*p = *p1;

*p1 = *p2;

*p2 = *p;

}

点击查看答案

第2题

分析下面函数 swap(int *p1,*p2) {int *p; *p=*p1;*p1=*p2;*p2=*p; } 则该程序功能为( )

A.交换*p1和*p2的值

B.正确,但无法改变*p1和*p2的值

C.交换*p1和*p2的地址

D.可能造成系统故障,因为使用了空指针

点击查看答案

第3题

写出下列程序的执行结果。 swap(p1,p2) int*p1,*p2; {int p; p=*p1;*p1=*p2;*p2=p; } main() {int a,b,*p1,*p2; scanf("%d%d",&a,&B); p1=&a;p2=&b; if(a<B)swap(p1,p2); printf("\na=%d,b=%d\n",a,B); } 若a=7,b=8,则程序的运行结果为( )。

点击查看答案

第4题

下面程序应能对两个整型变量的值进行交换。以下正确的说法是( )。 Void swap(int p,int q) { int t; t=p, p=q; q=t; ) void main() { int a=10,b=20; printf(“(1)a=%d,b=%d\n”,a,b); swap(&a,&b); printf(”(2)a=%d,b=%d\n”,a,b); )

A.该程序完全正确

B.该程序有错,只要将语句“swap(&a,&b);”中的参数改为a,b即可

C.该程序有错,只要将swap函数中的形参p和q以及t均定义为指针(执行语句不变)即可

D.以上说法都不对

点击查看答案

第5题

若输入5、9,以下程序的运行结果为【 】。 main() { int a,b,*pt1,*pt2; printf("input a,b:"); scanf("%d%d",&a,&b); pt1=&a; pt2=&b; if(a<b) swap(pt1,pt2); printf("\n%d,%d\n",*pt1,*pt2); } swap(p1,p2) int *p1,*p2; { int *p; p=p1; p1=p2; p2=p; }

点击查看答案

第6题

阅读以下代码,回答问题:1至问题3 ,将解答填入答题纸的对应栏内。 【代码1】 include<stdio.h > void swap(int x, int y) { int tmp =x; x= y; y= tmp; } int maim() { int a= 3, b= 7; printf("a1= %d b1=%d\n",a,b); Swap( a, b); Printf("a2 = %d b2=%d\n”,a,b); return 0; } 【代码2】 include<stdio.h> define SPACE " //空格字符 Int main() { char str[128] =" Nothing is impossible! "; int i,num =0,wordMark=0; for(i=0;str[i];i++) If(str[i]==SPACE) WordMark=0; else If(wordMark=0){ wordMark=1; num++; } Printf(“%d/n”,num) return 0; } 【代码3】 include<stdio.h> define SPACE " //空格字符 int countStrs(char *); int main() { char str[128] = " Nothing is impossible! "; Printf("%d/n",(1)(str)) return 0; } int countStrs(char *p) { int num=0, wordMark= 0; for(;(2); p++) { If((3)==SPACE) wordMark= 0; else if( !wordMark ) { wordMark = 1; ++num } } return (4) ; }

【问题1】(4分) 写出代码1运行后的输出结果。 【问题2】(3分) 写出代码2运行后的输出结果。 【问题3】(8分) 代码3的功能与代码2完全相同,请补充3中的空缺,将解答写入答题纸的对应栏内。

点击查看答案

第7题

下面程序应能对两个整型变量的值进行交换。以下正确的说法是

main()

{int a=10,b=20;

printf("(1)a=%d,b=%d\n",a,b);

swap(&a,&b);

printf("(2)a=%d,b=%d\n",a,b);

}

swap(int p,int q)

{int t;

t=p;p=q;q=t;

}

A.该程序完全正确

B.该程序有错,只要将语句swap(&a,&b);中的参数改为a,b即可

C.该程序有错,只要将swap()函数中的形参p和q以及t均定义为指针(执行语句不变)即可

D.以上说法都不对

点击查看答案

第8题

下列函数 void fun(int *p1,int *p2){ int p;p=*p1;*p1=*p2;*p2=p;}的功能是()

A、A.交换*p1和*p2的值

B、B.语法正确.但无法交换*p1和*p2的值

C、C.交换*p1和*p2的地址

D、D.有语法错误

点击查看答案

第9题

若输入5、9,以下程序的运行结果为【 】。 main() int *p1,*p2; { int *p; p=p1; p1=p2; p2=p; }
点击查看答案
热门考试 全部 >
相关试卷 全部 >
账号:
你好,尊敬的上学吧用户
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改
谢谢您的反馈

您认为本题答案有误,我们将认真、仔细核查,
如果您知道正确答案,欢迎您来纠错

警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

微信搜一搜
上学吧
点击打开微信
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反上学吧购买须知被冻结。您可在“上学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
微信搜一搜
上学吧
点击打开微信