C语言,输入一个字符串,在每个字符后面加个字符*,组成新的字符串,并输出?
#include
char fun(char a[])
{
int k,l,i,j;
char b[80];
printf("你想截取的字符串从第几个开始?\n");
scanf("%d",&k);
printf("你想在第几个结束呢?\n");
scanf("%d",&l);
for(i=k-1,j=0;i
c语言中"*s"这是什么意思?
取决于在scanf中使用还是在printf中使用。 在scanf中使用,则添加了*的部分会被忽略,不会被参数获取。 例如:int a,b;char b[10];scanf("%d%*s",&a,b);输入为:12 abc那么12将会读取到变量a中,但是后面的abc将在读取之后抛弃,不赋予任何变量(例如这里的字符数组b) 在printf中使用,表示用后面的形参替代的位置,实现动态格式输出。
例如: printf("%*s",10,s);/意思是输出字符串s,但至少占10个位置,不足的在字符串s左边补空格,这里等同于printf("%10s",s)
;/
怎样用C语言写一个程序,打开记事本,并输入一段文字?
#include <stdlib.h>#include <stdio.h>#define Line ***int main(){ //文件名及文件指针 char infile[]="D:\\Wtmp\\1.txt"; char outfile[]="D:\\Wtmp\\2.txt"; FILE *fpi,*fpo; //暂存器 char *outbuf; outbuf = (char *)malloc(Line*sizeof(char))
; if( ( fpi=fopen(infile,"r") ) == NULL ) { printf("文件打开%s失败\n",infile)
; return 3; } if( ( fpo=fopen(outfile,"w") ) == NULL ) { printf("文件打开%s失败\n",outfile)
; return 3; } while(1) { //outbuf要干净 //memset(outbuf,0,Line); outbuf=0; fprintf(fpo,"%s",outbuf)
; if (fgets(outbuf,Line,fpi)==NULL) { break; }//全部行结束退出循环 //DelStr(outbuf,"删除字符串")
; //重载函数DelStr //DelStr(outbuf,"要替换字符串","替换成字符串")
; //重载函数DelStr fprintf(fpo,"%s",outbuf); } //关闭文件 free(outbuf); fclose(fpi); fclose(fpo); return 0;}