Lập trình C: Đề 2
Câu 1:
1. void Nhapmang(int A[][99], int *N, int *M);
2. void Tinhtong(int N, float a[]);
3. void Chanle(int N);
4. void Hoanvi(int *a, int *b);
Câu 2:
#include <stdio.h>
#include <conio.h>
#include <string.h>
void Nhap(int *N, char a[][25])
{
int i;
do
{
printf("\nN = ");
scanf("%d",N);
}while(*N<=0 || *N>50);
printf("\nNhap cac chuoi:");
for(i=0; i<*N; i++)
{
printf("\na[%d] = ",i);
fflush(stdin);
gets(a[i]);
}
}
float Trungbinh(int N, char a[][25])
{
int i;
float tb=0;
for(i=0; i<N; i++)
tb=tb+strlen(a[i]);
tb=tb/N;
printf("\nDo dai trung binh cua cac chuoi la: %f",tb);
return tb;
}
void Hienthi(int N, char a[][25], float tb)
{
int i;
if(N==1)
printf("\nKhong co chuoi nao lon hon do dai trung binh");
else
{
printf("\nNhung chuoi co do dai lon hon do dai trung binh la:");
for(i=0; i<N; i++)
if(strlen(a[i])>tb)
printf("\n\"%s\"",a[i]);
}
}
void main()
{
int N;
float tb;
char a[50][25];
clrscr();
Nhap(&N,a);
tb=Trungbinh(N,a);
Hienthi(N,a,tb);
getch();
}
Câu 3:
#include <stdio.h>
#include <conio.h>
#include <math.h>
void Menu(void)
{
printf("\n1. Nhap N va mang nguyen");
printf("\n2. Tim so duong nho nhat");
printf("\n3. Dem cac so nguyen to");
printf("\n4. Sap xep theo chieu tang dan");
printf("\n5. Thoat");
}
void Nhap(int *N, int a[])
{
int i;
do
{
printf("\nN = ");
scanf("%d",N);
}while(*N<=0 || *N>=100);
printf("\nNhap mang:");
for(i=0; i<*N; i++)
{
printf("\na[%d] = ",i);
scanf("%d",&a[i]);
}
}
void Sapxep(int N, int a[])
{
int i,j,tg;
for(i=0; i<N-1; i++)
for(j=i+1; j<N; j++)
if(a[i]>a[j])
{
tg=a[i];
a[i]=a[j];
a[j]=tg;
}
printf("\nSau khi sap xep theo chieu tang dan, ta duoc:");
for(i=0; i<N; i++)
printf("\na[%d] = %d",i,a[i]);
}
int Timmin(int N, int a[])
{
int i,Min=0;
for(i=0; i<N; i++)
if(a[i]>0)
{
Min=a[i];
break;
}
for(; i<N; i++)
if(a[i]>0 && a[i]<Min)
Min=a[i];
return Min;
}
int Nguyento(int N, int a[])
{
int i,j, flag=0, dem=0;
for(i=0; i<N; i++)
{
flag=0;
if(a[i]>1)
for(j=2; j<=sqrt(a[i]); j++)
if(a[i]%j==0)
{
flag=1;
break;
}
if(flag==0 && a[i]>1)
dem++;
}
return dem;
}
void main()
{
int N, chon, flag=0;
int a[99];
clrscr();
Menu();
while(1) {
printf("\nMoi ban chon mot muc: ");
scanf("%d",&chon);
if(chon!=1 && flag==0 && chon!=5)
{
printf("\nCan nhap lieu truoc tien (chon 1)");
continue;
}
flag=1;
switch(chon)
{
case 1:
Nhap(&N,a);
break;
case 2:
if(Timmin(N,a)==0)
printf("\nKhong co so duong nao");
else
printf("\nSo duong nho nhat la: %d",Timmin(N,a));
break;
case 3:
if(Nguyento(N,a)==0)
printf("\nKhong co so nguyen to nao");
else
printf("\nCo %d so nguyen to",Nguyento(N,a));
break;
case 4:
Sapxep(N,a);
break;
case 5:
return;
}
}
getch();
}