| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1872 人关注过本帖
标题:新手求助
只看楼主 加入收藏
死了都要C
Rank: 4
来 自:四川成都
等 级:贵宾
威 望:13
帖 子:1582
专家分:116
注 册:2006-12-7
收藏
得分:0 
冒泡排序吧```

输入数组的数据地一个数据是a[0]不是a[1]哦```

女施主``我给你``送茶来了```师太``你就从了老衲吧``
代码本天成~~~妙头偶得之```
2008-07-06 03:04
都都
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2008-7-3
收藏
得分:0 
[bo][un]死了都要C[/un] 在 2008-7-6 03:04 的发言:[/bo]

冒泡排序吧```

输入数组的数据地一个数据是a[0]不是a[1]哦```

是冒泡排序,这里是故意把a[1]设为数组的第一位了,这样在有11个数据的数组里,从a[1]到a[10]一共是10个数据,a[0]跳过去了。

不知道怎么运行不下去了。希望大家来帮帮忙找错误。
2008-07-07 01:12
谢挺疯
该用户已被删除
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2008-07-07 02:07
都都
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2008-7-3
收藏
得分:0 
谢谢楼上的两位。
这个题是我自己抄错了,里面输入scanf函数和输出printf的限制表达式i<11,我都给写错成了i<=11了,这样,本来数组要求输入从 a[1]到a[10] 10个数据,变成了要输入到a[11]的11个数据。因此我每次只输入10个数据,而程序还在等待我的第11个数据,所以才运行不下去的。
这里就我自己犯的错误向大家道歉。
2008-07-07 02:44
都都
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2008-7-3
收藏
得分:0 
刚刚实验了关于将字符串复制到字符数组复制的函数:
strc(str1,str2,2);
意义是将字符串2的前两位复制到字符数组1里去。
可是我运用这个函数得到的却是将整个字符串2复制到了字符数组1里去。
main()
{
    char str1[10],str2[]={"China"};
    strcpy(str1,str2,2);
    puts(str1);
    strcpy(str1,"super",2);
    puts(str1);
    getch();
}
结果是  China         而不是Ch
        super               su

是我用错了这个函数吗,还是有什么别的注意事项?
2008-07-09 00:56
独孤小梦
Rank: 1
等 级:新手上路
威 望:1
帖 子:338
专家分:0
注 册:2008-6-5
收藏
得分:0 
#include"stdio.h"
#include"string.h"
#include"stdlib.h"
void main()
{
    char str1[10],str2[]={"China"};
    strncpy(str1,str2,2);
    puts(str1);
    strncpy(str1,"super",2);
    puts(str1);
exit(0);
}
试下这个!是strncpy吧!不过后面的字符貌似也出现了!

编程小菜
2008-07-09 01:08
woshiyun
Rank: 1
等 级:新手上路
威 望:2
帖 子:348
专家分:0
注 册:2008-6-16
收藏
得分:0 
[bo][un]独孤小梦[/un] 在 2008-7-9 01:08 的发言:[/bo]

#include"stdio.h"
#include"string.h"
#include"stdlib.h"
void main()
{
    char str1[10],str2[]={"China"};
    strncpy(str1,str2,2);
    puts(str1);
    strncpy(str1,"super",2);
    puts(str1) ...

strncpy
不会给str1添加结束符,
自己要手工加。
2008-07-09 09:33
笨鸟学跑
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2008-7-8
收藏
得分:0 
{
    float x,y;
    scanf("%f",&x);
    if (x<1)
    y=x;
    else if (1<=x&&x<10)
    y=2*x-1;
    else
    y=3*x-11;
    printf("%f",y);
    getch();
}
这样就OK了,C中没有你那种1<=X<10的判断
2008-07-09 13:40
都都
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2008-7-3
收藏
得分:0 
[bo][un]woshiyun[/un] 在 2008-7-9 09:33 的发言:[/bo]


strncpy
不会给str1添加结束符,
自己要手工加。

如何手动给str1加结束符呢, puts(str1"\0")??
2008-07-10 01:31
都都
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2008-7-3
收藏
得分:0 
刚做关于函数形参,实参和返回值的例题,这个题是说,函数值max()和返回值z的类型不一样,函数值为整型,而返回值z为实型,则最后返回的值依函数值为准,为整型。这点程序执行的没有错,但是max本是一个求两数之间最大值的函数,我输入一个1.5和2.5得到的结果却是1,就是说,返回的值是较小的这个,而不是应该得到的2. 大家能帮我找找错误看看是为什么吗?
main()
{
    float a,b;
    int c;
    scanf("%f,%f",&a,&b);
    c=max(a,b);
    printf("Max is %d",c);
    getch();
}
max(float x,float y)
{
    float z;
    z=x>y? x:y;
    return(z);
}
2008-07-11 02:03
快速回复:新手求助
数据加载中...
 
   



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

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