6.任意输入两个字符串,逐个比较两个字符串对应位置上的字符,并把ASCII值大或相等的字符依次存放到新的数组c中,形成一个新的字符串并输出,要求用函数编程实现。
7.通过键盘输入下面表格中学生的信息,编程计算并输出4门课程平均成绩最高的学生记录。
学号 姓名 性别 出生日期 数学 英语 语文 计算机
年 月 日
10031 Wanggang m 1991 5 19 72 83 90 82
10032 Liming m 1992 8 20 88 92 78 78
10033 Wangli f 1991 9 19 98 72 89 66
10034 Chenhong f 1992 3 22 87 95 78 90
其中,m表示男,f表示女。
8.编程统计候选人的得票数。设有3个候选人zhang、li、wang(候选人姓名不区分大小写),10个选民,选民每次输入一个得票的候选人的名字,若选民输错候选人姓名,则按废票处理。选民投票结束后程序自动显示各候选人的得票结果和废票信息。要求用结构体数组candidate表示3个候选人的姓名和得票结果。
9.编写程序,求出n1至n2自然数之和。要求使用递归方法。
10.递归实现求Fibonacci数列。f(n)=f(n-2)+f(n-1)(n>1)其中f(0)=0,f(1)=1。
6.
#include<stdio.h>
char bi(char a,char b)
{
return(a>b?a:b);
}
main()
{
char a[10],b[10],c[10];
int i;
scanf("%s",&a);
scanf("%s",&b);
for(i=0;i<10;i++)
{
c[i]=bi(a[i],b[i]);
}
printf("%s",c);
}
7.
#include<stdio.h>
struct student
{
int num;
char name[10];
char xing;
struct birthday
{
int year;
int mouth;
int day;
}a;
int cheng[4];
};
main()
{
struct student stu[4]={{1,"wanggang",'m',.a={1991,5,19},72,83,90,82},
{2,"liming",'m',.a={1992,8,20},88,92,78,78},
{3,"wangli",'f',.a={1991,9,19},98,72,89,66},
{4,"chenghong",'f',.a={1992,3,22},87,95,78,90},
};
int i,j;
int avger[4],sum[4]={0};
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
sum[i]+=stu[i].cheng[j];
avger[i]=sum[i]/4;
}
int max=0;
for(i=0;i<4;i++)
if(max<avger[i])
max=avger[i];
for(i=0;i<4;i++)
{
if(max==avger[i])
{
printf("%d %s %c %d %d %d %d %d %d %d",stu[i].num,stu[i].name,stu[i].xing,stu[i].a.year,stu[i].a.mouth,stu[i].a.day,stu[i].cheng[0],stu[i].cheng[1],stu[i].cheng[2],stu[i].cheng[3]);
}
}
}
8.
#include<stdio.h>
#include<string.h>
struct man
{
char name[10];
int shu;
}m[3]={"zhang",0,"li",0,"wang",0};
main()
{
int i,name[10],j;
for(i=0;i<10;i++)
{
scanf("%s",name);
for(j=0;j<3;j++)
{
if(strcmp(name,m[j].name)==0)
m[j].shu+=1;
}
}
for(i=0;i<3;i++)
printf("%s %d\n",m[i].name,m[i].shu);
}
9.
#include<stdio.h>
he(int n,int m)
{
int sum=0;
if(n==m)
return(n);
else
return(n+he(n+1,m));
}
main()
{
int n,m;
scanf("%d%d",&n,&m);
printf("%d",he(n,m));
}
10.
#include<stdio.h>
f(int n)
{
if(n==0||n==1)
return(1);
else
return(f(n-2)+f(n-1));
}
main()
{
int n;
scanf("%d",&n);
printf("%d",f(n));
}