㈠ 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;
}