编程转汉字
⑴ vb编程 阿拉伯数字转换成大写汉字 2位
建立文本框text1,text2按钮command1复制以下代码
Dima(10)AsInteger,b(10)AsString
PrivateSubCommand1_Click()
Dimx,yAsInteger
IfLen(Text1.Text)>0Then'当文本框中有数字时
IfLen(Text1.Text)=1Then'当文本框1中只有1位数字时
x=Val(Text1.Text)'x等于文本框中的数字
Text2.Text=b(x)'文本框2显示该数字的大写汉字
ElseIfLen(Text1.Text)=2Then'当文本框1中有2位数字时
x=Left(Text1.Text,1)'x等于第一位
y=Right(Text1.Text,1)'y等于第二位
Ifx=1Andy>0Then'判断,当文本框中的数字在11到19之间时
Text2.Text=b(10)&b(y)
ElseIfx>1Andy>0Then'判断,当文本框中的数字在21到99之间时
Text2.Text=b(x)&b(10)&b(y)
ElseIfx>0Andy=0Then'判断,当文本框中的数字为10的倍数时
Text2.Text=b(x)&b(10)
EndIf
EndIf
EndIf
EndSub
PrivateSubForm_Load()
DimiAsInteger
Fori=0To10
a(i)=i
Nexti
b(0)="零"
b(1)="壹"
b(2)="贰"
b(3)="叁"
b(4)="肆"
b(5)="伍"
b(6)="陆"
b(7)="柒"
b(8)="捌"
b(9)="玖"
b(10)="拾"
Text1.FontSize=40
Text2.FontSize=40
Text1.MaxLength=2
Text2.Locked=True
EndSub
⑵ c语言编程如何输出汉字
Windows XP与DOS是完全不同的两种内核。Windows XP几乎把DOS完全摒弃了。
而TC则是DOS时代的遗留物。
所以用TC编出来的程序在WINDOWS XP中运行时,权限是非常有限的。特别是对屏幕的操作。所以画点阵的方法是行不通的(更何况这个方法编出的程序也是很复杂的)。如果你用的是98以前的操作系统的话,用UCDOS就可以实现,但在XP中UCDOS已经不能用了。
如果想要用C语言编程时输出汉字,可以用以下几种方法:
1.最值得推荐的一种。摒弃TC,改用为WINDOWS编程设计的Visual C++,或者C++ Builder,lcc等。
用这几种工具的话,在代码中可以直接输入汉字。编译出来的是32位windows程序不存在兼容问题。
2.改用98以前的操作系统。
3.装个虚拟机,在虚拟机中装上DOS或者98。当然还要装上UCDOS。然后,在其中用TC写程序。
⑶ 如何用编程将输入的数字转换成汉字,如将10086换成中国移动。 需要下载哪种编程软件,简单易用就好,谢谢
我是VB.net 2010的~我会写这样的软件
只要调用一个函数
执行以下代码
Num = TextBox1.Text
Num = Num.Replace("10086", "中国移动")
TextBox2.Text = Num
========================================
模板就没有了~我帮你做一个这样的软件
⑷ VB编程将阿拉伯数字转化为汉字
准备Text1控件,和Label1控件
Private Sub Form_Load()
Text1 = ""
Label1.AutoSize = True
End Sub
Private Sub Text1_Change()
Dim strCh As String, temp As String, i As Integer
strCh = "零一二三四五六七八九"
temp = ""
For i = 1 To Len(Text1)
temp = temp & Mid(strCh, CInt(Mid(Text1, i, 1)) + 1, 1)
Next
Label1.Caption = temp
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
Select Case KeyAscii
Case vbKeyBack
Text1 = ""
Case Is < Asc("0")
KeyAscii = 0
Case Is > Asc("9")
KeyAscii = 0
End Select
End Sub
⑸ 如何用C++编程Unicode转中文
UNICODE 在C++里用wchar_t表示, 如: wchar_t wc = L'简' 而wchar_t在一些编译器里被定义为无符号短整形 short 所以UNICODE (一般情况下)就是一个整数. 可以这样定义一个wchar_t wchar_t wc2 = 31616; wcout<< wc << " " << wc2 << endl; 的结果就是输出两个 简. 只要脑子里想UNICODE (一般情况下)就是 unsigned short, 就会理解.
⑹ 编程中,如何将拼音转换成文字
在ios开发中经常碰到做通讯录需要将汉字转成拼音的情况,以下就是我把汉字转成拼音的方法。
把代码给你贴出来!
+ (NSString *)transform:(NSString *)chinese
{
NSMutableString *pinyin = [chinese mutableCopy];
CFStringTransform((__bridge CFMutableStringRef)pinyin, NULL, , NO);
CFStringTransform((__bridge CFMutableStringRef)pinyin, NULL, , NO);
NSLog(@"%@", pinyin);
return [pinyin uppercaseString];
}
⑺ php语言编程,这些字符怎样转换为汉字
你可以尝试转换一下字符编码,一般常用的是UTF-8的。望采纳
⑻ 如何用c语言将数字转换成汉字
你花了3天都做了什么呢?!拿出来看看
分还那么低
⑼ java编程 数字转换成汉字
我自己写的,匆忙写的。我有时间再改进改进。
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.Stack;
/*
* 本程序
*/
public class Transfer {
public Stack<Integer> transfer(int n){
Stack<Integer> st = new Stack<Integer>();
int division = 0; //余数
while(n>=10){
division = n%10;
st.push(division);
n = n/10;
}
st.push(n); //将最高位压栈
return st;
}
public static void main(String[]args){
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String in = "";
try {
in = reader.readLine();
} catch (IOException e) {
e.printStackTrace();
}
int n = 0;
try{
n = Integer.parseInt(in);
} catch(NumberFormatException e){
e.printStackTrace();
}
Transfer tf = new Transfer();
Stack<Integer> s = tf.transfer(n);
/*
while(!s.empty()){
System.out.print(s.pop()); //测试语句
}
*/
HashMap<Integer, String> hp1 = new HashMap<Integer, String>(); //第一个映射表
hp1.put(0, "零"); //根据所在位的数值与中文对应
hp1.put(1, "一");
hp1.put(2, "二");
hp1.put(3, "三");
hp1.put(4, "四");
hp1.put(5, "五");
hp1.put(6, "六");
hp1.put(7, "七");
hp1.put(8, "八");
hp1.put(9, "九");
HashMap<Integer, String> hp2 = new HashMap<Integer, String>(); //第二个映射表
hp2.put(2, "十"); //根据所在位数,与中文对应
hp2.put(3, "百");
hp2.put(4, "千");
hp2.put(5, "万");
hp2.put(6, "十万");
hp2.put(7, "百万");
hp2.put(8, "千万");
hp2.put(9, "亿");
//System.out.println(s.size());
String out = "";
while(!s.isEmpty()){
int temp = s.pop();
if(s.size()==0){
if(temp !=0){
out = out + hp1.get(temp);
}
}
else{
if(temp==0){
out = out + hp1.get(temp);
}
else{
out = out + hp1.get(temp) + hp2.get(s.size()+1);
}
}
}
System.out.println(out);
}
}
对于如2008之类的数,输出的是二千零零八,还需要加以判断,我再去处理下。
还有涉及万以上的数,比如
123456
输出的是一十万二万三千四百五十六,也必须增加判断。
⑽ 请问如何用C语言实现汉字,和Unicode编码的转换
字转换:wctomb、mbtowc,wc 指 Wide charactor,mb 指 Multi-byte。
字符串转换:wcstombs、mbstowcs,wcs 和 mbs 的 s 指 string。
这 4 个函数是 C 标准函数库函数中的。如果只是在 Windows 平台下编程,可直接调用 Windows API 函数 WideCharToMultiByte 和 MultiByteToWideChar 实现。但是如果调用标准库函数的话,在 Linux 下也是有效的。调用标准库函数,首先必须包含 locale.h 并调用 setlocale(LC_ALL, "") 后才能正确转换。Windows 下的 Multi-byte 是 ANSI 编码的,Wide charactor 是 Unicode (UTF-16) 编码,而 Linux 下的 Multi-byte 是 UTF-8 编码的,Wide charactor 是 Unicode (UTF-32) 编码。
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
int main(void)
{
char str[12];
wchar_t wstr[] = { 0x52B3, 0x788C, 0 };
setlocale(LC_ALL, "");
wcstombs(str, wstr, sizeof(str)/sizeof(char));
printf("%s", str);
return 0;
}