| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 723 人关注过本帖
标题:[讨论]高手帮忙看下错在哪里!
只看楼主 加入收藏
shiuly
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2005-4-7
收藏
 问题点数:0 回复次数:5 
[讨论]高手帮忙看下错在哪里!

using System;

namespace suanfa { /// <summary> /// Class1 的摘要说明。 /// </summary> class Class1 { /// <summary> /// 应用程序的主入口点。 /// </summary> [STAThread] static void Main(string[] args) { int i=0,sum_a=0,sum_b=0,sum_c=0;//a为成绩总和;b为(成绩*学分)总和,c为学分总和. int[,]arr=new int[100,2]; float avg_a=0,avg_b=0;//avg_a为平均分,avg_b为加权平均分,也就是sum(成绩*学分)/sum(学分) do { Console.WriteLine("請輸入您的成績:"); arr[i,0]=int.Parse(Console.ReadLine()); Console.WriteLine("請輸入您的學分:"); arr[i,1]=int.Parse(Console.ReadLine()); sum_a+=arr[i,0]; sum_c+=arr[i,1]; sum_b+=arr[i,0]*arr[i,1]; i++; }while (Console.ReadLine()=="#");//当输入完后,输入一个字符#来结束输入,开始计算; avg_a=sum_a/i; avg_b=sum_b/sum_c; Console.WriteLine("您的平均分是:"+avg_a); Console.WriteLine("您的加權平均分是:"+avg_b); System.Threading.Thread.Sleep(30000); } } } 请高手帮忙看下错在哪里.我循环不了啊.输入一组数据后就不能再输入了. 这个do+while循环是怎么样子的啊.

搜索更多相关主题的帖子: 应用程序 
2005-04-10 23:29
幻风幻云
Rank: 1
等 级:新手上路
帖 子:762
专家分:0
注 册:2005-1-14
收藏
得分:0 
do 语句
while 表达式

当表达式为真的时候,返回到do语句,假的时候,跳出

所以le (Console.ReadLine()=="#");应该改为le (Console.ReadLine()!="#");

2005-04-11 09:38
yichen
Rank: 1
等 级:新手上路
帖 子:303
专家分:0
注 册:2005-3-9
收藏
得分:0 

do...while 语句

将一个语句块执行一次,然后重复该循环的执行,直到条件表达式为 false
do   statementwhile (expression)

参数

statement
必选。expressiontrue 时要执行的语句。可以是复合语句。
expression
必选。一个可以被强迫转换为布尔值 true false 的表达式。如果 expressiontrue,则再执行一次循环。如果 expressionfalse,则循环终止。

衣带渐宽终不悔, 为伊消得人憔悴。 纸上得来终觉浅, 绝知此事要躬行。
2005-04-11 12:25
yichen
Rank: 1
等 级:新手上路
帖 子:303
专家分:0
注 册:2005-3-9
收藏
得分:0 
版主, 你说得我改过之后还是不行!

衣带渐宽终不悔, 为伊消得人憔悴。 纸上得来终觉浅, 绝知此事要躬行。
2005-04-11 12:40
幻风幻云
Rank: 1
等 级:新手上路
帖 子:762
专家分:0
注 册:2005-1-14
收藏
得分:0 
按照我的改过后

会循环输入 成绩 学分

但是不会跳出

那是因为你的程序就不可能执行while里面的条件

2005-04-11 13:34
幻风幻云
Rank: 1
等 级:新手上路
帖 子:762
专家分:0
注 册:2005-1-14
收藏
得分:0 
以下是引用shiuly在2005-4-10 23:29:34的发言:

using System;

namespace suanfa { /// <summary> /// Class1 的摘要说明。 /// </summary> class Class1 { /// <summary> /// 应用程序的主入口点。 /// </summary> [STAThread] static void Main(string[] args) { string str; int i=0,sum_a=0,sum_b=0,sum_c=0;//a为成绩总和;b为(成绩*学分)总和,c为学分总和. int[,]arr=new int[100,2]; float avg_a=0,avg_b=0;//avg_a为平均分,avg_b为加权平均分,也就是sum(成绩*学分)/sum(学分) do { Console.WriteLine("請輸入您的成績:"); arr[i,0]=int.Parse(Console.ReadLine()); Console.WriteLine("請輸入您的學分:"); arr[i,1]=int.Parse(Console.ReadLine()); sum_a+=arr[i,0]; sum_c+=arr[i,1]; sum_b+=arr[i,0]*arr[i,1]; i++; Console.WriteLine("继续输入或退出?请选择y/n"); str=Console.ReadLine(); }while (str=="y");//当输入完后,输入一个字符#来结束输入,开始计算; avg_a=sum_a/i; avg_b=sum_b/sum_c; Console.WriteLine("您的平均分是:"+avg_a); Console.WriteLine("您的加權平均分是:"+avg_b); System.Threading.Thread.Sleep(30000); } } } 请高手帮忙看下错在哪里.我循环不了啊.输入一组数据后就不能再输入了. 这个do+while循环是怎么样子的啊.

这样就ok了,知道你那里错了吗?


2005-04-11 13:48
快速回复:[讨论]高手帮忙看下错在哪里!
数据加载中...
 
   



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

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