| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 783 人关注过本帖
标题:一道C语言的问题
只看楼主 加入收藏
tracyxia716
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2012-12-29
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:14 
一道C语言的问题
我是大一的新手,最近在学习关于指针的内容,自己写了这样的一段代码,出了问题但不知道错在哪,求高手指点指点。
程序代码:
#include<stdio.h>
int main()
{
    void sort(int *x);
    int a[10],*p;
    for(p=a;p<(a+10);p++)
        scanf("%d",p);
    p=a;
    sort(p);
    for(p=a;p<(a+10);p++)
        printf("%5d",*p);
    printf("\n");
}
void sort(int *x)
{
    int *k,*m,temp,*t;
    for(k=x;k<(x+10);k++)
    {for(m=x+1;m<(x+10);m++)
          *t=*k;
        if(*k<*m)
                temp=*t;
                *t=*m;
                *m=temp;}
}
总是提示内存不能为“written”
搜索更多相关主题的帖子: color C语言 大一 
2012-12-29 11:14
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
收藏
得分:3 
你这个算是什么排序?

选择?冒泡?恕某孤陋寡闻,没见过撒。


[fly]存在即是合理[/fly]
2012-12-29 11:31
tracyxia716
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2012-12-29
收藏
得分:0 
回复 2楼 azzbcc
选择,写法确实跟书上的不一样,但我实在是看不出问题在哪?
2012-12-29 11:34
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
收藏
得分:0 
回复 3楼 tracyxia716
你在看看选择排序吧

另外涉及到不能“written”的是这一句
for(m = x + 1;m < x+ 10;m++)
    *t = *k;


[fly]存在即是合理[/fly]
2012-12-29 11:40
tracyxia716
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2012-12-29
收藏
得分:0 
回复 4楼 azzbcc
其实,我以前没有用指针的时候也这样写过的,我写冒泡还有选择的时候经常不按书上的来写,我感觉只要把算法的意义理解了,怎么写那都是自己的事吧,当然我还只是菜鸟,可能认识还比较肤浅吧
2012-12-29 11:46
麦香
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:65
专家分:163
注 册:2011-10-18
收藏
得分:3 
我编译运行没问题啊,就是没排序而已
图片附件: 游客没有浏览图片的权限,请 登录注册

你们要进窄门,因为引向灭亡的门是宽的,路是大的,进去的人也多。
2012-12-29 11:48
tracyxia716
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2012-12-29
收藏
得分:0 
回复 4楼 azzbcc
这一行把他改成t=k,还是有问题,请问应该怎么改?
2012-12-29 11:48
tracyxia716
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2012-12-29
收藏
得分:0 
回复 6楼 麦香
你确定是原样复制的么?我的真的提示错误了啊!
2012-12-29 11:52
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
收藏
得分:0 
你的内循环到底是干嘛的?

m总是指到未知区域,t = k执行了10次没意义。。。


[fly]存在即是合理[/fly]
2012-12-29 11:55
技术生涯
Rank: 1
等 级:新手上路
帖 子:7
专家分:6
注 册:2012-12-29
收藏
得分:3 
图片附件: 游客没有浏览图片的权限,请 登录注册

运行结果是这样,不过我想问你你想表述什么呢???
2012-12-29 12:51
快速回复:一道C语言的问题
数据加载中...
 
   



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

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