| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 779 人关注过本帖
标题:求助有关C的问题
取消只看楼主 加入收藏
klklk
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2005-4-6
收藏
 问题点数:0 回复次数:2 
求助有关C的问题

题目为:输入10个数放入一个数列并输出这个数列中的最大和最小值。我编写的内容如下可是这个里面有几个问题要请教一下:

1、不管我怎么定义数组都是从a[0]开始的。我要怎样定义才能让数组从a[1]a[10]让数组中的数于之一一对应呢?

2、为什么在显示输入的数那里,我是不是定义为每行10个数字可是为什么实际结果是第一个数输出后换一行输出9个数呢。而不是一行里输出10个数字呢??

请高手指点一下吧!!!

#include <stdio.h>

#include <math.h>

main()

{double a[10];

double max=-1e20, min=1000;/*max,min分别为最大和最小值并给出初值*/

int i, c, b; /*i控制循环量,c最大值的位置,b最小值所在的位置*/

for(i=0; i<10; i++)

{printf("输入第%d数:º", i);

scanf("%lf", &a[i]);

if(max<a[i]) /*求最大值 */

{max=a[i];

c=i+1;

}

else if(min>a[i]) /*求最小值*/

{min=a[i];

b=i+1;

}

}

printf("输入的数为ª:\n"); /*显示输入的数*/

for(i=0; i<10; i++)

{printf("%3.2f ", a[i]);

if(i%10==0)printf("\n");

}

printf("max=%3.2f\n", max);

printf("maxwaizhi:%d\n", c);

printf("min=%lf\n", min);

printf("minweizhi:%d", b);

}

搜索更多相关主题的帖子: Roman New Times 
2005-04-08 14:04
klklk
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2005-4-6
收藏
得分:0 

谢谢这位大歌,不过我不是要它每行输出1个而是要它每行输出10数。因为真正的题目是50个数的数列而不是10个数的数列。 我是这样定义的

printf("输入的数为ª:\n"); /*显示输入的数的头*/

for(i=0; i<10; i++)

{printf("%3.2f ", a[i]);

if(i%10==0)printf("\n");/*每行输出10个数*/

} 这是程序里的运行结果是第一行1个数,第二行9个数。而我用20个数的数列来试的时后结果是第一行1个数,第二行10个数,第三行9个数。请帮忙看一下到底错在哪里了啊??

2005-04-09 09:05
klklk
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2005-4-6
收藏
得分:0 
书上的原题为:从键盘读入50个数存放入一个数组,求出该数组中最大值、最小值及所在位置。
2005-04-09 12:42
快速回复:求助有关C的问题
数据加载中...
 
   



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

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