运行该程序,要求从大到小输出
图中以下代码有若干错误,请进行改错
第4行的变量C改为c,因为后面都使用的变量名c;
去掉11行后面的分号,因为if的语句体应为后面大括号里的内容;
然后三个if里面的小于号改为大于号,因为是从小到大排序。
修改如下:
#include <stdio.h>
int main(void){
float a,b,c,p; //这里变量C改为c
printf("Please type in a,b,c:");
scanf("%f, %f,%f",&a,&b,&c);
if(a>b)// 从小到大排序,小于号都改为大于号
{ p=a;a=b;b=p; }
if(a>c)// 从小到大排序,小于号都改为大于号
{ p=a;a=c;c=p;}
if(b>c)// 从小到大排序,小于号都改为大于号 ,然后去掉这个if后面的分号
{ p=b;b=c;c=p;}
printf("%6.2f, %6.2f, %6.2f\n",a,b,c);
}
ls > allfile //列出所有文件
grep .c$ allfile > data //匹配筛选出以.c结尾文件名
接下来用统计每个文件中’\n’ 数量来统计总共编写的c代码行数
//mycount.c
#include <stdio.h>
#include <stdlib.h>
int main()
{
int count = 0, ch = 0;
FILE * fp;
FILE * cp;
fp = fopen("data","r");
char name[20];
while((fscanf(fp,"%s",name))==1)
{
cp = fopen(name,"r");
while((ch=getc(cp))!=EOF)
{
if(ch == '\n')
ount++;
}
}
printf("the count %d\n",count);
}