Lập trình C: Đề 3
Câu 1:
1. void Chinhphuong(int n);
2. float DTCN(float a, float b);
3. void Tinhtong(int a, int b);
4. void MaxMin(int N, float a[]);
Câu 2:
#include <stdio.h>
#include <conio.h>
int Nhap(void)
{
int n;
do
{
printf("\nn = ");
scanf("%d",&n);
}while(n<=0 || n>50);
return n;
}
void Nhapmang(int n, int a[])
{
int i;
printf("\nNhap lieu cho mang:");
for(i=0; i<n; i++)
{
printf("\na[%d] = ",i);
scanf("%d",&a[i]);
}
}
int Tinhtong(int n, int a[])
{
int i, tong=0;
for(i=0; i<n; i++)
if(a[i]%2!=0)
tong+=a[i]; // tong=tong+a[i];
return tong;
}
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, ta duoc:");
for(i=0; i<n ; i++)
printf("\na[%d] = %d",i,a[i]);
}
void main()
{
int n;
int a[50];
clrscr();
n=Nhap();
Nhapmang(n,a);
printf("\nTong cac phan tu le la: %d",Tinhtong(n,a));
Sapxep(n,a);
getch();
}
Câu 3:
#include<stdio.h>
#include<conio.h>
#include<string.h>
void Menu(void)
{
printf("\n1. Nhap N va mang N chuoi");
printf("\n2. In cac chuoi");
printf("\n3. Tim va in cac chuoi co do dai xac dinh");
printf("\n4. Tim va in cac chuoi co do dai nho nhat");
printf("\n5. Tim va in cac chuoi co chua chuoi khac");
printf("\n6. Thoat");
}
void Nhap(int *N, char a[][25])
{
int i;
do
{
printf("\nN = ");
scanf("%d",N);
}while(*N<=0 || *N>=100);
printf("\nNhap cac chuoi:");
for(i=0; i<*N; i++)
{
printf("\na[%d] = ",i);
fflush(stdin);
gets(a[i]);
}
}
void Inan(int N, char a[][25])
{
int i;
printf("\nCac chuoi da nhap la:");
for(i=0; i<N; i++)
printf("\na[%d] =\"%s\"",i,a[i]);
}
void Inxacdinh(int N, char a[][25])
{
int i, dodai, flag=0;
do
{
printf("\nNhap vao mot do dai xac dinh: ");
scanf("%d",&dodai);
}while(dodai<=0);
printf("\nNhung chuoi co do dai xac dinh gom:");
for(i=0; i<N; i++)
if(dodai==strlen(a[i]))
{
printf("\n\"%s\"",a[i]);
flag=1;
}
if(flag==0)
printf("\nKhong co chuoi nao co do dai xac dinh");
/* for(i=0; i<N; i++)
if(dodai==strlen(a[i]))
{
flag=1;
break;
}
if(flag==0)
printf("\nKhong co chuoi nao co do dai bang do dai xac dinh");
else
{
printf("\nNhung chuoi co do dai bang do dai xac dinh gom:");
for(; i<N; i++)
if(dodai=strlen(a[i]))
printf("\n\"%s\"",a[i]);
}
*/
}
int Min(int N, char a[][25])
{
int i, min;
min=strlen(a[0]);
for(i=1; i<N; i++)
if(min>strlen(a[i]))
min=strlen(a[i]);
return min;
}
void Inchuoichua(int N, char a[][25])
{
int i, flag=0;
char b[25];
do
{
printf("\nNhap mot chuoi: ");
fflush(stdin);
gets(b);
}while(strlen(b)==0);
printf("\nNhung chuoi chua chuoi \"%s\" gom:",b);
for(i=0; i<N; i++)
if(strstr(a[i],b)!=NULL)
{
printf("\n\"%s\"",a[i]);
flag=1;
}
if(flag==0)
printf("\nKhong chuoi nao chua chuoi \"%s\"",b);
}
void main()
{
int N, chon, flag=0, min, i;
char a[99][25];
clrscr();
Menu();
while(1) {
printf("\nMoi ban chon mot muc: ");
scanf("%d",&chon);
if(chon!=1 && flag==0 && chon!=6)
{
printf("\nMoi ban chon muc 1 truoc tien");
continue;
}
flag=1;
switch(chon)
{
case 1:
Nhap(&N,a);
break;
case 2:
Inan(N,a);
break;
case 3:
Inxacdinh(N,a);
break;
case 4:
min=Min(N,a);
printf("\nDo dai nho nhat = %d. Nhung chuoi co do dai nho nhat gom:",min);
for(i=0; i<N; i++)
if(min==strlen(a[i]))
printf("\n\"%s\"",a[i]);
break;
case 5:
Inchuoichua(N,a);
break;
case 6: return ;
}
}
getch();
}