用c语言从键盘输入学号,然后输出学号中百位数字是 3 的学号,输入 0 时 结束循环
时间: 2024-02-15 11:01:40 浏览: 121
好的,下面是用 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 时,退出循环,输出提示信息,程序结束。
需要注意的是,上面的代码假设输入的学号都是正整数。如果需要考虑负数或浮点数等情况,需要进行额外的判断和处理。
用C语言编写程序,要求从键盘输入自己学号的后三位数字,计算各数位上数字之和并输出。
在C语言中,你可以通过以下步骤编写程序来满足这个需求:
```c
#include <stdio.h>
int main() {
int student_id, remainder;
// 要求用户输入学号的后三位
printf("请输入您的学号的最后三位数字:");
scanf("%d", &student_id); // 确保输入的是整数
// 计算个位、十位和百位的值(如果有多于三位,忽略前几位)
remainder = student_id % 10; // 取余数得到个位
student_id /= 10; // 学号除以10去掉个位
remainder += (student_id % 10) * 10; // 个位与十位相加
// 再次去除十位,得到新的个位(即原十位)
remainder += (student_id % 10) * 100; // 十位与百位相加
// 输出结果
printf("您输入的学号后三位数字之和为:%d\n", remainder);
return 0;
}
```
在这个程序中,我们首先获取用户的输入,并通过取模运算 `%` 分别获取每一位数字。然后通过除法 `/` 和乘法 `*` 来组合个位、十位和百位的值。最后,将计算出的结果输出到屏幕上。
阅读全文