c语言函数行数 c语言函数行数不能超过

c语言如何使用函数可以输出任意行数和列数的*号

#include stdio.h

成都创新互联公司的客户来自各行各业,为了共同目标,我们在工作上密切配合,从创业型小企业到企事业单位,感谢他们对我们的要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。专业领域包括网站设计制作、做网站、电商网站开发、微信营销、系统平台开发。

void printStar();

int main()

{

int a, b;

printf("请输入你要的行数和列数:");

scanf("%d %d", a, b);

printStar(a,b);

return 0;

}

void printStar(int r, int c){

int i, j;

for(i =0 ; i r; i++){

for(j = 0; jc; j++){

printf("*");

}

printf("\n");

}

}

用c语言怎么读取txt文件中的行数

读取文件行数, 可以逐个字符读取文件,到文件尾,统计\n的个数

参考代码如下

#include stdio.h

int main()

{

int c;

FILE *fp;

int lines=0;

fp=fopen("in.txt", "rb");

if(fp)

{

while((c=fgetc(fp)) != EOF)

if(c=='\n') lines++;

printf("%d\n",lines);

fclose(fp);

}

return 0;

}

也可以通过fgets函数,每次读取一行,到文件尾,然后计算读取的次数

#include stdio.h

#include string.h

int main()

{

char s[100];

FILE *fp;

int lines=0;

fp=fopen("in.txt", "r");

if(fp)

{

while((fgets(s,100,fp)) != NULL)

if(s[strlen(s)-1]=='\n') lines++;

printf("%d\n",lines);

fclose(fp);

}

return 0;

}

用C语言读出文件行数

#include stdio.h

int hangshu(char file[])//输入工程目录下的文件名,或者其他目录下绝对路径名例如:c:\\1.txt;

{

char c;

int h=0;

FILE *fp;

fp=fopen(file,"r");

if(fp==NULL)

return -1;//表示文件打开错误

while((c=fgetc(fp))!=EOF)

{

if(c=='\n')

h++;

else

{

c=fgetc(fp);//这是处理最后一行可能没有换行标志,但是确文件结束。

if(c==EOF)

{

h++;

break;

}

}

}

return h;

}

int main()

{

int hs=hangshu("c:\\1.txt");//这里说明你要打开的文件。这个是c盘根目录下文件

int hst=hangshu("1.txt");//工程目录下的文件。

printf("行数:%d\n",hs);

printf("行数:%d\n",hs);

}

如上是用c编写的,不是c++.

运行的时候可以把中文注释去掉。

完全可以运行的,我已经测试过了。

用C语言编写一个矩阵转置的函数,矩阵的行数和列数在程序中由用户输入,请问怎么写,非常感谢

我的代码逻辑是:

矩阵行指针初值指向每行首地址,迭代依次取所有行指针指向值组成新行,所有行指针自增。最终组合新的矩阵。

#include stdio.h

#include malloc.h

int **getList(int row,int clo);//获取矩阵地址空间

void setNum(int **nList,int n);//填写数值

void prtList(int **nList,int row,int clo);//打印矩阵

int **zz(int **nList,int row,int clo);//转置函数

int main()

{

int row,clo,**nList=NULL,**nListSave=NULL;

printf("输入矩阵行列数:");

scanf("%d%d",row,clo);

nList=getList(row,clo);

setNum(nList,row*clo);

printf("输入的矩阵为:\n");

prtList(nList,row,clo);

printf("转置后的矩阵为:\n");

nListSave=zz(nList,row,clo);

free(nList);

nList=nListSave;

prtList(nList,clo,row);

return 0;

}

int **zz(int **nList,int row,int clo)

{

int *nSave=NULL,**listSave=NULL,**listp=nList,*p=NULL,i,j;

nSave=(int *)malloc(sizeof(int)*row*clo);

listSave=(int **)malloc(sizeof(int*)*clo);//倒置后的矩阵

p=nSave;

for(j=0;jclo;j++)

{

for(i=0;irow;i++)

{

*p++=*listp[i];

listp[i]=listp[i]+1;

}

}

for(i=0;iclo;i++)

listSave[i]=nSave[i*row];

for(i=0;irow;i++)

free(nList[i]);//释放原矩阵行空间

return  listSave;

}

void prtList(int **nList,int row,int clo)

{

int i,j;

for(i=0;irow;i++)

{

for(j=0;jclo;j++)

printf("%d ",nList[i][j]);

printf("\n");

}

}

void setNum(int **nList,int n)

{

int *p=nList[0];

printf("填写矩阵中%d个数值:\n",n);

while(n--0)

scanf("%d",p++);

}

int **getList(int row,int clo)

{

int *nums,**nList,i;

nums=(int *)malloc(sizeof(int)*row*clo);

nList=(int **)malloc(sizeof(int*)*row);

for(i=0;irow;i++)

nList[i]=nums[i*clo];

return nList;

}

C语言二维字符串数组的行数怎么求啊

#include stdio.h

int main()

{

char str[][6] = {"abcd", "ABC", "abc"};

printf("str行内元素%d\n", sizeof(*str));//这个会显示出二维数组中每个行的元素个数 (这里是指可容纳的个数)

printf("str总%d\n", sizeof(str));//这个会显示出二维数组中元素的个数(这里是指可容纳的个数) 

//其实就是利用了sizeof函数来判断 我们都知道sizeof()用来判断一个类型所占用的字节数的

//所以:你问‘C语言二维字符串数组的行数怎么求啊?’ 你应该是说在定义数组时候没有显示的写出行数,可是此时需要求出行数是吧?

//那么    行数 = 可容纳元素总数(这里是指可容纳的个数) / 行中元素个数(这里是指可容纳的个数)

printf("行数=%d\n", sizeof(str)/sizeof(*str));

return 0;

}

就是考你对二维数组的理解了,别忘了 数组也是c的数据类型之一哦。

只要是数据类型就可以用sizeof判断 其类型占用的内存字节数。

正好c的字符就是占用一个字节啊,所以sizeof返回的字节数=字符个数。

^_^!


网页标题:c语言函数行数 c语言函数行数不能超过
文章分享:http://hbruida.cn/article/hicico.html