C语言中怎么显示文件的内容在屏幕上

#include<stdio.h>FILE*fp;structform{intID[2];charname[15];intsub[4];};voidaverage1(fl... #include<stdio.h>
FILE *fp;
struct form
{
int ID[2];
char name[15];
int sub[4];
};
void average1(float amount[]);
void average2(struct form stu[]);
int main()
{
char nam[50];
char line[256];
char name[10];
int grade, aver, ID, i, sum, j;
float amount[10] = { 0 };
struct form stu[10];
printf("请输入十个学生的学号和姓名:\n");
for (i = 0; i < 10; i++)
{
scanf("%d", stu[i].ID);
scanf("%s", stu[i].name);
}
printf("请输入十个学生的四门成绩:\n");
for (i = 0; i < 10; i++)
{
sum = 0;
for (j = 0; j < 4; j++)
{
scanf("%d", &stu[i].sub[j]);
sum += stu[i].sub[j];
amount[i] = sum;
}
average1(amount);
average2(stu);
fp=fopen("stud","w");
fprintf(fp, "%-10s%-15s%-10s%-10s%-10s%-10s%-10s\n",
"学号", "姓名", "数学", "外语", "体育", "C语言", "平均");
for(i=0;i<10;i++)
{
fprintf(fp,"%-10d %-15s",stu[i].ID,stu[i].name);
for(j=0;j<4;j++)
fprintf(fp,"%-10d",stu[i].sub[j]);
}
fclose(fp);
return 0;
}
}
void average1(float amount[])
{
int i, j;
float averagestu[10] = { 0 },t;
for (i = 0; i < 10; i++)
averagestu[i] = amount[i] / 4;
for (i = 0; i < 10; i++)
{
for (j = 0; j <= 10 - i; j++)
{
if (averagestu[j] <= averagestu[j + 1])
{
t = averagestu[j];
averagestu[j] = averagestu[j + 1];
averagestu[j + 1] = t;
}
else
continue;
}
}
for (i = 0; i < 10; i++)
printf("%f ", averagestu[i]);
printf("\n");
}
void average2(struct form stu[])
{
int i, j;
float averagesub[4] = { 0 }, m;
for (i = 0; i < 4; i++)
{
m = 0;
for (j = 0; j < 10; j++)
m += stu[j].sub[i];
averagesub[i] = m;
}
for (i = 0; i < 4; i++)
printf("学科号为%d的平均分为%f\n", i + 1,
averagesub[i] / 10);
}
显示fp的内容
展开
 我来答
做一个快乐的茶农
高粉答主

2019-06-26 · 每个回答都超有意思的
知道答主
回答量:1396
采纳率:100%
帮助的人:35.1万
展开全部

1、首先第一步,你打开软件,第一行代码要写头文件,我们写的是#include<stdio.h>,在这个头文件里包含了我们要调用的函数。

2、第二行就是main函数了,他是程序执行的入口,势必不可少的;int maihn (void),void可以省略。

3、第三部,Main函数写完之后,一点还要再下面加大括号,漏加大括号是初学者经常犯的问题。

4、写完大括号,就开始调用函数了我们调用printf(  );函数,他的功能就是在屏幕上输出一行字。

5、要注意printf函数的格式,printf(“百度666666”);里面有双引号;外面有分号。

6、加上return 0;就结束了,点击编译,在运行们就可以在控制台上使出你想输出的字了。

mafangsan
推荐于2017-09-23 · TA获得超过1.2万个赞
知道大有可为答主
回答量:1万
采纳率:71%
帮助的人:2594万
展开全部
最省心的方法是读一个字符显示一个字符,直到文件结束为止。
写了一段代码,家了一些注释,你仔细看一下
#include <stdio.h>
void main()
{
    FILE *fp;
    char buff[128];
    printf("请输入文件名");
    scanf("%s",buff);
    fp=fopen(buff,"r");    //打开文件
    char ch;
    while((ch=fgetc(fp))!=EOF)    //不到文件结束就循环
            putchar(ch);          //输出一个字符
    fclose(fp);            //关闭文件指针
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
神奇浪漫
2012-12-12 · 超过22用户采纳过TA的回答
知道答主
回答量:174
采纳率:0%
帮助的人:82.1万
展开全部
用 write 和read可以做到
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
uniquezcc
2012-12-12
知道答主
回答量:30
采纳率:0%
帮助的人:7万
展开全部
printf
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
笑熬将胡
2012-12-12 · TA获得超过301个赞
知道小有建树答主
回答量:249
采纳率:0%
帮助的人:106万
展开全部
printf
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式