重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
找答案首页 > 全部分类 > 求职面试
搜题
网友您好, 请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
[主观题]

编写程序,用一个函数交换两个变量的值。

暂无答案
更多“编写程序,用一个函数交换两个变量的值。”相关的问题

第1题

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

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.以上说法都不对

点击查看答案

第2题

阅读下列说明和程序,回答问题l至问题3.将答案填入答题纸的对应栏内。

【说明】

在开发某嵌入式系统时,设计人员根据系统要求,分别编写了如下程序,其中:

【程序1】;实现两个变量的值的互换;

【程序2】:完成某功能的C语言程序;

【程序3】和【程序4】:是P、V操作的形式化定义,设S为信号量。在多道程序系

统中,进程是并发执行的。这些进程间存在着不同的相互制约关系,主要表现为同步和

互斥两个方面。信号量是解决进程间同步与互斥的有效方法。

【程序1】

【程序3】

P操作的形式化定义

P (S)

{

(1):

If(2) {

阻塞该进程;

将该进程插入信号量S的等待队列

}

}

【程序4】

V操作的形式化定义:

V(S)

{

(3)

if(4) {

从信号量s的等待队列中取出队首进程

将其插入就绪队列:

}

}

【问题1】(6分)

执行【程序1】后,没有能够实现两个变量值的交换,为什么?请修改上述函数

实现两个变量值的交换,要求函数无返回值,形式为:void swap(...)。请将答案填写在

答题纸中对应的栏目。

【问题2】(3分)

请问【程序2】运行结果是什么?

【问题3】(6分)

请简述什么是临界资源?什么是临界区?

请完成【程序3】和【程序4】的形式化定义,将应填入(n)处的内容写在答题纸

的对应栏中。

点击查看答案

第3题

实验十一 C程序的指针(二) 一、实验目的 1. 掌握指针和...

实验十一 C程序的指针(二) 一、实验目的 1. 掌握指针和指针变量的概念。 2. 掌握简单指针变量的定义和基本使用方法。 3. 熟悉指针和一维数组的关系,掌握指向一维数组的指针变量的定义方法,熟练使用指针变量访问一维数组元素。 4. 了解指针和二维数组的关系,掌握用指针表示二维数组元素的方法。 5. 了解指针与字符串的关系,能熟练使用指针处理字符串。 二、实验内容及实验步骤 1. 调试下列程序,使之具有如下功能:任意输入2个数,调用两个函数分别求: ⑴ 2个数的和, ⑵ 2个数交换值. 要求用函数指针调用这两个函数,结果在主函数中输出. main() { int a,b,c,(*p)(); scanf("%d,%d",&a,&b); p=sum; *p(a,b,c); p=swap; *p(a,b); printf("sum=%d\n",c); printf("a=%d,b=%d\n",a,b); } sum(int a,int b,int c) { c=a+b; } swap(int a;int b) { int t; t=a; a=b; b=t; } 调试程序时注意参数传递的是数值还是地址. 2. 测试、运行自己编写的程序。 (1)写一个函数,实现两个字符串的比较。即自己写一个strcmp函数,函数原型为 int strcmp(char * p1,char * p2); 设p1指向字符串s2,要求当s1=s2时,函数返回值为0;如果s1<>s2,则返回它们二者第一个不相同的ASCII码值(如“BOY”与“BAD”的第二个字母不相同,“O”与“A”之差为79-65=14);如果s1>s2,则输出正值;如果s1<s2,则输出负值。 两个字符串s1、s2由main函数输入,strcmp函数的返回值也由main函数输出。 (2)用指向指针的指针的方法对n个整数排序并输出。要求将排序单独写成一个函数。n和各整数在主函数中输入,最后在主函数中输出。 (3)有n个人围成一圈,顺序排号。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位。 三、实验报告要求 写明: 1. 实验目的 2. 实验内容与步骤 3. 编写的程序(题目,经调试、运行后正确的程序) 4. 思考题的解决方法。 5.>

点击查看答案

第4题

编写一个实现两个数交换的函数。
点击查看答案

第5题

以下4个程序中,不能实现两个实参值进行交换的是 ( )。

A.void swap (float *p, float *q) { float *t ,a; t = &a; t = p; *p = *q; *q = *t; } void main () { float x = 8.0;y = 9.0; swap (&x, &y); cout<<x<<", "<<y<<

B.void swap (float *p, float *q) { float a; a = *p; *p = *q; *q = a; } void main() { float x = 8.0;y = 9.0; swap (&x, &y); cout<<x<<", "<<y<<end1;

C.void swap (float *p, float *q) { float x; x = *p; *p = *q; *q = x; } void main() { float a,b.; *a = 8.0;*b = 9.0; swap (a, b) ;

D.void swap (float &p, float &q) { float a; a = p; p = q; q = a; } void main() { float a = 8.0,b = 9.0; swap (a,b); cout<<x<<", "<<y<<

点击查看答案

第6题

编写程序,输入一个正整数n(1≤n≤10)再输入n个整数,将最小值与第一个数交换,最大值与最后一个数交换,然后输出交换后的n个数。

点击查看答案

第7题

编写程序, 输入一个正整数n1≤n≤10)再输入n个整数,先输出最大值及其下标(设最大值唯一,小标从0开始),再讲最大值与最后一个数交换,并输出交换后的n个数。

点击查看答案

第8题

编写一个函数,实现两个数的交换。void f(int *a, int *b){————————————————————————}

点击查看答案

第9题

编写一算法交换二叉树中所有结点的左、右子树。
点击查看答案

第10题

一个有两个运算对象的逻辑运算符,如果交换运算对象的次序,产生一逻辑等价命题,则称为可交换的。

(a)确定下述逻辑运算符哪些是可交换的:

(b)用真值表证明你的断言。

点击查看答案
下载上学吧APP
客服
TOP
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
选择优惠券
优惠券
请选择
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

功能 扣减规则
基础费
(查看答案)
加收费
(AI功能)
文字搜题、查看答案 1/每题 0/每次
语音搜题、查看答案 1/每题 2/每次
单题拍照识别、查看答案 1/每题 2/每次
整页拍照识别、查看答案 1/每题 5/每次

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)
订单号:
遇到问题请联系在线客服
请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
警告:系统检测到您的账号存在安全风险

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

- 微信扫码关注上学吧 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反上学吧购买须知被冻结。您可在“上学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注上学吧 -
请用微信扫码测试
选择优惠券
确认选择
谢谢您的反馈

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

上学吧找答案