C程序:在文本文件中打印两行数字
我需要的c程序,它保存的数字txt文件,但数字必须是2行。 现在我有这个代码,但如何打印第2行的数字。 我真的希望有人能帮我解决这个问题C程序:在文本文件中打印两行数字,c,file,numbers,row,C,File,Numbers,Row,我需要的c程序,它保存的数字txt文件,但数字必须是2行。 现在我有这个代码,但如何打印第2行的数字。 我真的希望有人能帮我解决这个问题 #include <stdio.h> #include <conio.h> #include <string.h> #include <windows.h> #include <ctype.h> #define max 80 #define n 30 #define space ' ' void in
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <windows.h>
#include <ctype.h>
#define max 80
#define n 30
#define space ' '
void inputText(char text[][max], int *len);
void writeText(FILE *fp, char *text);
int main(){
char text[n][max];
int i=0, len=0;
FILE *fp=NULL;
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
inputText (text,&len);
fp=fopen("test.txt", "a");
if(fp!=NULL)
for (i=0;i<len;i++)
writeText (fp, text[i]);
else
printf("Error!");
fclose(fp);
return 0;
}
void inputText(char text[][max], int *len)
{ char ch;
int i=0, s=0;
printf("Input text:");
while ((gets(text[i]))!=NULL)
{ i++;
(*len)++;
}
}
void writeText(FILE *fp, char *text)
{ fputs(text,fp);
fprintf(fp,"\n");
}
#包括
#包括
#包括
#包括
#包括
#定义最大值80
#定义n30
#定义空间“”
无效输入文本(字符文本[][max],整数*长度);
void writeText(文件*fp,字符*text);
int main(){
字符文本[n][max];
int i=0,len=0;
FILE*fp=NULL;
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
输入文本(文本和len);
fp=fopen(“test.txt”,“a”);
如果(fp!=NULL)
for(i=0;ifprintf(fp,“\n”);
语句(在writeText()内部)是导致输出中出现换行的原因。您应该找到一种方法,仅在第2、4、6、…个数字输出之后运行该语句。也许可以将函数writeText更改为类似的形式
void writeText(FILE *fp, char *text, int current)
{ fputs(text,fp);
if(current % 2 == 0)
{
fprintf(fp,"\n");
}
}
如果不将参数的数量更改为writeText,则可以在writeText中定义静态变量,并在函数结束前仅输出一个“\n”值(如果为true),然后输出变量=!variable)。