【发布时间】:2019-10-30 01:12:04
【问题描述】:
我想创建一个程序,当我输入 5 个数字时打印最大的第一个数字和最大的第二个数字。(数字的 1.value 为 = 0)。当我输入 5 个大于 0 的数字时没有问题,但是当我输入 5 个小于 0 的数字时,程序打印第一个最大的数字是 0,第二大的数字是 1。
#include <stdio.h>
int main() {
int number = 0, first, second, numbercounter = 0;
first = number;
while (numbercounter < 5) {
printf("5 tamsayi girin:", ++numbercounter);
scanf("%d", &number);
if (number > first) {
second = first;
first = number;
} else if (number > second)
second=number;
}
printf("En buyuk sayi: %d \n", first);
printf("En buyuk ikinci sayi:%d \n", second);
if (first % second == 0) {
printf("%d, %d'nin tam katidir.\n", first, second);
} else {
printf("%d, %d'nin tam kati degildir.\n", first, second);
}
if (first == second) {
printf("%d ve % esittir.\n", first, second);
} else {
printf("%d ve %d esit degildir.\n", first, second);
}
if (first % 2 != 0) {
printf("%d tektir.\n", first);
} else {
printf("%d cifttir.\n", first);
}
return 0;
}
【问题讨论】:
-
无穷大没有整数表示。如果您想要最负的有符号整数,请使用
<stdint.h>中的INT_MIN。 -
哦,谢谢,你能解释更多或为我制作一个样本吗?
-
嗯...
first = second = INT_MIN; -
问题的标题与内容无关...我更新了标题。
-
是的,它有额外的功能,我要试试