标题:几个简单C问题.
只看楼主
Fjcyz
Rank: 2
等 级:论坛游民
威 望:1
帖 子:175
专家分:25
注 册:2006-2-6
 问题点数:0 回复次数:26 
几个简单C问题.

1.exp 函数是什么作用? 能否用数学表达式表达
2. log 函数是什么作用?能否用数学表达式表达.
3.对共用体的概念挺模糊的,大家对共用体的理解?
4.例:
#include "stdio.h"
int s();
int x,y;
main ()
{
int n;
x=1;y=2;
n=s();
printf ("x=%d,y=%d,n=%d",x,y,n);
}
int s()
{
int z;
x=3;y=4;
z=x+y;
return(z);
}

怎么理解该题? return的意思是把Z值返回到 main函数中,是吗? 如果没有return, n=0对吧?

5.如何理解该题
main()
{
union{short a;char ch;}M;
M.a=100;m.ch='A';
printf ("%d,%d,%c \n",sizeof(M),M.a,M.ch);
}

6.如何理解该题
main ()
{
union
{
int i;
struct
{
char first;
char second;
}sql_1;
}number;
number.i=0x4445;
printf ("%c%c\n",number.sql_1.first,number.sql_1.second);
number.sql_1.first='c';
number.sql_1.sencond='d';
printf ("%x\n",number.i);
}

搜索更多相关主题的帖子: include return 表达式 
2006-02-12 11:08
cdmalcl
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:24
帖 子:4091
专家分:524
注 册:2005-9-23
得分:0 
1 exp指数函数
2 log对数函数
3 。。。。。。
4 return是把Z指返回到main中去 但如果没有return n等于7
你可以在printf ("x=%d,y=%d,n=%d",x,y,n);后面加一个getch();就知道拉


5 可以把上面的程序改写为:
main()
{
short a;
char ch;
a=100;
ch='A';
......

M.a相当于a
M.ch相当于ch

sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等。它并不是函数。sizeof操作符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由操作数的类型决定。

6 同5

2006-02-12 11:30
超级新手
Rank: 2
等 级:论坛游民
帖 子:185
专家分:59
注 册:2006-2-9
得分:0 
1、2作用我想你是知道的,你可以看库函数,他两是怎么实现功能的;
3、union不同于struct,因为它们共用一块存储区域,
union a
{int a ;
char b;
double c;
} ;/*他们占的空间为double的,也就是最大占位,由编译器进行优化,结构体就不同*/


快快来我的群:13485998
学学C,玩玩算法,搞搞加密,比比谁更菜?
ARM恨死你。
2006-02-12 11:32
Fjcyz
Rank: 2
等 级:论坛游民
威 望:1
帖 子:175
专家分:25
注 册:2006-2-6
得分:0 
1 - 2 题,书上无解是.是说是指数函数与对数函数.所以不是很清楚是干吗的.
如 exp(8.0)=2980.957987 怎么算的?
log (5.8928)=1.773731 怎么算的?

4题 return(z); 这句可要可不要,两个输出结果都一样.不明白 return有何作用. 加个 getch();结果还是一样.


最好的域名、虚拟主机、VPS  www.
2006-02-12 11:46
Fjcyz
Rank: 2
等 级:论坛游民
威 望:1
帖 子:175
专家分:25
注 册:2006-2-6
得分:0 
5 题输出结果是

2,65,A 如何理解?

最好的域名、虚拟主机、VPS  www.
2006-02-12 11:50
超级新手
Rank: 2
等 级:论坛游民
帖 子:185
专家分:59
注 册:2006-2-9
得分:0 

Exp returns the value of e raised to the power of X, where e is the base of the natural logarithms.

return没有结果一样,那是你最后一个算式结果,如果你有2个结果,你想返回哪个?
z1=x-y;
z2=x+y;
他返回最后一个算式

union,你使用的值,是最后一次出现的!因为他们公用存储空间!


快快来我的群:13485998
学学C,玩玩算法,搞搞加密,比比谁更菜?
ARM恨死你。
2006-02-12 12:05
Fjcyz
Rank: 2
等 级:论坛游民
威 望:1
帖 子:175
专家分:25
注 册:2006-2-6
得分:0 

函数还是不明白,能否以数学表达式说明?

return 还是不明白,能否以程序方式说明下?

^_^ 辛苦了


最好的域名、虚拟主机、VPS  www.
2006-02-12 12:20
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
得分:0 

return的问题以前和knocker、天使他们争论过。现在不记得了。

因为函数都是用栈传递参数值的,所以如果不用return,那么s将会返回最后一个利用到栈的运算


淘宝杜琨
2006-02-12 12:25
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
得分:0 

int fun()
{
int a=1,b;
b=a+a;
}

main()
{
printf("%d",fun());
getch();
}

比如这个
哎~~好象感觉解释得不对~~~~我也忘记了~郁闷


淘宝杜琨
2006-02-12 12:30
Fjcyz
Rank: 2
等 级:论坛游民
威 望:1
帖 子:175
专家分:25
注 册:2006-2-6
得分:0 
六个问题,我一个也没明白下来..

最好的域名、虚拟主机、VPS  www.
2006-02-12 13:07



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-45232-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.451140 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved