用C++在主函数中定义一个含有7个指针的指针数组,令它的数组元素分别指向星期一到星期天组成的字符串常量,循环输入数字1-7,则输出相应星期几的符串。如输入1,则输出“MON”,输入0结束,输入1~7以外的数字则要求重新输入
时间: 2023-10-09 07:12:53 浏览: 92
以下是示例代码:
```cpp
#include <iostream>
using namespace std;
const char* weekdays[] = {"", "MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"};
int main() {
int n;
while (true) {
cout << "请输入数字1-7(输入0结束):" << endl;
cin >> n;
if (n == 0) {
break;
}
else if (n >= 1 && n <= 7) {
cout << weekdays[n] << endl;
}
else {
cout << "输入错误,请重新输入!" << endl;
}
}
return 0;
}
```
解释一下代码:
1. 首先定义一个含有7个指针的指针数组`weekdays`,每个指针指向一个星期几的字符串常量。注意,`weekdays`的下标从1开始,这样才能与输入的数字对应。
2. 在主函数中,使用一个循环来不断读入数字并输出相应的星期几字符串。当输入0时,跳出循环。
3. 在每次读入数字后,先判断输入是否合法。如果输入是1-7之间的数字,则输出相应的星期几字符串;如果不是,则提示输入错误并重新输入。
相关问题
c++在主函数中定义一个含有7个指针的指针数组,令它的数组元素分别指向星期一到星期天组成的字符串常量,循环输入数字1-7,则输出相应星期几的符串。如输入1,则输出“MON”,输入0结束,输入1~7以外的数字则要求重新输入。
下面是实现该功能的C++代码:
```c++
#include <iostream>
using namespace std;
int main() {
const char* week[7] = {"MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"};
int num;
while (true) {
cout << "Please input a number (1-7, 0 to exit): ";
cin >> num;
if (num == 0) break;
else if (num >= 1 && num <= 7) cout << week[num - 1] << endl;
else cout << "Invalid input! Please input a number between 1 and 7." << endl;
}
return 0;
}
```
该程序首先定义了一个含有7个指针的指针数组`week`,并初始化它的数组元素分别指向星期一到星期天组成的字符串常量。然后进入一个循环,每次循环提示用户输入一个数字,并读入该数字。如果输入的数字为0,则跳出循环;如果输入的数字为1-7,则输出相应星期几的字符串;如果输入的数字不在1-7之间,则提示用户重新输入。循环直到用户输入0为止。
用c++中在主函数中定义一个含有7个指针的指针数组,令它的数组元素分别指向星期一到星期天组成的字符串常量,循环输入数字1-7,则输出相应星期几的符串。如输入1,则输出“MON”,输入0结束,输入1~7以外的数字则要求重新输入
好的,您可以参考下面的代码实现:
```cpp
#include <iostream>
#include <string>
using namespace std;
int main() {
// 定义星期字符串数组
string weekdays[] = {"", "MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"};
int day;
while (true) {
cout << "请输入数字1-7,0结束:";
cin >> day;
// 判断输入是否合法
if (day == 0) {
break;
} else if (day < 1 || day > 7) {
cout << "输入不合法,请重新输入!" << endl;
continue;
}
// 输出相应的星期几
cout << weekdays[day] << endl;
}
return 0;
}
```
在上面的代码中,我们定义了一个包含7个指针的指针数组`weekdays`,并将每个指针分别指向星期一到星期天的字符串常量。之后,我们通过循环输入数字1-7,来输出相应的星期几字符串。如果输入0,则跳出循环;如果输入1-7以外的数字,则要求重新输入。注意,在输出星期几字符串时,我们通过`weekdays[day]`来获取相应的字符串。由于使用了C++的string类型,因此不需要手动管理内存,更加方便和安全。
阅读全文