标题:关于C语言方面一些疑问,求教指导
取消只看楼主
夜风缘
Rank: 2
等 级:论坛游民
帖 子:18
专家分:15
注 册:2017-2-16
结帖率:66.67%
已结贴  问题点数:34 回复次数:1 
关于C语言方面一些疑问,求教指导
1、
#include <stdio.h>
int main()
{
int i;
double sum;
i=1;sum=0;
do
sum+=1/i;//出错
while(++i<=10);
printf("%s",sum);
}
//计算1+1/2+1/3+……+1/10
请问上面为什么错了?
2、
char s[20]="phpto",*p=s;
char **p2=&p1;
请问表达式p2+=2为什么语法错误?
3、
void fun1(int *x,int *y)
{
int *p;
*p=*x;
*x=*y;
*y=*p;
}
void fun2(int *x,int *y)
{
int *p;
p=x;
x=y;
y=p;
}
void fun3(int *x,int *y)
{
int p;
p=*x;
*x=*y;
*y=p;
}
三个fun函数只有第三个可以成功交换,请问哪里错了吗,我知道是地址传递,可是总分不清。
4、
不合法main函数命令行参数表示形式:main(int argc,char *argv)
为什么不合法?
5、
定义结构体:
struct x
{
int x1;
int x2;
};
struct y
{
int y1;
float y2;
}y;
请问哪里出错了?
6、
链表:
p、q分别是指向链表的当前结点和下一结点,则以下可以将q所指结点从链表中删除并释放该节点的程序段是 1
1.(*p).next=(*q).next;free(q);
2.q=(*q).next;(*p).next=q;free(q);
为什么2语句就算错呢?
7、
struct person
{
int a;
int b;
struct person *next;
}class[100];
则class[10]所占内存单元的字节数为 12.
请问字节数是怎么得来的?



只有34分,还请不要介意。
搜索更多相关主题的帖子: int sum void struct next 
2018-03-10 22:30
夜风缘
Rank: 2
等 级:论坛游民
帖 子:18
专家分:15
注 册:2017-2-16
得分:0 
回复 2楼 lanke711
首先谢谢您的回答,可还有点不明白。
3、
void fun1(int *x,int *y)
{
int *p;
*p=*x;
*x=*y;
*y=*p;
}
void fun2(int *x,int *y)
{
int *p;
p=x;
x=y;
y=p;
}
void fun3(int *x,int *y)
{
int p;
p=*x;
*x=*y;
*y=p;
}
答:fun1的p指针没赋值没初始化,是野指针。fun2的x,y只能改变形参,所以fun2无效

问:fun2的形参是指针,定义的*p也是指针,通过p=x,x=y,y=p,改变的应该是地址(p代表地址,*p代表指针指向元素的值,这样理解没错吧),
而地址传递不是不受形参实参影响吗?
难道地址改变也属于形参范围内,不能被传递回去的吗?
或者那个地址传递,我理解是通过定义的指针使指向的元素发生变化,这种变化直接改变了被指向元素的值,这种变化是不受单向传递的影响的。
这样理解不知道对不对?


5、
定义结构体:
struct x
{
int x1;
int x2;
};
struct y
{
int y1;
float y2;
}y;
请问哪里出错了?
答:请看一下这样的写法:
struct y
{
int y1;
float y2;
};
struct y y;
知道哪里错了吧?

问:定义结构体不还可以定义结构体类型的同时定义结构体变量吗,比如:

struct student
{
    char no[20];        //学号
    char name[20];     //姓名
      char sex[5];      //性别
    int age;            //年龄
} stu1,stu2;   


[此贴子已经被作者于2018-3-11 14:02编辑过]

2018-03-11 14:00



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




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

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