c语言switch语句输入英文单词
时间: 2023-12-24 14:24:46 浏览: 78
C语言的switch语句是一种多分支选择结构,可以根据不同的条件执行不同的代码块。在输入英文单词时,我们可以使用switch语句来判断输入的单词是哪一个,并执行相应的代码块。具体实现如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char word[20];
printf("请输入一个英文单词:");
scanf("%s", word);
switch (word[0]) {
case 'a':
printf("apple\n");
break;
case 'b':
printf("banana\n");
break;
case 'c':
printf("cat\n");
break;
// 其他字母的判断
default:
printf("未知单词\n");
break;
}
return 0;
}
```
在上面的代码中,我们首先定义了一个字符数组`word`来存储输入的单词,然后使用`scanf`函数来读取用户输入的单词。接着,我们使用switch语句来判断输入的单词的首字母是哪一个,并执行相应的代码块。如果输入的单词不在我们的判断范围内,则输出“未知单词”。
相关问题
c语言中switch的具体用法及范例
switch是一种流程控制语句,用于根据表达式的值选择不同的执行路径。以下是switch语句的一般形式:
```c
switch (expression) {
case constant1:
statement(s);
break;
case constant2:
statement(s);
break;
...
case constantN:
statement(s);
break;
default:
statement(s);
}
```
expression是要评估的表达式,constant1到constantN是可能的常量值,对应的语句会在匹配到相应的常量时执行。default是可选的,表示当表达式的值与所有常量都不匹配时执行的语句。
下面是一个使用switch语句的例子,该程序根据输入的数字输出对应的英文单词:
```c
#include <stdio.h>
int main() {
int number;
printf("Enter a number between 1 and 5: ");
scanf("%d", &number);
switch (number) {
case 1:
printf("One\n");
break;
case 2:
printf("Two\n");
break;
case 3:
printf("Three\n");
break;
case 4:
printf("Four\n");
break;
case 5:
printf("Five\n");
break;
default:
printf("Invalid number!\n");
}
return 0;
}
```
如果输入1,则输出"One";如果输入6,则输出"Invalid number!"。
编写一个程序,要求用户输入一个两位数,然后输出显示该数的英文单词。提示:把数分解为两个数字。用一个switch语句显示第一位数字对应的单词(“twenty”、“thirty”等),用第二个switch语句显示第二位数字对应的单词。不要忘记11~19需要特殊处理。用c语言
### 回答1:
的语法实现。
以下是C语言代码实现:
```c
#include <stdio.h>
int main() {
int num, tens, ones;
printf("请输入一个两位数:");
scanf("%d", &num);
tens = num / 10; // 获取十位数字
ones = num % 10; // 获取个位数字
printf("该数的英文单词为:");
switch(tens) {
case 2:
printf("twenty ");
break;
case 3:
printf("thirty ");
break;
case 4:
printf("forty ");
break;
case 5:
printf("fifty ");
break;
case 6:
printf("sixty ");
break;
case 7:
printf("seventy ");
break;
case 8:
printf("eighty ");
break;
case 9:
printf("ninety ");
break;
}
switch(ones) {
case 0:
break;
case 1:
printf("one");
break;
case 2:
printf("two");
break;
case 3:
printf("three");
break;
case 4:
printf("four");
break;
case 5:
printf("five");
break;
case 6:
printf("six");
break;
case 7:
printf("seven");
break;
case 8:
printf("eight");
break;
case 9:
printf("nine");
break;
}
if(num >= 11 && num <= 19) { // 特殊处理11~19
switch(num) {
case 11:
printf("eleven");
break;
case 12:
printf("twelve");
break;
case 13:
printf("thirteen");
break;
case 14:
printf("fourteen");
break;
case 15:
printf("fifteen");
break;
case 16:
printf("sixteen");
break;
case 17:
printf("seventeen");
break;
case 18:
printf("eighteen");
break;
case 19:
printf("nineteen");
break;
}
}
printf("\n");
return 0;
}
```
输入一个两位数,程序将会输出该数的英文单词。例如,输入87将输出eighty seven。
### 回答2:
下面是一个用C语言编写的程序示例,根据用户输入的两位数,将该数的英文单词输出显示。
```c
#include <stdio.h>
int main() {
int num, firstDigit, secondDigit;
char* firstWord;
char* secondWord;
printf("请输入一个两位数:");
scanf("%d", &num);
// 分解数字
firstDigit = num / 10;
secondDigit = num % 10;
// 第一位数字对应的英文单词
switch(firstDigit) {
case 2:
firstWord = "twenty";
break;
case 3:
firstWord = "thirty";
break;
// 可根据需要继续添加其他数字对应的单词
default:
printf("输入的数字不合法!");
return 0;
}
// 第二位数字对应的英文单词
switch(secondDigit) {
case 0:
secondWord = "";
break;
case 1:
secondWord = "one";
break;
case 2:
secondWord = "two";
break;
case 3:
secondWord = "three";
break;
case 4:
secondWord = "four";
break;
case 5:
secondWord = "five";
break;
case 6:
secondWord = "six";
break;
case 7:
secondWord = "seven";
break;
case 8:
secondWord = "eight";
break;
case 9:
secondWord = "nine";
break;
default:
printf("输入的数字不合法!");
return 0;
}
// 处理11~19的特殊情况
if (firstDigit == 1) {
switch(num) {
case 11:
printf("eleven\n");
return 0;
case 12:
printf("twelve\n");
return 0;
case 13:
printf("thirteen\n");
return 0;
case 14:
printf("fourteen\n");
return 0;
case 15:
printf("fifteen\n");
return 0;
case 16:
printf("sixteen\n");
return 0;
case 17:
printf("seventeen\n");
return 0;
case 18:
printf("eighteen\n");
return 0;
case 19:
printf("nineteen\n");
return 0;
}
}
// 输出结果
printf("%s %s\n", firstWord, secondWord);
return 0;
}
```
该程序通过switch语句将输入的两位数分别与相应的单词进行匹配,并输出结果。需要注意的是,程序还特殊处理了11~19的情况。如果输入的数字不合法,则输出错误提示信息。
### 回答3:
下面是一个使用C语言编写的程序,可以实现用户输入一个两位数,然后输出该数的英文单词:
```c
#include <stdio.h>
int main() {
int num;
// 接收用户输入的两位数
printf("请输入一个两位数:");
scanf("%d", &num);
// 提取十位和个位数字
int ten = num / 10;
int unit = num % 10;
// 定义存储数字对应单词的字符串
char* tenWords;
char* unitWords;
// 判断十位数字
switch (ten) {
case 2:
tenWords = "twenty";
break;
case 3:
tenWords = "thirty";
break;
// 可以根据需要继续添加其他数字的情况
default:
tenWords = "";
}
// 判断个位数字
switch (unit) {
case 0:
unitWords = "";
break;
case 1:
unitWords = "one";
break;
case 2:
unitWords = "two";
break;
// 类似地,处理其他数字的情况
default:
unitWords = "";
}
// 特殊处理11 ~ 19之间的数字
if (ten == 1) {
switch (unit) {
case 1:
unitWords = "eleven";
break;
case 2:
unitWords = "twelve";
break;
case 3:
unitWords = "thirteen";
break;
// 类似地,处理其他数字的情况
}
}
// 输出结果
printf("该数字的英文单词为:%s%s\n", tenWords, unitWords);
return 0;
}
```
用户可以在程序中输入一个两位数,然后程序将提取该数的十位和个位数字,并通过switch语句将它们分别转换为相应的英文单词。最后,程序将输出该数字的英文单词。
请注意,此程序只处理了部分数字,如需添加其他数字的转换情况,请根据需要进行扩展。
相关推荐
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)