如何打印指定数量的字符

keekeep 2004-12-11 02:26:56
我想用printf()函数打印 指定数量的 字符数,如 打印15个'*'号,怎么写printf()??
...全文
506 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
arbeisi210 2004-12-11
  • 打赏
  • 举报
回复
如下是分配过内存的程序
#include <stdio.h>
#include <stdlib.h>
/*debug in tc2.0,if debug in vc,include header file "memory.h"*/
#include "mem.h"
void main()
{
char *p = (char*)malloc(sizeof(char));
memset ( p, '*', 15) ;
memset ( (p + 15), '\0', 1 ) ;
printf("\n%s",p);
free(p);
}
dafan 2004-12-11
  • 打赏
  • 举报
回复
to UPPer:

不会吧,没有空间怎么去存数啊??

在VC中可以这样 CString('*',15);
arbeisi210 2004-12-11
  • 打赏
  • 举报
回复
可分配可不分配
peter9606 2004-12-11
  • 打赏
  • 举报
回复
To arbeisi210

你的这个明显没有分配内存空间

char *p ;
memset ( p, '*', 15) ;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arbeisi210 2004-12-11
  • 打赏
  • 举报
回复
这样也行,好象比循环要快些把
#include <stdio.h>
/*在tc2.0环境下,在vc下为"memory.h"*/
#include "mem.h"
void main()
{
char *p ;
memset ( p, '*', 15) ;
memset ( (p + 15), '\0', 1 ) ;
printf("\n%s",p);
}
baoliang68 2004-12-11
  • 打赏
  • 举报
回复
#include<stdio.h>
main()
{
for(int i=1;i=<15;i++)
printf("*");
}
greenteanet 2004-12-11
  • 打赏
  • 举报
回复
for(int i=0;i<15;i++)
printf("*");
zhangwanlong 2004-12-11
  • 打赏
  • 举报
回复
当然是用循环拉
icansaymyabc 2004-12-11
  • 打赏
  • 举报
回复
printf("***************");
「已注销」 2004-12-11
  • 打赏
  • 举报
回复
不能。
int printf( const char *format [, argument]... );

没有循环控制参数。
keekeep 2004-12-11
  • 打赏
  • 举报
回复
循环我知道...我是想知道printf能不能直接控制
masse 2004-12-11
  • 打赏
  • 举报
回复
写一个循环
比如
for(int i=1;i<=15;i++)printf("*");

方法二
写一个函数
void printChar(char c , int n)
{
for(int i=1;i<=n;i++) printf("%c",c);
}
这样下次打印只要调用这个函数就可以了

69,373

社区成员

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

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