C程序数组问题,我定义了一个长度10的数组a[10];我需要在里边做一个判断但不知道怎么做请高手指点

inti,a[10]={1.2.3.4.5}for(i=0;i<10;i++)if(a[i]!='\0')printf("%d",a[i]);我要输出数组里的1到5但每次... int i,a[10]={1.2.3.4.5}
for(i=0;i<10;i++)
if(a[i]!='\0')
printf("%d",a[i]);
我要输出数组里的1到5但每次都输出很多不必要的数据,请问if(a[i]!=.....)这里后面判断究竟要填什么
展开
 我来答
珍惜所有所爱
2011-06-07 · TA获得超过538个赞
知道小有建树答主
回答量:180
采纳率:0%
帮助的人:77.9万
展开全部
不太明白你定义的数组和要输出的有什么关系。
int a[10]={1,2,3,4,5};整形数组是要用分号","来分开赋值的啊,不是.
还有后面的判断a[i]!='\0'这个你是没弄懂这个条件是来判断什么的吧。\0是字符串的结尾,不是整形的结尾,要是你只是想输出1.2.3.4.5你应该用字符串来处理。用字符串很简单。
#include <stdio.h>

void main()
{
char a[10]="1.2.3.4.5";
printf("%s",a);
}
//或者复杂点如下
#include <stdio.h>

void main()
{
int i;
char a[10]="1.2.3.4.5";
for(i=0;i<10;i++)
if(a[i]!='\0')
printf("%c",a[i]);
}
追问
我的定义的数组是10位的,我只填写了5位,后面的用printf输出来的应该是空白字符,但我输出的不是空白字符.是一些不知道是什么的数据,
我需要知道为什么会输出这些数据.
追答
你还是没搞请你写的程序,你写的程序概念错了很多。
你是定义了数组10位,但你说你填写了5位,你所填写的是错误的方法(1.2.3.4.5)不这样来分配的。应该是1,2,3,4,5是分号,还有整形数组结尾不是\0,那是字符串,你有没看我写给你的回答啊
丁荣卫
2011-06-07 · TA获得超过100个赞
知道答主
回答量:134
采纳率:0%
帮助的人:73万
展开全部
int i,a[10]={1.2.3.4.5}; //这里有分号
for(i=0;i<10;i++)
{
if(a[i]='\0')
{
return;
}
printf("%d",a[i]);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式