用c语言编写一个程序,输入两个随机的五位正整数,然后输出它们的和,如果输入的不是正整数,提示用户输入错误
时间: 2024-09-13 07:11:57 浏览: 42
当然可以。下面是一个简单的C语言程序,它会接受两个用户输入的五位正整数,并计算它们的和。如果用户输入非正整数,程序会提示输入错误。
```c
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <ctype.h>
bool is_valid_int(char* str) {
int i = 0;
while (str[i] != '\0') {
if (!isdigit(str[i])) {
return false;
}
i++;
}
return true;
}
int main() {
int num1, num2;
printf("请输入第一个五位正整数: ");
char input1[7]; // 五位加上一个终止符'\0'
fgets(input1, sizeof(input1), stdin);
// 移除换行符
input1[strlen(input1) - 1] = '\0';
if (is_valid_int(input1) && atoi(input1) > 0 && atoi(input1) < pow(10, 5)) {
num1 = atoi(input1);
} else {
printf("输入错误,请输入一个五位正整数。\n");
return 1;
}
printf("请输入第二个五位正整数: ");
char input2[7];
fgets(input2, sizeof(input2), stdin);
input2[strlen(input2) - 1] = '\0';
if (is_valid_int(input2) && atoi(input2) > 0 && atoi(input2) < pow(10, 5)) {
num2 = atoi(input2);
} else {
printf("输入错误,请输入一个五位正整数。\n");
return 1;
}
int sum = num1 + num2;
printf("两数之和为: %d\n", sum);
return 0;
}
```
阅读全文