C#输入并输出二维数组
时间: 2023-05-23 20:06:04 浏览: 695
可以使用以下代码进行输入和输出二维数组:
```csharp
// 定义一个二维数组
int[,] arr = new int[2, 3];
// 输入二维数组的值
for (int i = 0; i < 2; i++)
{
for (int j = 0; j < 3; j++)
{
Console.Write("请输入[{0},{1}]的值:", i, j);
arr[i, j] = int.Parse(Console.ReadLine());
}
}
// 输出二维数组的值
for (int i = 0; i < 2; i++)
{
for (int j = 0; j < 3; j++)
{
Console.Write("{0}\t", arr[i, j]);
}
Console.WriteLine();
}
```
上述代码中,我们先定义了一个名为`arr`的二维数组,然后通过两个`for`循环进行输入和输出。在输入时,我们依次输入每个元素的值,并将其赋值给对应的数组元素;在输出时,我们同样通过两个`for`循环遍历整个数组,并通过`Console.Write`进行输出。注意,在输出每行后,我们还调用了`Console.WriteLine`进行换行,以保证输出结果的格式正确。
相关问题
c# 字符串读入与读出二维数组
假设你有一个二维数组 `arr`,可以使用以下代码将其转换为字符串并输出:
```csharp
StringBuilder sb = new StringBuilder();
for (int i = 0; i < arr.GetLength(0); i++)
{
for (int j = 0; j < arr.GetLength(1); j++)
{
sb.Append(arr[i, j] + " ");
}
sb.AppendLine();
}
Console.WriteLine(sb.ToString());
```
这将在控制台中输出一个字符串,其中每行表示一个一维数组,每个数字用空格分隔。
要从字符串中读取并填充二维数组,可以使用以下代码:
```csharp
string input = "1 2 3\n4 5 6\n7 8 9\n"; // 假设这是输入字符串
string[] lines = input.Split(new[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries);
int[,] arr = new int[lines.Length, lines[0].Split(' ').Length];
for (int i = 0; i < lines.Length; i++)
{
string[] parts = lines[i].Split(' ');
for (int j = 0; j < parts.Length; j++)
{
arr[i, j] = int.Parse(parts[j]);
}
}
```
这将从输入字符串中解析出每个数字,并将它们逐个填充到二维数组中。
让客户输入考试分数分别,给一个3行2列的二维数组赋值,然后求这个二维数组中所有元素的平均值,最大值,最小值,以及和并目打印输出(二维数组最大值,最小值,和,数组中的元素都打印输出)C#
### 回答1:
可以这样实现:Int[][] arr = new int[3][2];//赋值
arr[0][0] = exam1;
arr[0][1] = exam2;
arr[1][0] = exam3;
arr[1][1] = exam4;
arr[2][0] = exam5;
arr[2][1] = exam6;//计算平均值
int sum = 0;
for(int i = 0; i < 3; i++){
for(int j = 0; j < 2; j++){
sum += arr[i][j];
}
}
double avg = (double)sum / (3 * 2);//计算最大值
int max = arr[0][0];
for(int i = 0; i < 3; i++){
for(int j = 0; j < 2; j++){
if(arr[i][j] > max){
max = arr[i][j];
}
}
}//计算最小值
int min = arr[0][0];
for(int i = 0; i < 3; i++){
for(int j = 0; j < 2; j++){
if(arr[i][j] < min){
min = arr[i][j];
}
}
}//计算和
int sum = 0;
for(int i = 0; i < 3; i++){
for(int j = 0; j < 2; j++){
sum += arr[i][j];
}
}//输出
System.out.println("二维数组中所有元素的平均值:" + avg);
System.out.println("二维数组中最大值:" + max);
System.out.println("二维数组中最小值:" + min);
System.out.println("二维数组中元素的和:" + sum);
System.out.println("二维数组中的元素:");
for(int i = 0; i < 3; i++){
for(int j = 0; j < 2; j++){
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
### 回答2:
题目要求用户输入考试分数,然后给一个3行2列的二维数组赋值,并计算数组中所有元素的平均值、最大值、最小值以及和,最后将结果打印输出。
首先,我们可以定义一个3行2列的二维数组,并使用循环结构让用户输入考试分数,将输入的分数赋值给数组。代码如下:
```c
#include <stdio.h>
int main() {
int scores[3][2];
int sum = 0;
int max = 0, min = 100;
// 输入考试分数,并赋值给二维数组
printf("请输入考试分数:\n");
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 2; j++) {
printf("请输入第%d行第%d列的分数:", i + 1, j + 1);
scanf("%d", &scores[i][j]);
}
}
// 计算平均值、最大值、最小值和和
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 2; j++) {
sum += scores[i][j];
if (scores[i][j] > max) {
max = scores[i][j];
}
if (scores[i][j] < min) {
min = scores[i][j];
}
}
}
// 打印输出结果
printf("二维数组中的元素如下:\n");
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 2; j++) {
printf("%d ", scores[i][j]);
}
printf("\n");
}
printf("平均值:%f\n", (float) sum / (3 * 2));
printf("最大值:%d\n", max);
printf("最小值:%d\n", min);
printf("和:%d\n", sum);
return 0;
}
```
以上代码功能完整,可以实现根据用户输入的考试分数计算二维数组的平均值、最大值、最小值以及和,并将结果打印输出。
### 回答3:
首先,我们需要让客户输入考试分数,假设客户输入的分数为row行col列的二维数组。代码如下:
```c
#include <stdio.h>
#define MAX_ROW 3
#define MAX_COL 2
int main() {
int scores[MAX_ROW][MAX_COL];
int row, col;
// 让客户输入考试分数
printf("请输入考试分数:\n");
for (row = 0; row < MAX_ROW; row++) {
for (col = 0; col < MAX_COL; col++) {
printf("请输入第%d行第%d列的分数:", row + 1, col + 1);
scanf("%d", &scores[row][col]);
}
}
// 计算平均值、最大值、最小值和和
int sum = 0;
int max = scores[0][0], min = scores[0][0];
for (row = 0; row < MAX_ROW; row++) {
for (col = 0; col < MAX_COL; col++) {
sum += scores[row][col];
if (scores[row][col] > max) {
max = scores[row][col];
}
if (scores[row][col] < min) {
min = scores[row][col];
}
}
}
// 输出结果
printf("二维数组中所有元素的平均值:%f\n", sum / (MAX_ROW * MAX_COL * 1.0));
printf("二维数组中的最大值:%d\n", max);
printf("二维数组中的最小值:%d\n", min);
printf("二维数组中的元素如下:\n");
for (row = 0; row < MAX_ROW; row++) {
for (col = 0; col < MAX_COL; col++) {
printf("%d ", scores[row][col]);
}
printf("\n");
}
return 0;
}
```
这段代码会要求客户输入一个3行2列的二维数组,并计算出二维数组中所有元素的平均值、最大值和最小值,并将二维数组的所有元素打印输出。