从键盘输入若干学生的成绩,并输出在屏幕上(要求每行输出3个成绩),用-1结束循环的执行。用do-while循环实现)
时间: 2023-05-21 14:06:38 浏览: 93
以下是C知道类ChatGPT AI的回答:
您好!以下是实现从键盘输入若干学生的成绩并输出的C程序。请注意,在这个问题中,我们需要用到循环语句和数组。
代码如下:
#include <stdio.h>
int main() {
int i = 0, score, scores[100];
printf("请输入学生成绩:\n");
do {
scanf("%d", &score);
if (score == -1) {
break;
}
scores[i++] = score;
} while (i < 100);
printf("学生成绩为:\n");
for (int j = 0; j < i; j++) {
printf("%d\t", scores[j]);
if ((j + 1) % 3 == 0) {
printf("\n");
}
}
printf("\n");
return 0;
}
以上就是实现从键盘输入若干学生的成绩并输出的C程序,希望对您有所帮助。如果您有其它问题,欢迎随时提出。
相关问题
从键盘输入若干学生的成绩,并输出在屏幕上(要求每行输出3个成绩),用-1结束循环的执行。用for循环实现)
### 回答1:
当然,我可以帮你解决这道编程题。下面是对应的代码:
```
score_list = []
score = 0
for i in range(1, 1000):
score = int(input("请输入第%d个学生的成绩:(-1退出)" % i))
if score == -1:
break
score_list.append(score)
if len(score_list) % 3 == 0:
print(score_list[-3:])
```
这个程序能够让你输入任意多个学生成绩,每输入一个成绩,程序会将其添加到一个列表中。当你输入 -1 时,程序会退出循环,将列表中的最后三个学生成绩输出。程序中使用了 `input` 函数读取你的输入,使用 `break` 在成绩输入完毕时跳出循环。
### 回答2:
请问是希望用Python代码实现这个功能吗?如果是的话,以下是一个用for循环实现此功能的代码示例:
```python
# 创建一个空列表用于存储学生成绩
scores = []
while True:
# 从键盘输入学生成绩并转换为整数
score = int(input("请输入学生成绩(输入-1结束):"))
# 判断是否输入-1,如果是则退出循环
if score == -1:
break
# 将输入的学生成绩添加到列表中
scores.append(score)
# 输出学生成绩
for i in range(len(scores)):
# 每行输出3个成绩,如果是每行输出5个成绩可将3改为5
if i % 3 == 0:
print()
print(scores[i], end=" ")
```
这个代码通过一个while循环来从键盘输入学生成绩,并使用一个列表来存储这些成绩。当输入-1时,循环会被打破,然后使用for循环来按照每行输出3个成绩的要求输出学生成绩。
### 回答3:
用 for 循环实现从键盘输入学生的成绩,并将成绩每行输出三个,直到输入 -1 结束循环的执行。
代码如下:
```python
scores = [] # 定义一个空列表,用于存储学生的成绩
for i in range(1, 101): # 用 for 循环控制输入的次数,最多输入100个成绩
score = int(input("请输入学生的成绩:"))
if score == -1: # 输入 -1 时跳出循环
break
scores.append(score) # 将输入的成绩添加到列表中
if i % 3 == 0: # 每输入三个成绩,将它们输出在一行上
for s in scores[-3:]: # 取列表中最后三个元素
print(s, end=' ')
print() # 输出换行符
print("程序结束")
```
运行代码后,可以不断输入学生的成绩,每行输出三个成绩,输入 -1 时程序结束。
注意,这里假设成绩为整数,如果是浮点数,需要稍作修改。
编写c语言程序从键盘输入若干学生的成绩,并输出在屏幕上(要求每行输出3个成绩),用- 1结束循环的执行用while循环实现。
```c
#include <stdio.h>
int main() {
int score, count = 0;
printf("请输入学生成绩,以-1结束:\n");
scanf("%d", &score);
while (score != -1) {
printf("%d ", score);
count++;
if (count % 3 == 0) {
printf("\n");
}
scanf("%d", &score);
}
return 0;
}
```
说明:
1. 定义变量`score`表示输入的成绩,`count`表示已经输入的成绩个数,初始值为0。
2. 输出提示信息,让用户输入学生成绩。
3. 使用`while`循环,当输入的成绩不为-1时,执行循环体。
4. 在循环体中,输出输入的成绩,并将`count`加1。
5. 判断`count`是否为3的倍数,如果是,输出换行符。
6. 再次让用户输入成绩,更新`score`的值。
7. 循环结束后,返回0表示程序正常结束。
阅读全文