C语言中输出的时候如何去掉最后一个空格

如题所述

不要这样输入printf("%d ",x); 

举个例子 for 的,先定义count=0;

for(i=1;i<=n;i++)

{

if(count!=0)

printf(" ");这里输入空格

然后输出printf("%d",x);

count++;

这样就保证了第一个数前面没有空格,最后一个数后面也没空格,只有数字之间有空格。

扩展资料:

在C语言文件数据的输入输出中,当调用输出函数把程序中变量的值输出到外部文件中时,这种操作成为“输出”或“写”。程序员们为了便于记忆和理解,通常将“输出”和“写”共读为:写出。

这与别于“读”,即“输入”。

读入:fscanf(文件指针,格式控制字符串,输入项表);fread(buffer,size,count,fp);ch=fgetc(pf);fgets(str,n,fp);

写出:fprintf(文件指针,格式控制字符串,输入项表);fwrite(buffer,size,count,fp);fputc(ch,fp);fputs(str,fp);

注意:

1、以上每个函数都以“f”开头,其代表文件(file)之意,这正与正常数据的输入输出(scanf和printf)函数区分开来;str代表字符串(string)之意,ch则是代表字符(characters);

fp代表文件指针(file pointer),而pf代表指向文件的文件指针,即“文件指针指向”(Pointing to file pointer),通常也叫做文件指针;

2、文件字符的输入输出函数也可写为:getc和putc,它们与fgetc和fputc函数是等价的;

3、要注意正常“字符”的输出(ch=getchar())输入(putchar(ch))与“文件字符”的输入输出的函数调用上的区别。

参考资料:百度百科——输出

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-11-05
你不要这样输入printf("%d ",x); 你应该是循环的吧
举个例子 for 的
先定义count=0;
for(i=1;i<=n;i++)
{
if(count!=0)
printf(" ");这里输入空格
然后输printf("%d",x);
count++;

这样就保证了 第一个数前面没有空格 最后一个数后面也没空格 只有数字之间有空格
第2个回答  推荐于2017-10-10
如果int a[8]={1,22,333,4444,5,66,777,8888};
要想得到一行"1 22 333 4444 5 66 777 8888"这样的输出结果,通常可以用两种方式实现:
1)
for(i=0;i<7;i++)
printf("%d ",a[i]);
printf("%d\n",a[i]);

2)
printf("%a",a[i]);
for(i=1;i<8;i++)
printf(" %d",a[i]);
printf("\n");
第3个回答  2011-11-05
for(i=1;i<n;i++) printf("%d ",a);
printf("%d",a);

或者
for(i=1;i<=n;i++) printf("%d ",a);
printf("\b"); (等价于 putchar('\b');)
第4个回答  2011-11-05
代码上来看看 吴震寰好啊,那个不咋地
for(i=1;i<=n;i++)
{
if(i==n)
printf("%d",a);
else
printf(“%d ”,a);
}