| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1981 人关注过本帖
标题:[求助]帮我看下这个程序
取消只看楼主 加入收藏
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
收藏
 问题点数:0 回复次数:5 
[求助]帮我看下这个程序

#include<Stdio.h> int a[100],n;char c='y'; main() {void sort(int a[],int n); void sum(int a[],int n); void max(int a[],int n); int i,j; printf("\nthe number total n="); scanf("%d",&n); printf("please input the %d numbers:\n",n); for(i=1;i<=n;i++) scanf("%d",&a[i]); printf(" the data prosess system\n"); printf("1:find the max:\n"); printf("2:sort:\n"); printf("3:sum:\n"); while(c=='y') { while(1) {printf("please choose :"); scanf("%d",&j); if(j>=1&&j<=3) break; else printf("input error!\n"); } switch(j) {case 1: max(a,n); break; case 2: sort(a,n); break; case 3: sum(a,n); } printf("do you want continue(y/n?):"); c=getchar();      /*这里还能理解,但如果没有下面的三个,就不能continue*/ } } void max(int a[100],int n) {int i,t;t=a[0]; for(i=1;i<=n;i++) if(t<a[i]) t=a[i]; printf("the max=%d\n",t); c=getchar();   /*这里就不懂了,还有下面的两个*/ } void sort(int a[],int n) {int i,j,t; for(i=1;i<n;i++) for(j=i+1;j<=n;j++) if(a[i]>a[j]) {t=a[i];a[i]=a[j];a[j]=t;} for(i=1;i<=n;i++) {if(i%8==0) printf("\n"); printf("%8d",a[i]); } printf("\n"); c=getchar();     /*这 } void sum(int a[],int n) {int i,s=0; for(i=1;i<=n;i++) s=s+a[i]; printf("the sum=%d\n",s); c=getchar();   /*这

}

上面那个程序我调试了半天,好不容易调度出来了,但有几个地方不明白:

为什么每个函数的后面要加一个:c=getchar();

才能接收到字符啊,还有就是上面的主函数还要有一个c=getchar();

否则不能:continue;

谁能帮我解释一下啊,谢谢。

[此贴子已经被作者于2004-07-02 11:05:04编辑过]

搜索更多相关主题的帖子: void max include numbers please 
2004-07-02 11:00
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
收藏
得分:0 

我调试的时候把函数里面的:c=getchar();去掉试了一下,但是无法继续

只有加上:c=getchar();才能继续,我想函数中的:c=getchar();是不是用来接收回车的啊

如果没有的话,c='\n',这样c!='y'就跳出循环了.

是不是这样的啊?


2004-07-03 17:08
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
收藏
得分:0 

你用的什么编译器啊,

我用的TC2.0可以运行的,

调试了半天可以运行,就是有几个地方不大懂,所以才请高手们帮忙!


2004-07-04 08:21
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
收藏
得分:0 

谢谢高手们帮忙,现在明白了!


2004-07-05 21:48
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
收藏
得分:0 

本人英语学得不好,有个单词拼错了,不好意思啊!

prosess应改为:process


2004-07-05 21:50
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
收藏
得分:0 
我没怎么注意,谢谢啊

2004-07-22 08:16
快速回复:[求助]帮我看下这个程序
数据加载中...
 
   



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

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