C语言编程问题 高手进 C语言三个编程问题,请高手进!加分!!

作者&投稿:锺汤 (若有异议请与网页底部的电邮联系)
如果第2点满足了,那么第3点也不需要多线程了。

估计你用的是TC编译器,这是一个很差的编译器,建议你使用VC++(window)或者gcc(Linux/Unix)两者之一。图形和多线程都是与操作系统相关的东西,单单的C语言标准库是没有这类函数的,所以,如果你真的要实现这些东西,请选译一个平台(window或Linux),深入学习。

关于你说的第2点,TC还是有办法的。即使用boiskey函数

函数原型:int bioskey (int cmd)
说明:bioskey()的函数原型在bios.h中 bioskey()完成直接键盘操作,cmd的值决定执行什么操作。
cmd = 0:
当cmd是0,bioskey()返回下一个在键盘键入的值(它将等待到按下一个键)。它返回一个16位的二进制数,包括两个不同的值。当按下一个普通键时,它的低8位数存放该字符的ASCII码;对于特殊键(如方向键、F1~F12等等),低8位为0,高8位字节存放该键的扫描码。
cmd = 1:
当cmd是1,bioskey()查询是否按下一个键,若按下一个键则返回非零值,否则返回0。
cmd = 2:
当cmd是2,bioskey()返回Shift、Ctrl、Alt、ScrollLock、NumLock、CapsLock、Insert键的状态。各键状态存放在返回值的低8位字节中。 字节位 含义 0 右边Shift键状态 1 左边Shift键状态 3 Ctrl键状态 4 Alt键状态 5 ScrollLock键状态 6 NumLock键状态 7 CapsLock键状态 8 Insert

bioskey函数在游戏开发中很有用的一个函数,基本都是用它来处理用户的输入。scanf函数用来接受用户的输出入,直到用户输入后才返回。而bioskey不同的,它可以获取此时用户是否输入,如果输入,可以获取用户的输入值,只要设置函数的入口参数cmd即可。

http://blog.csdn.net/linyt/archive/2007/01/11/1480281.aspx
这是我博客上的一篇文章,具体分析搬运工游戏的代码,跟你的程序结构应该是很类似的(只能在TC上编译)

那个黑框子叫做控制台,是不带图形用户界面的.
如果真想用C语言写带图形界面的东西,在Windows下必须使用Win32 API,建议你看一下<Windows 程序设计>,网上有电子书可以下到.不过要做好心理准备,学用C语言进行Win32编程的难度比初学C语言还要大.
如果想速成,可以学VB,C#之类的语言,它们封装了许多底层的东西,可以以拖放的方式来设计程序的界面.

可以用一个死循环解决你说的问题。
比如:while(1){}
这样程序就能不断的执行下去了:)

3.看完书后发现C语言编的程序怎么都是“单线程”(不知道该怎么说)的?
那你何不在Linux下编C语言程序呢?Linux系统为程序员提供了多线程接口,不知道windows下有没有?反正标准C库我没发现有。

getch()不用按回车

C语言编程高手进问题简单~

没有看懂你究竟要完成什么~~!

一(1)
void main(int argc,char* argv[])
{
int a=0,b=0,i,c;
for(i=0;argv[1][i]!=0;i++)
a=a*10+argv[1][i]-'0';

for(i=0;argv[2][i]!=0;i++)
b=b*10+argv[2][i]-'0';

if(argc==4){
switch(*argv[3]){
case '+':printf("%d",a+b);break;
case '-':printf("%d",a-b);break;
case '*':printf("%d",a*b);break;
case '/':printf("%d",a/b);break;
}
}
else;

}
太多了,真的做不完啊!fliename.exe argv1 argv2 argv3 运行就好了
而且其它几题都不难的说。。。你自己试着做吧^ ^