使用c++编写程序,求出a到b之间能被7或者11整除,但不能同时被7和11整除的所有正数,并将它们放在数组中,并输入这些数的个数。编写main函数,输入啊,b的值
时间: 2024-05-19 22:16:01 浏览: 32
#include <stdio.h>
int main()
{
int a, b, i, count = 0;
int arr[100];
printf("请输入a和b的值:\n");
scanf("%d%d", &a, &b);
for(i = a; i <= b; i++)
{
if((i % 7 == 0 || i % 11 == 0) && !(i % 7 == 0 && i % 11 == 0))
{
arr[count] = i;
count++;
}
}
printf("a到b之间能被7或者11整除,但不能同时被7和11整除的正数有%d个,它们分别是:\n", count);
for(i = 0; i < count; i++)
{
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
相关问题
用c++设计程序:将10个整数存入一个整型数组,按次序输出能被3整除的所有正的数组元素。遇到第一个非正数时停止所有操作并退出。
下面是用c++实现的代码:
```c++
#include <iostream>
using namespace std;
int main() {
const int SIZE = 10;
int arr[SIZE];
int i, num;
// 输入数组元素
for (i = 0; i < SIZE; i++) {
cout << "请输入第" << i+1 << "个整数: ";
cin >> num;
if (num <= 0) {
break; // 遇到第一个非正数时退出
}
arr[i] = num;
}
// 输出能被3整除的数组元素
for (int j = 0; j < i; j++) {
if (arr[j] % 3 == 0) {
cout << arr[j] << " ";
}
}
cout << endl;
return 0;
}
```
程序首先定义了一个大小为10的整型数组,然后通过循环输入数组元素,如果输入的数小于等于0,则跳出循环。接着,程序遍历数组,输出能被3整除的元素。
需要注意的是,在输入数组元素时,程序要用一个变量 `i` 来记录实际输入了多少个元素,这是因为遇到第一个非正数时,循环会被强制退出,此时数组不一定填满了。在遍历数组时,程序只需要遍历前 `i` 个元素即可。
将10个整数存入一个整型数组,按次序输出能被3整除的所有正的数组元素。遇到第一个非正数时停止所有操作并退出。
以下是一个 C++ 示例代码:
```c++
#include <iostream>
namespace std;
int main() {
const int MAX_SIZE = 10;
int arr[MAX_SIZE];
int i, num;
// 输入数组元素
for (i = 0; i < MAX_SIZE;++) {
cout << "请输入第 " << i+1 << " 个整数:";
cin >> num;
if (num <= 0) {
break;
}
arr[i] = num;
}
// 输出能被3整除的元素
cout << "能被3整除的数组元素有:";
for (int j = 0; j < i; j++) {
if (arr[j] % 3 == 0) {
cout << arr[j] << " ";
}
}
return 0;
}
```
示例输出:
```
请输入第 1 个整数:9
请输入第 2 个整数:8
请输入第 3 个整数:6
请输入第 4 个整数:12
请输入第 5 个整数:-1
能被3整除的数组元素有:9 6 12
```
阅读全文