而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写程序。
package comstringto;
import javautilArrays;
import javautilScanner;
public class JudeCount{
public static void main(String[]args){
Systemoutprintln("请输入你要判断的字符串:");
Scanner s=new Scanner(Systemin);
String str=snextLine();
char[]ch=strtoCharArray();
Arrayssort(ch);//对数组排序
char max='a';//记录出现次数最多元素
int maxcount=0;//记录最大出现次数
int count=1;//中间传值参数判断当前元素出现次数
for(int i=0;i<chlength-1;i++){//进行判断
if(ch<i>==ch[i+1]){
count++;
}
if(ch<i>!=ch[i+1]){
if(count>maxcount){
maxcount=count;
max=ch<i>;
}
count=1;
}
}
Systemoutprintln("出现最多的元素是:"+max+"次数为:"+maxcount);
}
}
扩展资料:
system函数用法:
用法:intsystem(char*command);
程序例:
#include<stdlib.h>
#include<stdio.h>
intmain(void)
{
printf("AbouttospawnandrunaDOScommand\n");
system("dir");
return0;
}
又如:system("pause")可以实现冻结屏幕,便于观察程序的执行结果;system("CLS")可以实现清屏 *** 作。而调用color函数可以改变控制台的前景色和背景,具体参数在下面说明。
例如,用system("color0A");其中color后面的0是背景色代号,A是前景色代号。各颜色代码如下:
0=黑色1=蓝色2=绿色3=湖蓝色4=红色5=紫色6=7=白色8=灰色9=淡蓝色A=淡绿色B=淡浅绿色C=淡红色D=淡紫色E=淡F=亮白色
(注意:MicrosoftVisualC++6.0支持system)
颜色属性由两个十六进制数字指定--第一个对应于背景,第二个对应于前景。每个数字
可以为以下任何值:
0=黑色8=灰色
1=蓝色9=淡蓝色
2=绿色A=淡绿色
3=浅绿色B=淡浅绿色
4=红色C=淡红色
5=紫色D=淡紫色
6=E=淡
7=白色F=亮白色
public class FrameMaxValue {TextField tf1,tf2,tf3,tf4;
Button b;
public void init(){
//创建组件
Frame f=new Frame("求最大值");
b=new Button("求最大值");
tf1=new TextField();
tf2=new TextField();
tf3=new TextField();
tf4=new TextField();
//添加组件
fadd(tf1);
fadd(tf2);
fadd(tf3);
fadd(tf4);
fadd(b);
//设置布局
fsetLayout(new FlowLayout());
//设置窗口大小和可见性
fsetSize(300,200);
fsetVisible(true);
//注册监听
faddWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
egetWindow()setVisible(false);
egetWindow()dispose();
Systemexit(0);
}
});
baddActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
int num1=IntegerparseInt(FrameMaxValuethistf1getText());
int num2=IntegerparseInt(FrameMaxValuethistf2getText());
int num3=IntegerparseInt(FrameMaxValuethistf3getText());
int max=num1;
if(num2>max){
max=num2;
}
if(num3>max){
max=num3;
}
FrameMaxValuethistf4setText(max+"");
}
});
}
public static void main(String[] args) {
new FrameMaxValue()init();
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)