
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]!=.....)这里后面判断究竟要填什么 展开
for(i=0;i<10;i++)
if(a[i]!='\0')
printf("%d",a[i]);
我要输出数组里的1到5但每次都输出很多不必要的数据,请问if(a[i]!=.....)这里后面判断究竟要填什么 展开
2个回答
展开全部
不太明白你定义的数组和要输出的有什么关系。
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]);
}
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,那是字符串,你有没看我写给你的回答啊
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询