Lập trình C: Đề 16
Giải phóng thời gian, khai phóng năng lực
Câu 1:
1. int Max(int N, char a[][25]);
2. int Timkiem(int N, int a[]);
3. int Nhap_kiemtra(int *N);
4. void Giaithua(int N);
Câu 2:
#include<stdio.h>
#include<conio.h>
#include<string.h>
void Nhap(char s[], char s1[])
{
do
{
printf("\ns = ");
fflush(stdin);
gets(s);
}while(strlen(s)==0);
do
{
printf("\ns1 = ");
fflush(stdin);
gets(s1);
}while(strlen(s1)==0);
}
int soSanh(char s[], char s1[])
{
if(strcmp(s,s1)>0)
return 1;
if(strcmp(s,s1)==0)
return 0;
return -1;
}
void inAn(char s[], char s1[])
{
printf("\nHai chuoi la:\ns = \"%s\"\ns1 = \"%s\"",s,s1);
}
void main()
{
char s[50], s1[50];
clrscr();
Nhap(s,s1);
if(soSanh(s,s1)==1)
printf("\n\"%s\"",s);
if(soSanh(s,s1)==0)
printf("\nHai chuoi bang nhau");
if(soSanh(s,s1)==-1)
printf("\n\"%s\"",s1);
inAn(s,s1);
getch();
}
Câu 3:
#include <stdio.h>
#include <conio.h>
void Menu(void)
{
printf("\n1. Nhap N va mang N so double");
printf("\n2. In xuoi nguoc mang");
printf("\n3. Tinh tong");
printf("\n4. Dem phan tu >4");
printf("\n5. Thoat");
}
void Nhap(int *N, double a[])
{
int i;
do
{
printf("\nN = ");
scanf("%d",N);
}while(!(0<*N && *N<20));
printf("\nNhap cac phan tu cua mang:");
for(i=0; i<*N; i++)
{
printf("\na[%d] = ",i);
scanf("%lf",&a[i]);
}
}
void Inan(int N, double a[])
{
int i;
printf("\nIn cac phan tu theo chieu xuoi:");
for(i=0; i<N; i++)
printf("\na[%d] = %lf",i,a[i]);
printf("\nIn cac phan tu theo chieu nguoc:");
for(i=N-1; i>=0; i--)
printf("\na[%d] = %lf",i,a[i]);
}
void Tinhtong(int N, double a[], double *Max, double *Min, double *Tong)
{
int i;
*Max=*Min=a[0];
*Tong=0;
for(i=1; i<N; i++)
{
if(*Max<a[i])
*Max=a[i];
if(*Min>a[i])
*Min=a[i];
}
for(i=0; i<N; i++)
if(a[i]>(*Max+*Min)/2)
*Tong+=a[i];
}
void Demduong(int N, double a[])
{
int i, dem=0;
printf("\nNhung phan tu lon hon 4: ");
for(i=0; i<N; i++)
if(a[i]>4)
{
printf("%lf ",a[i]);
dem++;
}
if(dem!=0)
printf("\nCo %d phan tu lon hon 4",dem);
else
printf("\nKhong co phan tu nao trong mang lon hon 4");
}
void main() {
int N, chon, flag=0;
double a[19], Max, Min, Tong;
clrscr();
Menu();
while(1) {
printf("\nMoi ban chon mot muc: ");
scanf("%d",&chon);
if(chon!=1 && flag==0 && chon!=5) {
printf("\nCan chon muc 1 truoc tien");
continue;
}
flag=1;
switch(chon) {
case 1:
Nhap(&N,a);
break;
case 2:
Inan(N,a);
break;
case 3:
Tinhtong(N,a,&Max,&Min,&Tong);
printf("\nMax = %lf\nMin=%lf\n(Min + Max)/2 = %lf\nSum=%lf",Max,Min,(Max+Min)/2,Tong);
break;
case 4:
Demduong(N,a);
break;
case 5: return;
}
}
getch();
}
Giải phóng thời gian, khai phóng năng lực