printf()为什么显示不出来?

straightforward 2002-07-09 06:51:12
我用C编程,遇到了这个问题,屏幕上printf语句显示不出来,为什么?谢谢!

#include <iostream.h>
#include <stdio.h>
#include <conio.h>

int a;
void b();

void b() {
a=1;
while (a>2)
{
a=2;
printf("a:",a);
a=a+1;
}
getch();
}

void main() {
b();
}
...全文
1764 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
chenshi 2002-07-09
  • 打赏
  • 举报
回复
#include <stdio.h>
#include <conio.h>

int a;
void b(){
a=1;
while (a<2){
a=2;
printf("a:%d",a);
a=a+1;
}
getch();
}

void main(){
b();
}
straightforward 2002-07-09
  • 打赏
  • 举报
回复
to jgg(建):
我主要是想问问为什么Printf()在这里不显示。循环只是走个形式而已。
straightforward 2002-07-09
  • 打赏
  • 举报
回复
谢谢你们! while(a>2)是我的笔误,对不起! 问题还是应该该prinf("a:" %6,a).
jgg 2002-07-09
  • 打赏
  • 举报
回复
楼上的各位说的都是对的
不过我要问问
这段程序干啥用???
进不了while语句,改了后也只能走一遍,因为这时a=3,不会循环

poplv 2002-07-09
  • 打赏
  • 举报
回复
另外,将printf("a:",a);改为printf("a:%d",a);
没有格式符,只有变量,怎么输出?
poplv 2002-07-09
  • 打赏
  • 举报
回复
WHILE语句不执行,因为a原值为1,而你写的while 是a>2时执行

可改为:

#include <iostream.h>
#include <stdio.h>
#include <conio.h>

int a;
void b();

void b() {
a=1;
while (a<2)
{
a=2;
printf("a:",a);
a=a+1;
}
getch();
}

void main() {
b();
}
Tipel 2002-07-09
  • 打赏
  • 举报
回复
1,根本不会执行到printf语句,前面 LeeMaRS(小菜虎_水壶的仇人) 说的很清除了。
2. printf("a:",a);改为printf("a: %d",a),否则只显示a:
jamesfangjing 2002-07-09
  • 打赏
  • 举报
回复
printf("a:",a);
这一句也有问题!应该如下:
printf("a: %d",a);
zjq5308 2002-07-09
  • 打赏
  • 举报
回复
什么东东啊,这么乱啊!!
LeeMaRS 2002-07-09
  • 打赏
  • 举报
回复
你令a的初值为1,即a=1
然后下面的while的条件为a>2
a=1 a是小于2的 怎么会进入while 执行printf呢?

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧