中易网

c语言问题,求高手解答

答案:2  悬赏:0  
解决时间 2021-04-28 08:40
  • 提问者网友:沉默的哀伤
  • 2021-04-28 01:55
1根据注释填写程序所缺代码,然后运行程序,并回答相关问题:
#include
int main()
{
char ch1='I',ch2='Q';
int n1=1, n2=6;
double d1=1.25,d2=20.5;
//定义两个指针变量pch_1、pch_2分别指向ch1、ch2
___________(1)____________
//定义两个指针变量pn_1、pn_2分别指向n1、n2
___________(2)____________
//定义两个指针变量pd_1、pd_2分别指向d1、d2
___________(3)____________

//分别输出上述ch1、ch2、n1、n2、d1、d2六个变量的地址(即六个指针变量的值)
___ ________(4)__ _________
___ ________(5)__ _________
___ ________(6)__ _________

//用间接存取方式输出ch1、ch2、n1、n2、d1、d2六个变量的值
___ ________(7)__ _________
___ ________(8)__ _________
___ ________(9)__ _________

//用间接存取方式修改六个变量的值:char型大写变小写,int型减5,double型加10.0
___ ________(10)__ _________
___ ________(11)__ _________
___ ________(12)__ _________

//再次用间接存取方式输出ch1、ch2、n1、n2、d1、d2六个变量的新值
___ ________(13)__ _________
___ ________(14)__ _________
___ ________(15)__ _________

return 0;
}

问题:
(1)如何定义指针变量?怎样得到一个变量的地址并赋给指针变量?
(2)连续定义的变量是连续存放吗?如何输出变量的地址(用十六进制数表示)?
(3)怎样用间接方式存取变量?
最佳答案
  • 二级知识专家网友:兮沫♡晨曦
  • 2021-04-28 02:34
(1)
char *pch_1=&ch1, *pch_2=&ch2;
(2)
int *pn_1=&n1, *pn_2=&n2;
(3)
double *pd_1=&d1, pd_2=&d2;

(4)
printf("%ld %ld\n", pch_1, pch_2);

(5)
printf("%ld %ld\n", pn_1, pn_2);
(6)
printf("%ld %ld\n", pd_1, pd_2);
(7)
printf("%c %c\n", *pch_1, *pch_2);
(8)
printf("%d %d\n", *pn_1, *pn_2);
(9)
printf("%f %f\n", *pd_1, *pd_2);
(10)
*pch_1 += 32; *pch_2 += 32;
(11)
*pn_1 -= 5; *pn_2 -= 5;
(12)
*pd_1 += 10.0; *pd_2 += 10.0;
(13)
printf("%c %c\n", *pch_1, *pch_2);
(14)
printf("%d %d\n", *pn_1, *pn_2);
(15)
printf("%f %f\n", *pd_1, *pd_2);
全部回答
  • 1楼网友:厭世為王
  • 2021-04-28 04:12

这是结果:

以下是程序

#include<stdio.h> #include <math.h> main() { int a,b,c,p; float x1,x2; scanf("%d%d%d",&a,&b,&c); p=b*b-4*a*c; if (p>=0) {x1=(-b+sqrt(p))/(2*a); x2=(-b-sqrt(p))/(2*a); printf("%f,%f\n",x1,x2);} else printf("

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息