输入一个整数把每位数字转换为英文

本文介绍了一个简单的C语言程序,该程序能够将用户输入的整数中的每一位数字转换成对应的英文单词。通过使用getchar()函数逐个读取字符,并利用switch-case结构实现数字到英文的映射。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#include "stdafx.h"
#include "stdlib.h"

int _tmain(int argc, _TCHAR* argv[])
{     //输入一个整数把每位数字转换为英文
	char a[100] = { 0 };          
	printf("请输入一个数字:");
	for (int i = 0; i < 100; i++)
	{
		a[i] = getchar();                            //每次读取一个字符赋值给a[i]输入最后一个字符会按'\n'确认所以也是最后一个字符
		if (a[i] == '\n')                            //最后一个字符用来跳出循环
			break;                                   //遇到break跳出循环
	}
	for (int i = 0; i < 100; i++)                    //遍历输出数组元素
	{
		while (a[i] != '\n')
		{
			switch (a[i])
			{
			case '0':printf("zero ");   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("teven ");  break;
			case '8':printf("eight ");  break;
			case '9':printf("nine ");   break;
			default:                    break;
			}
			break;                                  //遇到break跳出while循环
		}
		if (a[i] == '\n')
			break;                                  //遇到break跳出for循环
	}

	system(" pause ");
	return 0;
}
是不是觉得很简单??name问题来了!


 

getchar

从stdio流中读 字符,相当于getc(stdin),它从标准输入里读取下一个字符。返回类型为int型,返回值为用户输入的ASCⅡ码,出错返回-1。
原来如此!只读入字符,不论你输入的是啥,我只按照字符给你录入……
以下是一个用C语言实现的程序,它可以从键盘输入一个整数,并将每位数字转换英文输出。我们使用数组来存储数字对应的英文单词。 ```c #include <stdio.h> #include <string.h> // 定义一个函数来将单个数字转换英文 const char* digitToEnglish(int digit) { const char* digits[] = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"}; return digits[digit]; } // 主函数 int main() { char input[100]; printf("请输入一个整数: "); scanf("%s", input); int length = strlen(input); int start = 0; // 处理负数 if (input[0] == '-') { printf("minus "); start = 1; } // 处理每一位数字 for (int i = start; i < length; i++) { if (input[i] >= '0' && input[i] <= '9') { int digit = input[i] - '0'; printf("%s ", digitToEnglish(digit)); } else { printf("Invalid input! "); break; } } printf("\n"); return 0; } ``` 这个程序的工作原理如下: 1. 我们定义了一个`digitToEnglish`函数,它接受一个0-9之间的整数,并返回对应的英文单词。 2. 在`main`函数中,我们首先提示用户输入一个整数。 3. 我们使用`scanf`函数读取输入的字符串。 4. 我们计算输入字符串的长度,并处理可能的负号。 5. 我们遍历输入字符串的每一位: - 如果是数字字符,我们将其转换整数,然后使用`digitToEnglish`函数获取对应的英文单词。 - 我们将每个英文单词输出,并在后面加一个空格。 - 如果遇到非数字字符,我们输出错误信息并停止处理。 6. 最后,我们输出一个换行符。 这个程序可以处理包括负数在内的任意长度的整数输入。它将每个数字英文单词输出,中间用空格分隔。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值