您的位置:

c语言打印系统,用c语言打印出

本文目录一览:

用C语言设计一个超市购物打印系统

我自己设计了一个,你试试!操作结束后按Ctrl+z显示清单。使用方面有什么不懂可以问我!

#include "stdio.h"

typedef struct{

char node[100]; /*商品编号*/

char name[100];/*商品名称*/

float price;/*商品价格*/

} datatype;

typedef struct node{

datatype food[100];

int len;/*存放商品总数*/

}SPku;

datatype Input(void)

{datatype x;br/ scanf("%s %s %f",x.node,x.name,x.price);br/ printf("输入完毕!");br/return x;br/}

void create(SPku *r)

{ int i;

printf("\n输入商品总数:");

scanf("%d",r-len);

for(i=0;ir-len;i++)

{printf("\n输入商品编号 名称 价格:"); br/ r-food[i]=Input();br/ }

}

int strlen(char s[])

{int i;br/ for(i=0;is[i];i++);br/ return i;br/ }

int compare(char y[],char s[])

{int i;br/if(strlen(y)!=strlen(s))br/ return 0;br/elsebr/ for(i=0;istrlen(y);i++)br/ if(y[i]!=s[i])br/ return 0;br/ return 1;br/}

void Output(datatype f)

{

printf("\n%s %s %f",f.node,f.name,f.price);

}

int judge(SPku *r,char nd[])

{ int i;

for(i=0;ir-len;i++)

if(compare(r-food[i].node,nd))

{ Output(r-food[i]) ;

return i;

}

return 1000;

}

main()

{SPku r,n;br/ char nd[100];br/ int k,j,i,y=0;br/ printf("\n开始创建数据库...");br/ create(r);br/ printf("\n*********商品总单*********");br/ for(i=0;ir.len;i++)br/ Output(r.food[i]);br/ printf("\n**************************");br/while((j=getchar())!=EOF)br/ {br/ printf("\n扫描输入商品的编号:");br/ gets(nd);br/ printf("输入成功!");br/ k=judge(r,nd);br/ if(k==1000) br/ printf("\n无此商品...");br/ elsebr/ n.food[y++]=r.food[k];br/ }

printf("\n*********商品清单*********");

n.len=y;

for(i=0;in.len;i++)

Output(n.food[i]);

}

c语言的控制台打印时每次都出错

调用刷新缓冲区的函数。它是一个行缓冲函数,当你执行这个函数时,并不会立即打印数据。而是等printf的缓冲区满1024个字节才会打印出来。调用刷新缓冲区的函数即可。C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。

用C语言实现打印功能的具体代码是什么?

int __cdecl printf ( const char *format, ...)

{

va_list arglist;

int buffing;

int retval;

va_start(arglist, format);

_ASSERTE(format != NULL);//断言宏。如果输出格式字符串指针为空,则在DEBUG版下断 言,报告错误。

_lock_str2(1, stdout);

buffing = _stbuf(stdout);//stdout:指定输出到屏幕

retval = _output(stdout,format,arglist);

_ftbuf(buffing, stdout);

_unlock_str2(1, stdout);

return(retval);

}

以上为printf()的源代码,也就是你说的打印功能。

c语言 打印系统时间

#include stdio.h 

#include time.h 

int main()

time_t rawtime; 

struct tm * timeinfo; 

time ( rawtime ); 

timeinfo = localtime ( rawtime ); 

printf ( "当前系统时间: %s", asctime (timeinfo) ); 

return 0;

}

说明:

time_t // 时间类型(time.h 定义)

struct tm { // 时间结构,time.h 定义如下:

int tm_sec;

int tm_min;

int tm_hour;

int tm_mday;

int tm_mon;

int tm_year;

int tm_wday;

int tm_yday;

int tm_isdst;

}

time ( rawtime ); // 获取时间,以秒计,从1970年1月一日起算,存于rawtime

localtime ( rawtime ); //转为当地时间,tm 时间结构

asctime() // 转为标准ASCII时间格式:

//就是直接打印tm,tm_year 从1900年计算,所以要加1900,月tm_mon,从0计算,所以要加1

C语言打印系统时间,输出错误

dateblk-da_day=sys.wDay;

dateblk-da_mon=sys.wMonth;

dateblk-da_day=sys.wYear;/*你这里再次对da_day赋值了,但看你意思应该是对da_year赋值了,所以你对年根本 没有赋值 ,就是一个初始化值,但你又没有初始化,所以就是一个系统给的值,至于值是多少那就只有系统知道了*/

而且 printf("%d-%d-%",dateblk-da_year,dateblk-da_mon,dateblk-da_day);中掉了一个"%d-%d-%d"