【发布时间】:2021-05-10 10:55:33
【问题描述】:
假设我的代码是
void main()
{
for(i=1;i<5;i++)
{
printf("%d, ",i);
}
}
这个程序的输出将是
1, 2, 3, 4,
我怎样才能得到类似的输出
1, 2, 3, 4
最后的, 应该省略。
【问题讨论】:
假设我的代码是
void main()
{
for(i=1;i<5;i++)
{
printf("%d, ",i);
}
}
这个程序的输出将是
1, 2, 3, 4,
我怎样才能得到类似的输出
1, 2, 3, 4
最后的, 应该省略。
【问题讨论】:
#include <stdio.h>
int main(void)
{
const char *pad = "";
for (int i = 1; i < 5; i++)
{
printf("%s%d", pad, i);
pad = ", ";
}
putchar('\n');
return 0;
}
一旦你打印了字符,你就不能“删除”它。你必须编写代码,这样你就不会打印出你真正不需要的东西。
【讨论】:
使用 if 语句。例如
#include <stdio.h>
int main( void )
{
for ( int i = 1; i < 5; i++ )
{
if ( i != 1 ) printf( ", " );
printf( "%d", i );
}
putchar( '\n' );
}
程序输出是
1, 2, 3, 4
或用于输出字符串。
#include <stdio.h>
int main( void )
{
const char *s = "1234";
for ( const char *p = s; *p; ++p )
{
if ( p != s ) printf( ", " );
putchar( *p );
}
putchar( '\n' );
}
程序输出又是
1, 2, 3, 4
【讨论】:
通过使用 if 和 else....!!!!
#include <stdio.h>
int main() {
// Write C code here
int i;
for(i=1;i<5;i++){
if(i==4){
printf("%d",i);
}
else{
printf("%d, ",i);}
}
return 0;
}
【讨论】: