首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

花了许多分都没得到满意答案,再花点分求解惑

2013-01-18 
花了好多分都没得到满意答案,再花点分求解惑我用的是DEV-C++4.9.9.2编译器输入如下程序#includestdio.hm

花了好多分都没得到满意答案,再花点分求解惑
花了许多分都没得到满意答案,再花点分求解惑我用的是DEV-C++4.9.9.2编译器
输入如下程序
#include<stdio.h>
main()
{
int i,j=1;
for(i=1;i<=3;i++)
printf(i==3?"%4d\n":"%4d",i*j);
输出结果是   1   2   3
可我按照定义来计算  输出应该是   1   2
才对啊  前几天问了2遍,别人的编译器都是   1  2
就我的  还是   1   2   3
编译环境到底怎么搞啊  我就是下载安装选择中文环境  就开始学习了花了许多分都没得到满意答案,再花点分求解惑

[解决办法]
for(i=1;i<=3;i++)

你是i<=3,不是<3,当然是执行3次循环,i分别=1,2,3。
printf(i==3?"%4d\n":"%4d",i*j);意思是,当i==3时,使用"%4d\n"格式化,否则使用"%4d"格式化,后面的i*j不管i为多少总是要输出的,只是不同的情况输出格式不一样,即换不换行的问题。

热点排行