第1个回答 推荐于2016-02-05
#include "stdio.h"
#define N 5
struct student
{
char num[6];
char name[8];
int score[4];
} stu[N];
void input()//stu是全局变量,函数不用参数
{
/**********FOUND**********/
int i, j;
for(i=0;i<N;i++)
{
printf("\n please input %d of %d\n",i+1,N);
printf("num: ");
scanf("%s",stu[i].num);
printf("name: ");
scanf("%s",stu[i].name);
for(j=0;j<4;j++)//总共有4门成绩
{
/**********FOUND**********/
printf("score %d.",j);
scanf("%d",&stu[i].score[j]);
}
printf("\n");
}
}
void print()//同理不用参数
{
int i,j;
printf("\nNo. Name Sco1 Sco2 Sco3 Sco4\n");
/**********FOUND**********/
for(i=0;i<=N;i++)
{
printf("%-6s%-10s",stu[i].num,stu[i].name);
for(j=0;j<4;j++)//同理改成4
printf("%-8d",stu[i].score[j]);
printf("\n");
}
}
main()
{
input();
print();
}本回答被提问者采纳
第2个回答 2010-03-26
首先要说的是:你的改错题是有问题的,已在下面给出说明。还有现在都用的是C++,可是有的c中的少部分已被扬弃了,如c 中的函数定义。
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:下面的程序是求1!+3!+5!+……+n!的和。
-------------------------------------------------------*/#include "stdio.h"
main()
{
long int f,s;
int i,j,n;
scanf("%d",&n);
/***********SPACE***********/
s=0;
/***********SPACE***********/
for(i=1;i<=n; i++)
{
f=1;
/***********SPACE***********/
for(j=1; j<=i;j++)
/***********SPACE***********/
f*=j;
s=s+f;
}
printf("n=%d,s=%ld\n",n,s);
}
/*------------------------------------------------------
【程序改错】
--------------------------------------------------------
功能:编写input()和output()函数输入,输出5个学生的数据记录。
------------------------------------------------------*/
#include "stdio.h"
#define N 5
struct student
{
char num[6];
char name[8];
int score[4];
} stu[N];
input(struct student stu[])
//struct student stu[];这种定方式在C++中已被摒弃
{
/**********FOUND**********/
int i,j;//;改成,
for(i=0;i<N;i++)
{
printf("\n please input %d of %d\n",i+1,N);
printf("num: ");
scanf("%s",stu[i].num);
printf("name: ");
scanf("%s",stu[i].name);
for(j=0;j<3;j++)
{
/**********FOUND**********/
printf("score %d.",j+1);//j改成j+1
scanf("%d",&stu[i].score[j]);
}
printf("\n");
}
}
print(struct student stu[])
//struct student stu[];这种定方式在C++中已被摒弃
{
int i,j;
printf("\nNo. Name Sco1 Sco2 Sco3\n");
/**********FOUND**********/
for(i=0;i<N;i++)//去掉=
{
printf("%-6s%-10s",stu[i].num,stu[i].name);
for(j=0;j<3;j++)
printf("%-8d",stu[i].score[j]);
printf("\n");
}
}
main()
{
input(stu);//要有参数传入
print(stu);//要有参数传入
}
第3个回答 2010-03-24
程序已经经过验证,绝对正确;
(1)
#include "stdio.h"
main()
{
long int f,s;
int i,j,n;
scanf("%d",&n);
/***********SPACE***********/
s=0; //s赋初值;
/***********SPACE***********/
for(i=1;i<=n; i+=2)
{
f=1;
/***********SPACE***********/
for(j=1; j<=i;j++)
/***********SPACE***********/
f=f*j;
s=s+f;
}
printf("n=%d,s=%ld\n",n,s);
}
2./*功能:输出100到1000之间的各位数字之和能被15整除的所有数,
输出时每10个一行。
-------------------------------------------------------*/
#include "stdio.h"
main()
{
int m,n,k,i=0;
for(m=100;m<=1000;m++)
{
/***********SPACE***********/
k=0;//【?】;
n=m;
do
{
/***********SPACE***********/
k=k+n%10; //【?】 ;
n=n/10;
}
/***********SPACE***********/
while(n!=0); //【?】;
if (k%15==0)
{
printf("%5d",m);i++;
/***********SPACE***********/
if(i%10==0) printf("\n"); //【?】;
}
}
}
3.功能:编写input()和output()函数输入,输出5个学生的数据记录。
#include "stdio.h"
#define N 5
struct student
{
char num[6];
char name[8];
int score[4];
} stu[N];
void input(struct student stu[])
{
/**********FOUND**********/
int i,j;
for(i=0;i<N;i++)
{
printf("\n please input %d of %d\n",i+1,N);
printf("num: ");
scanf("%s",&stu[i].num);
printf("name: ");
scanf("%s",&stu[i].name);
for(j=0;j<3;j++)
{
/**********FOUND**********/
printf("score %d.",j);
scanf("%d",&stu[i].score[j]);
}
printf("input \n");
}
}
void print(struct student stu[])
{
int i,j;
printf("\nNo. Name Sco1 Sco2 Sco3\n");
/**********FOUND**********/
for(i=0;i<=N;i++)
{
printf("%-6s%-10s",stu[i].num,stu[i].name);
for(j=0;j<3;j++)
printf("%-8d",stu[i].score[j]);
printf("\n");
}
}
main()
{
input(stu);
print(stu);
}
第4个回答 2010-04-09
改错题试试我这个
#include "stdio.h"
#define N 5
struct student
{
char num[6];
char name[8];
int score[4];
} stu[N];
void input()//stu是全局变量,函数不用参数
{
/**********FOUND**********/
int i, j;
for(i=0;i<N;i++)
{
printf("\n please input %d of %d\n",i+1,N);
printf("num: ");
scanf("%s",stu[i].num);
printf("name: ");
scanf("%s",stu[i].name);
for(j=0;j<4;j++)//总共有4门成绩
{
/**********FOUND**********/
printf("score %d.",j);
scanf("%d",&stu[i].score[j]);
}
printf("\n");
}
}
void print()//同理不用参数
{
int i,j;
printf("\nNo. Name Sco1 Sco2 Sco3 Sco4\n");
/**********FOUND**********/
for(i=0;i<=N;i++)
{
printf("%-6s%-10s",stu[i].num,stu[i].name);
for(j=0;j<4;j++)//同理改成4
printf("%-8d",stu[i].score[j]);
printf("\n");
}
}
main()
{
input();
print();
}