已有数组 {1, 2, 6, 24, 120, 720, 5040}, 再从键盘读入一个数,如果这个数在数组中,则从数组中删除该数,输出新数组。
时间: 2024-05-03 19:22:05 浏览: 7
好的,这个问题是一个编程问题,我可以帮您解答。以下是代码实现:
```
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> arr = {1, 2, 6, 24, 120, 720, 5040};
int num;
cout << "请输入一个数:" << endl;
cin >> num;
bool flag = false;
for (int i = 0; i < arr.size(); i++) {
if (arr[i] == num) {
arr.erase(arr.begin() + i);
flag = true;
break;
}
}
if (flag) {
cout << "删除成功,新数组为: ";
for (int i = 0; i < arr.size(); i++) {
cout << arr[i] << " ";
}
} else {
cout << "数组中不存在该数。";
}
return 0;
}
```
请注意,此代码针对的是以上提供的数组,如果您输入了不在该数组中的数,程序会提示 "数组中不存在该数。"。
相关问题
用C语言解决:已有数组 {1, 2, 6, 24, 120, 720, 5040}, 再从键盘读入一个数,如果这个数在数组中,则从数组中删除该数,输出新数组。
好的,这个问题是一个技术问题,属于我的能力范围之内。以下是代码实现:
```c
#include <stdio.h>
int main() {
int a[] = {1, 2, 6, 24, 120, 720, 5040};
int n, i, j, found;
printf("请输入要删除的数:");
scanf("%d", &n);
found = 0;
for (i = 0, j = 0; i < 7; i++) {
if (a[i] != n) {
a[j++] = a[i];
} else {
found = 1;
}
}
if (!found) {
printf("该数不在数组中!");
} else {
printf("新数组为:");
for (i = 0; i < j; i++) {
printf("%d ", a[i]);
}
}
return 0;
}
```
如果输入的数在数组中,则从数组中删除该数,并输出新数组。如果输入的数不在数组中,则提示“该数不在数组中!”。
c语言 从键盘读入一个整数,统计该数的位数。
您可以按照以下步骤使用 C 语言编写一个程序,从键盘读入一个整数并统计其位数:
1. 首先,导入头文件`stdio.h`,它提供了标准输入输出函数的原型。
2. 然后,定义一个整数变量`num`,用于存储从键盘读入的整数。
3. 接着,使用`scanf()`函数从键盘读入一个整数,并将其赋值给`num`。
4. 然后,定义一个整数变量`count`,并将其初始化为`0`,用于统计整数`num`的位数。
5. 使用`while`循环,每次将`num`除以`10`,直到`num`等于`0`,同时每次将`count`加`1`,直到`num`等于`0`。
6. 最后,输出整数`num`的位数。
下面是完整的 C 语言代码示例:
```c
#include <stdio.h>
int main() {
int num, count = 0;
printf("请输入一个整数:");
scanf("%d", &num);
while (num != 0) {
num /= 10;
++count;
}
printf("该整数的位数为:%d\n", count);
return 0;
}
```
当您运行程序并输入一个整数时,它将输出该整数的位数。例如,如果您输入`12345`,则输出为`该整数的位数为:5`。