Lập trình C: Đề 1
Câu 1:
1. void maxMin(int N, float a[], float *Max, float *Min);
2. char* chuoiMax(int N, a[][25]);
3. void kiemTraNguyenTo(int N);
4. void Inan(int N, float a[]);
Câu 2:
#include<stdio.h>
#include<conio.h>
#include<string.h>
void Nhap(char a[])
{
do
{
printf("\nNhap chuoi: ");
fflush(stdin);
gets(a);
}while(strlen(a)==0);
}
void Demtu(char a[])
{
int dem=0, i;
for(i=0; i<strlen(a)-1; i++)
if(a[i]==' ' && a[i+1]!=' ')
dem++;
if(a[0]!=' ')
dem++;
printf("\nChuoi co %d tu",dem);
}
void Cat(char a[])
{
int i;
printf("\nTruoc khi cat, do dai chuoi la %d, chuoi la \"%s\"",strlen(a),a);
for(i=strlen(a)-1; i>0; i--)
if(a[i]!=' ')
{
a[i+1]='\0';
break;
}
printf("\nSau khi cat, do dai chuoi la %d, chuoi la \"%s\"",strlen(a),a);
}
void main()
{
char a[50];
clrscr();
Nhap(a);
Demtu(a);
Cat(a);
getch();
}
Câu 3:
#include<stdio.h>
#include<conio.h>
#include<math.h>
void menu(void)
{
printf("\n1. Nhap N va mang double");
printf("\n2. Tim so am lon nhat");
printf("\n3. Dem cac so khong phai so chinh phuong");
printf("\n4. Sap xep cac phan tu theo chieu giam dan va hien thi ket qua");
printf("\n5. Thoat");
}
void Nhap(int *N, double a[])
{
int i;
do {
printf("\nN = ");
scanf("%d",N);
}while(!(0<*N && *N<100);
printf("\nNhap cac phan tu mang:");
for(i=0; i<*N; i++)
{
printf("\na[%d] = ",i);
scanf("%lf",&a[i]);
}
}
double Ammax(int N, double a[])
{
int i;
double Max=0;
for(i=0; i<N; i++)
if(a[i]<0)
{
Max=a[i];
break;
}
for(i=i; i<N; i++)
if(a[i]<0 && a[i]>Max)
Max=a[i];
return Max;
}
int Khongchinhphuong(int N, double a[])
{
int i,dem=0;
for(i=0; i<N; i++)
if(a[i]>0 && sqrt(a[i])==(int)sqrt(a[i]))
dem++;
return dem;
}
void Sapxep(int N, double a[])
{
int i,j;
double 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 giam dan, ta duoc:");
for(i=0; i<N; i++)
printf("\na[%d] = %lf",i,a[i]);
}
void main()
{
int N, chon;
double a[99];
clrscr();
menu();
while(1) {
printf("\n\nChon mot muc: ");
scanf("%d",&chon);
switch(chon) {
case 1:
Nhap(&N,a);
break;
case 2:
if(Ammax(N,a)!=0)
printf("\nPhan tu am lon nhat trong mang la: %lf",Ammax(N,a));
else
printf("\nMang khong co phan tu am");
break;
case 3:
if(Khongchinhphuong(N,a)!=0)
printf("\nMang co %d so chinh phuong",Khongchinhphuong(N,a));
else
printf("\nMang khong co so khong chinh phuong");
break;
case 4:
Sapxep(N,a);
break;
case 5: return;
}
}
getch();
}