Đề kiểm tra
Post date: Dec 7, 2011 7:50:57 AM
- Viết chương trình nhập họ tên, mã số sinh viên. In ra màn hình các thông tin sau:
******************************************
Ho va ten: <họ tên>
MSSV: <Mã số sinh viên>
Lớp: KT200704-G
******************************************
Chon cac cau hoi sau:
1. Cau hoi 2
2. Cau hoi 3
3. Cau hoi 4
4. Ket thuc
Chon: _
Nếu người dùng nhập số 1: Thực hiện câu hỏi thứ 2
Nếu người dùng nhập số 2: Thực hiện câu hỏi thứ 3
Nếu người dùng nhập số 3: Thực hiện câu hỏi thứ 4
Nếu người dùng nhập số 4: Thoát khỏi chương trình
- Tính giai thừa của một số nguyên.
- Đếm số chữ số và tính tổng các chữ số trong 1 số nguyên
Ví dụ:
Nhap mot so nguyen: 152_
So nguyen vua nhap co 3 chu so
Tong cac chu so: 8
- Nhập vào một dãy n số nguyên với n là số chẳn.
- In dãy số vừa nhập
- In các số không chia hết cho 3 có trong dãy
- Tính trung bình dãy số
- Sắp xếp dãy số theo thứ tự tăng dần.
Hướng dẫn giải:
#include <stdio.h>
#include <stdlib.h>
main()
{
int choice,gt,n,i,s,x[20],j,tam;
int tong=0,dem=0,a=0;
printf("***********************************");
printf("\nHo va ten: .............");
printf("\nMSSV: ..........");
printf("\nLop:...............");
printf("\n********************************");
printf("\nChon cac cau hoi sau: ");
printf("\n1. Cau hoi 2");
printf("\n2. Cau hoi 3");
printf("\n3. Cau hoi 4");
printf("\n4. Thoat khoi chuong trinh");
printf("\nChon: ");
scanf("%d",&choice);
if(choice==1)
//Tính giai thừa của một số nguyên.
{
printf("\nNhap so can tinh giai thua: ");
scanf("%d",&n);
gt=1;
for (i=1;i<=n;i++)
gt=gt*i;
printf("%d! = %d",n,gt);
}
if(choice==2)
//Đếm số chữ số và tính tổng các chữ số trong 1 số nguyên
{
printf("Nhap n: ");
scanf("%d",&n);
while(n!=0)
{
s=n%10;
n=n/10;
dem++;
a=a+s;
}
printf("\n Co %d chu so!\n\n Tong cac so la: %d",dem,a);
}
if(choice==3)
//Nhập vào một dãy n số nguyên với n là số chẳn
{
printf("\nNhap so n: ");
scanf("%d",&n);
if(n%2==0)
//Kiem tra neu n la so chan
{
//in dãy số vừa nhập
for(i=0;i<n;i++)
{
printf("\nSo nguyen thu %d: ",i+1);
scanf("%d",&x[i]);
}
// In day so vua nhap
printf("\nDay so vua nhap la:");
for (i=0;i<n;i++)
printf("\t%d ",x[i]);
//In các số không chia hết cho 3 có trong dãy
for (i=0;i<n;i++)
{
if(x[i]%3!=0)
printf("\n\n %d khong chia het cho 3",x[i]);
}
//Tinh trung binh day so
for (i=0;i<n;i++)
{
tong=tong+x[i];
}
printf("\n\nTrung binh day so la: %.2f",(float)tong/n);
//Sap xep day so theo thu tu tang dan
for (i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(x[i]>x[j])
{
tam=x[i];
x[i]=x[j];
x[j]=tam;
}
printf("\n\nMang sau khi sap xep\n");
for(i=0;i<n;i++)
printf("%d\t",x[i]);
}
else printf("n phai la so chan!!!\n");
}
if(choice==4)
exit(0);
}