从键盘输入学号,然后输出学号中百位数字是 3 的学号,输入 0 时 结束循环
时间: 2024-02-15 14:01:39 浏览: 37
好的,这是一个循环和条件判断的问题,我来给您写一下代码:
```python
while True:
num = input("请输入学号:")
if num == "0":
break
if len(num) >= 3 and num[-3] == "3":
print(num)
```
这段代码会不断循环,直到输入的学号为 0 时,跳出循环。每次输入学号后,会判断其百位数字是否为 3,如果是,则输出该学号。
相关问题
用c语言从键盘输入学号,然后输出学号中百位数字是 3 的学号,输入 0 时 结束循环
好的,下面是用 C 语言实现的代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char num[20];
while (1) {
printf("请输入学号:");
scanf("%s", num);
if (strcmp(num, "0") == 0) {
break;
}
if (strlen(num) >= 3 && num[strlen(num) - 3] == '3') {
printf("%s\n", num);
}
}
return 0;
}
```
这段代码使用了一个字符数组 `num` 来存储输入的学号,循环中会不断接受用户的输入,如果输入的是 0,就跳出循环。如果输入的学号中百位数字是 3,就输出该学号。注意,这里用到了 `strcmp` 函数比较两个字符串是否相等,用到了 `strlen` 函数获取字符串的长度。
C语言从键盘输入学号,最后输出学号中百位数是3的学号,输入0时结束循环
下面是一个实现该功能的C语言代码:
```c
#include <stdio.h>
int main() {
int num;
printf("请输入学号:\n");
scanf("%d", &num);
while (num != 0) {
int hundred = num / 100 % 10;
if (hundred == 3) {
printf("百位数是3的学号是:%d\n", num);
}
printf("请输入学号:\n");
scanf("%d", &num);
}
printf("程序结束!\n");
return 0;
}
```
解释一下代码:
1. 先定义一个整型变量 `num` 用来存储输入的学号。
2. 通过 `printf` 函数输出提示信息,让用户输入学号。
3. 通过 `scanf` 函数从键盘读入一个整数,存储在 `num` 变量中。
4. 进入一个循环:
- 首先计算出 `num` 的百位数,存储在变量 `hundred` 中。
- 判断 `hundred` 是否为 3,如果是,则输出该学号。
- 再次提示用户输入学号,通过 `scanf` 函数读入一个整数,存储在 `num` 变量中。
5. 当用户输入的学号为 0 时,退出循环,输出提示信息,程序结束。
需要注意的是,上面的代码假设输入的学号都是正整数。如果需要考虑负数或浮点数等情况,需要进行额外的判断和处理。