c语言怎样才能输出中文???(最简单的方法)

rt,在一个程序中我puts()输出中文名字,带但有些有会多出几个不是我输入的字,怎么才能让它输出正确??可能没说清楚,我puts()的括号里是一个指针变量(*P),这个... rt,在一个程序中我puts()输出中文名字,带但有些有会多出几个不是我输入的字,怎么才能让它输出正确??
可能没说清楚,我puts()的括号里是一个指针变量(*P),这个变量是用gets(&p)得到的汉字,但用puts(&p)输出有的就会多几个字出来,有的又是正常的.....我想知道怎样才能输出正常。
我是用的vc2003,2005我也有。
->6楼:你的方法我也试了的,还是一样,我发现要是输入一个汉字的话就不会出问题,我把程序(得到名字的函数)放在下面,你们看看是怎么回事啊。

typedef struct
{
int no;
int ti;
int ip[N];
int c;
char name[21];
}bus;
void getdata(bus a[M])
{
a[0].ti=0;
bus *p;
int m;
p=a;
int n=50101;
for(int i=0;i<M;i++)
{
n=n+i;
a[i].no=n;
a[i].c=rand()%3+3;
m=a[i].c;
for(int j=0;j<m;j++)
{
a[i].ip[j]=rand()%81+50;
a[i].ti=a[i].ti+a[i].ip[j];
}
printf("请输入5010%d车名:",i+1);//这里
gets(&(p+i)->name[21]);
sum=sum+a[i].ti;
}
}
输出用的是:puts(&(p+i)->name[21]);
展开
 我来答
04076013
2008-12-08 · 超过10用户采纳过TA的回答
知道答主
回答量:76
采纳率:0%
帮助的人:0
展开全部
其实很简单,你是用WIN-TC就可以了,在里面加一句代码:
system("graftabl 936");
记住要紧随定义变量之后,不信试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
号阿壹3
2008-12-08 · TA获得超过728个赞
知道小有建树答主
回答量:458
采纳率:0%
帮助的人:410万
展开全部
可能和编译器的版本有关啊,我的vc6++就行,还可以保存中文名字的c文件。用支持汉字的编译器试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
iaskdo
2008-12-08 · TA获得超过287个赞
知道答主
回答量:61
采纳率:0%
帮助的人:44.2万
展开全部
最简单的:
#include<stdio.h>
void main(){
puts("我的名字是:***\n");
}

怎么会不行呢?是不是语法错误?通过编译了吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
李盛鑫2008
2008-12-08 · 超过11用户采纳过TA的回答
知道答主
回答量:65
采纳率:0%
帮助的人:0
展开全部
用printf()
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yukunlinykl
2008-12-08 · TA获得超过3224个赞
知道小有建树答主
回答量:1049
采纳率:0%
帮助的人:1136万
展开全部
你用的是什么版本?
要用高一些的版本才行!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式