c语言,判断整数ab是否大于100,若大于100则输出百位以上的数
时间: 2024-10-22 12:13:53 浏览: 23
C语言程序设计-判断整数x是否是同构数;若是同构数,函数返回1;否则返回0;x的值由主函数从键盘读入,要求不大于100;.c
5星 · 资源好评率100%
在C语言中,你可以通过以下步骤来判断整数a和b是否都大于100,并如果满足条件,则输出它们百位以上的数字:
1. 首先,你需要将两个整数转换成字符串,以便于处理每一位数字。可以使用`itoa`函数(如果是在Linux系统上)或者自定义转换函数来实现。
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char* intToString(int num) {
char str[100];
sprintf(str, "%d", num);
return str;
}
void getHigherDigits(char *str, int *result) {
// 这里假设输入的字符串长度至少有三位
*result = str[0] - '0'; // 取百位
if (strlen(str) > 2) {
*result *= 10; // 因为已经取了百位,所以乘以10表示提取十位和个位
*result += str[1] - '0';
*result *= 10; // 再加上个位
*result += str[2] - '0';
}
}
```
2. 然后判断a和b是否都大于100,并对每个数应用上面的函数:
```c
int main() {
int a = 150, b = 800; // 示例数值
char str_a[100], str_b[100];
// 转换为字符串
strcpy(str_a, intToString(a));
strcpy(str_b, intToString(b));
// 判断并获取百位以上的数字
if (a > 100 && b > 100) {
int higherDigitA = 0, higherDigitB = 0;
getHigherDigits(str_a, &higherDigitA);
getHigherDigitB(str_b, &higherDigitB);
printf("对于数a (%d),百位以上的部分是:%d\n", a, higherDigitA);
printf("对于数b (%d),百位以上的部分是:%d\n", b, higherDigitB);
}
return 0;
}
```
在这个例子中,如果a和b都大于100,程序会分别打印出每个数百位以上的部分。如果没有超过100,相应的值就不会被输出。
阅读全文