C语言输入多组测试数据 ,用什么语句可以判断怎么给数组输入数据据的结束

欢迎加入我们,一同切磋技术。 &
用户名: &&&
密 码: &
共有 14636 人关注过本帖
标题:如何实现输入多组数据
(新手提问)
等 级:新手上路
帖 子:11
结帖率:40%
&&已结贴√
&&问题点数:10&&回复次数:7&&&
如何实现输入多组数据
(新手提问)
例如输入两个正整数,输出较大的那个
第一种:每行输入两个正整数,最后以输入0 0作为结束,然后一并输出答案
第二种:先输入一个正整数T,下面的T行每行都是输入两个正整数,最后一并输出答案
谢谢各位高手,分数不多,全给了
搜索更多相关主题的帖子:
等 级:论坛游侠
帖 子:105
专家分:166
你试着用while(scanf(&%d%d&,&x,&y)!=EOF)这个循环来做下,其中那个scanf返回的是输入的个数,EOF在标准库下是-1
例:&&while(scanf(&%d%d&,&x,&y)!=EOF&&(x!=0||y!=0)){ //自己补充.......}
等 级:新手上路
帖 子:11
回复 楼主 scau_grated
我试过,这样的话只要一输入一个数据,结果就会输出,做不到一起输出喔……………………
等 级:新手上路
&&& int iNum1=0,iNum2=0;
&&& int iSum=0;
&&& int iMax=0;
&&& int a[100];
&&& while(1)
&&& {&&&&&
&&&&&&&&printf(&请输入第一个正整数:&);
&&&&&&&&scanf(&%d&,&iNum1);
&&&&&&&&printf(&请输入第二个正整数:&);
&&&&&&&&scanf(&%d&,&iNum2);
&&&&&&&&if (iNum1!=0||iNum2!=0)
&&&&&&&&&&&&iMax=iNum1&iNum2?iNum1:iNum2;
&&&&&&&&else
&&&&&&&&&&&&
&&&&&&&&}&&&
&&&&&&&&a[iSum]=iM
&&&&&&&&iSum+=1;&&&
&&& for (int i=0;i&iSi++)
&&&&&&&&printf(&%d&,a[i]);
希望能对你的第二种有帮助。。。 有不懂可以再问
等 级:蝙蝠侠
帖 子:294
专家分:817
第二种方案,先用一个数保存组数,然后在组数减为0前读取新组并处理:
scanf(&%d&,&total);
for(;total&0;--total)
&&& 读取两个数并输出大的
酱油实习生
等 级:贵宾
威 望:304
帖 子:25793
专家分:48814
程序代码:
#include &stdio.h&
#define MAX_LINES&&& 100&&&&&&&&&&&&// 最大處理100行
unsigned int GetLines(const int UpLimit);
void ClearInputBuffer();
void Pause(void);
void main(void)
&&& unsigned int Lines = GetLines(MAX_LINES);
&&& printf_s(&您輸入的是: %d\n\n&, Lines);
&&& if (Lines == <font color=#)
&&&&&&&&Lines = MAX_LINES;
&&& int x,
&&& unsigned int Counter = <font color=#;
&&&&&&&&x = <font color=#;
&&&&&&&&y = <font color=#;
&&&&&&&&printf_s(&請輸入第%d行數據(x,y): &, Counter + <font color=#);
&&&&&&&&scanf_s(&%d,%d&, &x, &y);
&&&&&&&&printf_s(&x=%d, y=%d\n&, x, y);&&&&&&&&&// 要集中輸出,把數據轉存到數組、鏈表或集合中,自己喜歡怎樣處理都沒問題
&&&&&&&&ClearInputBuffer();
&&& } while ((++Counter & Lines) && !((x == <font color=#) && (y == <font color=#)));
&&& Pause();
unsigned int GetLines(const int UpLimit)
&&& unsigned int Lines = <font color=#;
&&&&&&&&printf_s(&請輸入欲讀入的數據行數(0-%d): &, MAX_LINES);
&&&&&&&&if (scanf_s(&%u&, &Lines) & <font color=#)
&&&&&&&&&&&&Lines = <font color=#;
&&&&&&&&ClearInputBuffer();
&&& } while(Lines & UpLimit);
&&& return L
// 清空輸入緩衝區
void ClearInputBuffer(void)
&&& while (getchar() != '\n')
void Pause(void)
&&&&&&&&ch = getchar();
&&& } while((ch != EOF) && (ch != '\n'));
[ 本帖最后由 TonyDeng 于
21:27 编辑 ]
授人以渔,不授人以鱼。
等 级:新手上路
等 级:新手上路
输入多组数据 还有别的方法吗 ?
版权所有,并保留所有权利。
Powered by , Processed in 0.030654 second(s), 7 queries.
Copyright&, BCCN.NET, All Rights Reservedc语言程序中输入多组数据,每组一行,以-1结束,怎么写? - 知乎3被浏览778分享邀请回答115 条评论分享收藏感谢收起0添加评论分享收藏感谢收起拒绝访问 | www.1398.org | 百度云加速
请打开cookies.
此网站 (www.1398.org) 的管理员禁止了您的访问。原因是您的访问包含了非浏览器特征(df6646-ua98).
重新安装浏览器,或使用别的浏览器输入多组数据 并分别处理数据,并同时输出处理后的数据,,求助【c语言吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:539,456贴子:
输入多组数据 并分别处理数据,并同时输出处理后的数据,,求助收藏
输入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离。
input 输入数据有多组,每组占一行,由4个实数组成,分别表示x1,y1,x2,y2,数据之间用空格隔开。 output 对于每组输入数据,输出一行,结果保留两位小数。 sample_input 0 0 0 1 0 1 1 0 sample_output 1.00 1.41 我写的只会输入一组数据,它给一个结果
输入用while(scanf(.....) != EOF)
#include &stdio.h&#include &stdlib.h&#include &math.h&int main(){
double x1,y1,x2,y2,e,i=0;
while(scanf(&%lf%lf%lf%lf&,&x1,&y1,&x2,&y2)!=EOF)
e=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
return 0;}循环中间还得写点什么
登录百度帐号推荐应用

我要回帖

更多关于 sql输入数据语句 的文章

 

随机推荐