四、編程題
1.三個(gè)整數(shù)a、b、c,由鍵盤輸入,輸出其中最大的一個(gè)數(shù)。
2.輸出1900~2000年中所有的閏年。每輸出3個(gè)年號(hào)換一行。(判斷閏年的條件為下面二者之一:能被4整除,但不能被100整除;蛘吣鼙400整除。)
3.請(qǐng)編一個(gè)函數(shù)int fun(int a),它的功能是:判斷a是否是素?cái)?shù),若a是素?cái)?shù),返回1;若不是素?cái)?shù),返回0。A的值由主函數(shù)從鍵盤讀入。
4.有N個(gè)學(xué)生,每個(gè)學(xué)生的信息包括學(xué)號(hào)、性別、姓名、四門課的成績(jī),從鍵盤上輸入N個(gè)學(xué)生的信息,要求輸出總平均成績(jī)最高的學(xué)生信息,包括學(xué)號(hào)、性別、姓名和平均成績(jī)。
參考答案:
1、main()
{int a,b,c;
printf(“請(qǐng)輸入三個(gè)整數(shù):”);
scanf(“%d,%d,%d”,&a,&b,&c);
if(aif(belse printf(“max=%d\n”,b);
else if(aelse printf(“max=%d\n”,a); }
2、#include”stdio.h”
main()
{int I,n;
for(n=0,I=1900;I<=2000;I++)
{if(I%4==0&&I0!=0||I@0==0)
{printf(“%d ”,I); n++; }
if(n%3==0)
printf(“\n”); } } }
3、#include”stdio.h”
int fun(int a)
{int I;
if(a==2) return 1; I=2;
while((a%I)!=0&&I<=sqrt((float)a))
I++;
if(a%I==0)
{printf(“%d is not a prime!”,a);
return 0; }
printf(“%d is a prime!”,a);
return 1; }
main()
{int x;
printf(“\n please enter a number:”);
scanf(“%d”,&x);
printf(“%d\n”,fun(x)); }
4、#include"stdio.h"
#define N 3
struct student
{long stu_num; char sex;
char name[15]; int score[4];
float average; };
main()
{int I,j,index; float sum,max;
struct student stuarr[N];
for(I=0;I{printf("please input %d student information:\n",I+1);
scanf("%ld,%c,%s",&stuarr[I].stu_num,&stuarr[I].sex,stuarr[I].name);
for(j=0;j<4;j++)
scanf("%d",&stuarr[I].score[j]); }
for(I=0;I{sum=0.0;
for(j=0;j<4;j++)
sum+=stuarr[I].score[j];
stuarr[I].average=sum/4.0; }
max=stuarr[0].average;
index=0;
for(I=1;Iif(stuarr[I].average>max)
{max=stuarr[I].average;
index=I; }
printf("總平均成績(jī)最高的學(xué)生信息是學(xué)號(hào)=%ld,性別=%c,姓名=%s,平均成績(jī)=%4.1f\n",stuarr[index].stu_num,stuarr[index].sex,stuarr[index].name,stuarr[index].average);
}
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |