㈠ c语言求平均年龄
以下的程序求n个人的平均年龄:
#include<stdio.h>
int main()
{ int n,i,x,s=0;
scanf("%d",&n);
for(i=0; i<n; i++)
{ scanf("%d",&x);
s+=x;
}
printf("%.3f ",(float)s/n);
return 0;
}
㈡ 在c语言程序中 ,用链表形式输入和输出学生信息,求年龄平均值
#include <stdio.h>
#include <stdlib.h>
//#include <string.h>
//#include <math.h>
struct student
{
int num;
char name[10];
int age;
struct student *next;
} Mystu;
int n;
struct student *input()
{
int i;
struct student *head=NULL,*p=NULL,*q=NULL;
for(i=0;i<n;i++)
{
//从键盘上输入学生信息
q=p;//保存前一个元素的地址
p=(struct student *)malloc(sizeof(struct student));
printf("第%d个学生的信息(包括学号、名字、年龄): ",i+1);
scanf("%d %s %d",&p->num,p->name,&p->age);
p->next=NULL;
if(head==NULL)
head=p;
else
q->next=p;
}
return head;
}
void average(struct student *head)
{
double agev=0.0;
struct student *p=NULL;
p=head;
while(p!=NULL)
{
agev=agev+p->age; //求总年龄
p=p->next;
}
printf("平均年龄=%2.2f ",agev/n); //求出平均年龄
}
void output(struct student *head)
{
struct student *p=NULL;
p=head;
printf("No. name age ");
while(p!=NULL)
{
printf("%-6d %s %4d ",p->num,p->name,p->age);
p=p->next;
}
}
void Destroy(struct student **head)
{
struct student *tmp;
tmp = *head;
while(*head)
{
tmp = (*head)->next;
printf("destroy:%p ", *head);
free(*head);
*head=tmp;
}
}
int main()
{
struct student *head=NULL;
printf("please input student number(n): ");
scanf("%d",&n);
head=input();
printf("main:%p ", head);
average(head);
output(head);
Destroy(&head);
return 0;
}
修改了一下
voidaverage(structstudent*head)
和主函数中的调用
另外增加了动态内存的释放,不释放会造成内存泄露的!!
㈢ 简单的C语言 求平均年龄
#include <stdio.h>
int main()
{
int old,sum=0,count=0;
float ave;
scanf("%d",&old);
while(old!=-1)
{
count++;
sum+=old;
scanf("%d",&old);
}
ave = (float)sum/count;
printf("%f",ave);
return 1;
}
㈣ 输入性别并记录男女个数还要算出男女平均年龄的c语言程序怎样写
#include "stdio.h"
typedef struct person
{
int sex;
int age;
}person,*pperson;//人
typedef struct man
{
int num;
float avg;
struct man()
{
num = 0;
avg = 0;
}
}man;//男性
typedef struct woman
{
int num;
float avg;
struct woman()
{
num = 0;
avg = 0;
}
}woman; //女性
void main()
{
person ps;
man m;
woman wm;
char c;
while (scanf("%d %d",&(ps.sex),&(ps.age))&&((c=getchar())!='Q'))//当输入字符Q时退出显示
{
if (ps.sex == 0)//输入的sex是0时表示男性
{
m.num++;
m.avg =1.0*(m.avg*(m.num-1)+ps.age)/m.num;
}
else //其他表示女性
{
wm.num++;
wm.avg =1.0*(wm.avg*(wm.num-1)+ps.age)/wm.num;
}
}
printf("man num:%d avg:%.3f
woman num:%d age:%.3f
",m.num,m.avg,wm.num,wm.avg);
return;
}
㈤ c语言设计从键盘输入甲乙两个人的年龄,求两个人的平均年龄
int main(int argc, const char * argv[]) {
int old1 = 0,old2 = 0;
scanf("甲的年龄:%d",&old1);
scanf("乙的年龄:%d",&old2);
printf("平均年龄%d\n",(old1 + old2)/2);
return 0;
}
㈥ C语言 求平均年龄
#define N 5 //设置班级人数
#include <stdio.h>
float operate(int array[N]);
int main(void)
{
int temp;
int age[N],i;
loop: for (i=0;i<N;i++)
{
printf("请输入第%d个学生的年龄(15~~~25)!",i+1);
scanf("%d",&temp);
if (temp>=15&&temp<=25)//判断年龄的合法性
{
age[i]=temp;
}
else
{
printf("请重新输入正确的值(15~~~~25):\n");
goto loop;
}
}
operate(age);
printf("平均年龄为: %.2f",operate(age));
return 0;
}
float operate(int array[N])
{
int i;
float average;
int total=0;
for(i=0;i<N;i++)
{
total+=array[i];
}
average=(float)total/i;
return average;
}
测试平台:visual studio 6.0
测试结果:正常编译,符合题目要求。
㈦ c语言:求平均年龄 谁能帮我写一下一下源代码的注释 //的地方
#include<stdio.h>
#include<stdlib.h>
int main()
{
int age[4];
int top=-1;
int i;
float avg;
int temp;// 定义数据交换时的暂存变量
char t1;
FILE *in;
in=fopen("family.txt","r");//建立文件流,返回该文件的指针
while (fscanf(in,"%d",&temp)!=EOF)/*从文件流中按格式读取数据,只要读到数据,
while 继续循环,读到错误数据(例如整数写成字母),或没成功读到数据,或
读到EOF, 则退出 while 循环*/
{
t1=fgetc(in);// 从文件中读取一个字符
age[++top]=temp;//临时存入age数组
if (t1=='\n')
{
avg=0;
for (i=0;i<=top;i++)//读取数组中的数
{
avg+=age[i];//求总和
}
avg=avg/(top+1);
printf("%5.2f:",avg);//输出年龄平均值
for (i=0;i<top;i++)//输出数组值
{
printf("%d ",age[i]);
}
printf("%d\n",age[i]);
top=-1;//数组清零
}
}
system("pause");
return 0;
㈧ 用C语言怎么求平均年龄
#include <stdio.h>
#include <stdlib.h>
int main()
{
int sum=0,i,n,a[100];
double b;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
sum=sum+a[i];
}
b=1.0*sum/n;
printf("%.2f",b);
return 0;
}
㈨ C语言求平均年龄 求高手帮忙 班上有学生若干名,给出每名学生的年龄(整数),求班上所有学生的平均年龄
#include<stdio.h>
int main ()
{
int num,sum,i;
int a[100];
double each;
sum=0;
scanf("%d",&num);
each=num;
for(i=0;i<num;i++)
{
scanf("%d",&a[i]);
sum+=a[i];
}
printf("%d\n",sum);
each/=sum;
printf("%.2f",each);
return 0;
}
each 没有被num赋值
数组下标是从0开始到最大-1 实际还是那么大 应为算上0了
㈩ C语言编程题 问题,求平均年龄
#include <stdio.h>
int main()
{
int age=0,n=0;
double sum=0;
while( scanf("%d",&age) && age != -1 )
{
sum += age ;
n++;
}
printf("平均年龄=%.2lf\n", age/n );
return 0;
}