C语言如何求一个二维数组有几行,还有为什么会提示gets()是一个未定义的标识符?

Python014

C语言如何求一个二维数组有几行,还有为什么会提示gets()是一个未定义的标识符?,第1张

C语言中求一个二维数组有几行的方法如下:

假设有定义int nums[10][20]

二维数组行数可以用sizeof计算:

rows = sizeof(nums)/sizeof(nums[0])

第二个问题,为什么gets会提示未定义标识,有两种可能:

一、编译器支持gets库函数,但是你没有包含头文件#include<stdio.h>;

二、编译器本身不支持gets库函数,因为gets函数是一个不安全函数,容易导致数组越界,所以很多编译器都不再有这个库函数了。取而代之的是gets_s或者fgets这类相对安全的函数,可以试试。

首先你要看懂程序。大概来讲这个程序是用来生成一个文本文件,文件名和内容都由用户输入。

%s不接收回车符,scanf语句中输入的文件名+回车符(回车用以确认)在scanf s%中只接收到文件名的最后一个字符为止,回车符还在缓存里。

后面是要用户输入文件内容,每输入一个,向文件里写一个,并且在屏幕上打印一个。getchar从流中读取单个字符,只用一个的话接收到的回车符是不要的,所以直接再用一个覆盖掉。

之后进入写文件的循环,直到输入#退出。

是个3*4的二维数组,即三行四列{0,1,2,3},

{4,5,6,7},{8,9,10,11}

分别表示第一行到第三行的元素。即第一行元素值:a[0][0]=0,a[0][1]=1,a[0][2]=2,

a[0][3]=3,分别对应第一个花括号{0,1,2,3},以此类推。

这是前人规定的,不是以我们意志转移的,这个是在赋初值啊!