1. Trang chủ
  2. » Công Nghệ Thông Tin

Ngôn ngữ lập trinh c

14 97 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 14
Dung lượng 86 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Ngôn ngữ lập trinh c

Trang 1

bài tập ngôn ngữ lập trình C

phần I: các bài tập mảng

phần II: các bài tập xâu

Trang 1

Phần I: Các bài tập mảng

Bài tập: Nhập mảng 1 chiều n phần tử, đếm số phần tử âm, tìm giá trị lớn nhất của các phần tử, tính tổng các phần tử

#include<stdio.h>

#include<conio.h>

main()

{

int mang[100];

int n,i,d,spta,max,tong;

printf("\nnhap n=");

scanf("%d",&n);

for (i=1;i<=n;i++)

{

printf("\nmang[%d]=",i);

scanf("%d",&mang[i]);

Trang 2

}

printf("\nmang:\n");

for (i=1;i<=n;i++)

printf("\t%d",mang[i]);

printf("\n");

d=0;

for (i=1;i<=n;i++)

if (mang[i]<0) d=d+1;

spta=d;

printf("\nso phan tu am =%d\n",spta);

max=mang[1];

for (i=1;i<=n;i++)

if (max<mang[i]) max=mang[i];

printf("\nphan tu lon nhat =%d\n",max);

tong=0;

for (i=1;i<=n;i++)

tong=tong+mang[i];

printf("\ntong cac phan tu =%d\n",tong);

getch();

}

Trang 2 Bµi tËp: NhËp m¶ng 1 chiÒu n phÇn tö, t×m phÇn tö cã gi¸ trÞ b»ng trung b×nh céng cña n phÇn tö

#include<stdio.h>

#include<conio.h>

main()

{

int mang[100],i,n,d=0;

float tb=0;

printf("\nnhap n=");

scanf("%d",&n);

for (i=1;i<=n;i++)

{

printf("\nmang[%d]=",i);

scanf("%d",&mang[i]);

}

printf("\nmang:\n");

for (i=1;i<=n;i++)

printf("\t%d",mang[i]);

printf("\n");

for (i=1;i<=n;i++)

tb+=mang[i];

tb=tb/n;

for (i=1;i<=n;i++)

if (mang[i]==tb)

{

printf("\nphan tu mang[%d]=%d co gia tri bang trung binh cong cua n phan

tu \n",i,mang[i]);

Trang 3

d++;

}

if (d==0) printf("\nkhong co phan tu nao trong mang co gia tri thoa man yeu cau\n");

getch();

}

Trang 3 Bài tập: Nhập mảng 1 chiều n phần tử, tìm phần tử có giá trị lớn nhất và cho biết

vị trí của phần tử đó trong mảng

#include<stdio.h>

#include<conio.h>

main()

{

int mang[100],x,i,n,h,max;

printf("\nnhap n=");

scanf("%d",&n);

for (i=1;i<=n;i++)

{

printf("\nmang[%d]=",i);

scanf("%d",&mang[i]);

}

printf("\nmang:\n");

for (i=1;i<=n;i++)

printf("\t%d",mang[i]);

printf("\n");

max=mang[1];

h=1;

for (i=1;i<=n;i++)

if (max<mang[i])

{

max=mang[i];

h=i;

}

printf("\nphan tu mang[%d]=%d co gia tri lon nhat\n",h,max);

getch();

}

Trang 4

Trang 4 Bµi tËp: NhËp m¶ng 1 chiÒu n phÇn tö nguyªn d¬ng T×m sè tù nhiªn nhá nhÊt vµ kh¸c víi c¸c phÇn tö cña m¶ng

#include<stdio.h>

#include<conio.h>

main()

{

int mang1[100],mang2[255],i,n,d=0;

printf("\nnhap n=");

scanf("%d",&n);

for (i=1;i<=n;i++)

{

printf("\nmang1[%d]=",i);

scanf("%d",&mang1[i]);

}

printf("\nmang1:\n");

for (i=1;i<=n;i++)

printf("\t%d",mang1[i]);

printf("\n");

for (i=1;i<=255;i++)

mang2[i]=0;

for (i=1;i<=n;i++)

mang2[mang1[i]]=1;

for (i=1;i<=255;i++)

if (mang2[i]==0)

{

d++;

printf("\nso nho nhat khac voi cac phan tu cua mang la:%d",i);

break;

}

if (d==0) printf("\nso nho nhat khac voi cac phan tu cua mang la:%d",i+1); getch();

}

Trang 5

Trang 5

Bài tập: Nhập vào một ma trận (m,n), đếm số phần tử âm, tìm giá trị lớn nhất của các phần tử, tính tổng các phần tử

#include<stdio.h>

#include<conio.h>

main()

{

int mt[50][50];

int i,j,x,m,n,d,spta,max,tong;

printf("\nnhap m=");

scanf("%d",&m);

printf("\nnhap n=");

scanf("%d",&n);

for (i=1;i<=m;i++)

for (j=1;j<=n;j++)

{

printf("\nmt[%d][%d]=",i,j);

scanf("%d",&x);

mt[i][j]=x;

}

printf("\nmt:\n");

for (i=1;i<=m;i++)

{

for (j=1;j<=n;j++)

printf("\t%d",mt[i][j]);

printf("\n");

}

d=0;

for (i=1;i<=m;i++)

for (j=1;j<=n;j++)

if (mt[i][j]<0) d=d+1;

spta=d;

printf("\nso phan tu am =%d\n",spta);

max=mt[1][1];

for (i=1;i<=m;i++)

for (j=1;j<=n;j++)

if (max<mt[i][j]) max=mt[i][j];

printf("\nphan tu lon nhat =%d\n",max);

tong=0;

for (i=1;i<=m;i++)

for (j=1;j<=n;j++)

tong=tong+mt[i][j];

printf("\ntong cac phan tu =%d\n",tong);

getch();

}

Trang 6 Bài tập: Nhập vào một ma trận (m,n) Tìm phần tử có giá trị bằng trung bình cộng của mìn phần tử

#include<stdio.h>

#include<conio.h>

main()

{

int mt[50][50],x,i,j,m,n,d=0;

float tb=0;

printf("\nnhap m=");

Trang 6

scanf("%d",&m);

printf("\nnhap n=");

scanf("%d",&n);

for (i=1;i<=m;i++)

for (j=1;j<=n;j++)

{

printf("\nmt[%d][%d]=",i,j);

scanf("%d",&x);

mt[i][j]=x;

}

printf("\nmt:\n");

for (i=1;i<=m;i++)

{

for (j=1;j<=n;j++)

printf("\t%d",mt[i][j]);

printf("\n");

}

for (i=1;i<=m;i++)

for (j=1;j<=n;j++)

tb+=mt[i][j];

tb=tb/(m*n);

for (i=1;i<=m;i++)

for (j=1;j<=n;j++)

if (mt[i][j]==tb)

{

printf("\nphan tu mt[%d][%d]=%d co gia tri bang trung binh cong cua cac phan tu\n",i,j,mt[i][j]);

d++;

}

if (d==0) printf ("\nkhong co phan tu co gia tri thoa man yeu cau\n");

getch();

}

Trang 7 Bài tập: Nhập vào một ma trận (m,n) Tìm phần tử có giá trị lớn nhất và cho biết

vị trí của phần tử đó trong ma trận

#include<stdio.h>

#include<conio.h>

main()

{

int mt[50][50],x,i,j,m,n,h,c,max;

printf("\nnhap m=");

scanf("%d",&m);

printf("\nnhap n=");

scanf("%d",&n);

for (i=1;i<=m;i++)

for (j=1;j<=n;j++)

{

printf("\nmt[%d][%d]=",i,j);

scanf("%d",&x);

mt[i][j]=x;

}

printf("\nmt:\n");

Trang 7

for (i=1;i<=m;i++)

{

for (j=1;j<=n;j++)

printf("\t%d",mt[i][j]);

printf("\n");

}

max=mt[1][1];

h=1;c=1;

for (i=1;i<=m;i++)

for (j=1;j<=n;j++)

if (max<mt[i][j])

{

max=mt[i][j];

h=i;c=j;

}

printf("\nphan tu mt[%d][%d]=%d co gia tri lon nhat\n",h,c,max);

getch();

}

Trang 8 Bài tập: Nhập vào một ma trận vuông (n,n) Tìm tổng các phần tử phía trên đờng chéo chính

#include<stdio.h>

#include<conio.h>

main()

{

int mt[50][50],x,i,j,n,S;

printf("\nnhap n=");

scanf("%d",&n);

for (i=1;i<=n;i++)

for (j=1;j<=n;j++)

{

printf("\nmt[%d][%d]=",i,j);

scanf("%d",&x);

mt[i][j]=x;

}

printf("\nmt:\n");

for (i=1;i<=n;i++)

{

for (j=1;j<=n;j++)

printf("\t%d",mt[i][j]);

printf("\n");

}

S=0;

for (i=1;i<=n-1;i++)

{

for (j=i+1;j<=n;j++)

S=S+mt[i][j];

}

Trang 8

printf("\ntong cac phan tu phia tren duong cheo chinh =%d\n",S);

getch();

}

Trang 9 Bài tập: Nhập vào một ma trận (m,n) Tìm cột có tổng các phần tử là lớn nhất và cho biết đó là cột nào

#include<stdio.h>

#include<conio.h>

main()

{

int mt[50][50],x,i,j,m,n,cotmax,S,Smax;

printf("\nnhap m=");

scanf("%d",&m);

printf("\nnhap n=");

scanf("%d",&n);

for (i=1;i<=m;i++)

for (j=1;j<=n;j++)

{

printf("\nmt[%d][%d]=",i,j);

scanf("%d",&x);

mt[i][j]=x;

}

printf("\nmt:\n");

for (i=1;i<=m;i++)

{

for (j=1;j<=n;j++)

printf("\t%d",mt[i][j]);

printf("\n");

}

Smax=0;

if (m<=n) for (i=1;i<=n;i++)

Smax=Smax+mt[i][1];

if (m>n) for (i=1;i<=m;i++)

Smax=Smax+mt[i][1];

cotmax=1;

for (j=2;j<=n;j++)

{

S=0;

for (i=1;i<=m;i++)

S=S+mt[i][j];

if (S>Smax)

{

Smax=S;

cotmax=j;

Trang 9

}

}

printf("\ncot co tong lon nhat la cot %d\n",cotmax);

printf("\ntong do co gia tri la %d\n",Smax);

getch();

}

Trang 10 Bµi tËp: NhËp vµo hai ma trËn (m,n) vµ (n,p) T×m ma trËn tÝch cña hai ma trËn

#include<stdio.h>

#include<conio.h>

main()

{

int mt1[50][50],mt2[50][50],mt3[50][50],x,y,i,j,k,m,n,p;

printf("\nnhap m=");

scanf("%d",&m);

printf("\nnhap n=");

scanf("%d",&n);

printf("\nnhap p=");

scanf("%d",&p);

for (i=1;i<=m;i++)

for (j=1;j<=n;j++)

{

printf("\nmt1[%d][%d]=",i,j);

scanf("%d",&x);

mt1[i][j]=x;

}

printf("\nmt1:\n");

for (i=1;i<=m;i++)

{

for (j=1;j<=n;j++)

printf("\t%d",mt1[i][j]);

printf("\n");

}

for (i=1;i<=n;i++)

for (j=1;j<=p;j++)

{

printf("\nmt2[%d][%d]=",i,j);

scanf("%d",&y);

mt2[i][j]=y;

}

printf("\nmt2:\n");

for (i=1;i<=n;i++)

{

for (j=1;j<=p;j++)

printf("\t%d",mt2[i][j]);

printf("\n");

}

for (i=1;i<=m;i++)

for (j=1;j<=p;j++)

{

mt3[i][j]=0;

for (k=1;k<=n;k++)

mt3[i][j]=mt3[i][j]+mt1[i][k]*mt2[k][j];

}

printf("\nmt3:\n");

for (i=1;i<=m;i++)

{

for (j=1;j<=p;j++)

printf("\t%d",mt3[i][j]);

printf("\n");

}

getch();

}

Trang 11 Bµi tËp: NhËp vµo mét ma trËn (m,n) T×m ma trËn chuyÓn vÞ cña ma trËn (m,n)

#include<stdio.h>

Trang 10

main()

{

int mt1[50][50],mt2[50][50],x,i,j,m,n;

printf("\nnhap m=");

scanf("%d",&m);

printf("\nnhap n=");

scanf("%d",&n);

for (i=1;i<=m;i++)

for (j=1;j<=n;j++)

{

printf("\nmt1[%d][%d]=",i,j);

scanf("%d",&x);

mt1[i][j]=x;

}

for (i=1;i<=n;i++)

for (j=1;j<=m;j++)

mt2[i][j]=mt1[j][i];

printf("\nmt1:\n");

for (i=1;i<=m;i++)

{

for (j=1;j<=n;j++)

printf("\t%d",mt1[i][j]);

printf("\n");

}

printf("\nmt2:\n");

for (i=1;i<=n;i++)

{

for (j=1;j<=m;j++)

printf("\t%d",mt2[i][j]);

printf("\n");

}

getch();

}

Trang 12

Phần II: Các bài tập xâu

Bài tập: Viết chơng trình đảo lộn một xâu

#include<stdio.h>

#include<conio.h>

#include<string.h>

main()

{

int i,j=0;

char st1[100],st2[100];

for (i=0;i<strlen(st1);i++)

st2[i]=' ';

Trang 11

printf("\nnhap xau 1:");

gets(st1);

for (i=strlen(st1)-1;i>=0;i )

{

st2[j]=st1[i];

j++;

}

printf("\nxau 2 la:%s",st2);

getch();

}

Bài tập: Đổi ra hệ đếm nhị phân

#include<stdio.h>

#include<conio.h>

main()

{

unsigned int a[100],n,m=0;

printf("\nnhap n=");

scanf("%d",&n);

do

{

a[m]=n%2;

n/=2;

m++;

}

while (n!=0);

printf("\ndang nhi phan:\n");

for (int i=m-1;i>=0;i )

printf("%d",a[i]);

getch();

}

Trang 13 Bài tập: Nhập vào họ và tên một ngời, khi nhập có thể viết thoải mái, chữ hoa, chữ thờng lẫn lộn, dấu cách viết không giới hạn Dữ liệu xuất ra phải thoả mãn

nh sau: chữ cái đầu của họ, đệm, tên phải là hoa, các chữ còn lại là chữ thờng, giữa họ-đệm, đệm-đệm, đệm-tên chỉ tồn tại một dấu cách

#include<stdio.h>

#include<conio.h>

#include<string.h>

#include<ctype.h>

main()

{

int i,j=0;

char st1[100],st2[100];

printf("\nnhap xau:");

gets(st1);

if(st1[0] !=' ')

{

st2[0]=toupper(st1[0]);

j=1;

}

for(i=1;i<strlen(st1);i++)

{

if(st1[i] !=' ')

Trang 12

{

if(st1[i-1]==' ')

{

if(j>0)

{

st2[j]=' ';

j++;

}

st2[j]=toupper(st1[i]);

}

else

st2[j]=tolower(st1[i]);

j++;

}

}

st2[j]='\0';

printf("xau moi la:%s",st2);

getch();

}

Trang 14 Bài tập: Nhập vào một xâu, đếm số chữ trong xâu ( quan niệm chữ đợc phân cách với nhau bởi dấu cách

#include<stdio.h>

#include<conio.h>

#include<string.h>

main()

{

int i,d;

char st[100];

printf("\nnhap xau:");

gets(st);

i=0;d=0;

if (st[i] !=' ') d=1;

while (i<strlen(st))

if ((st[i]==' ') && (st[i+1] !=' '))

{

d=d+1;

i=i+1;

}

else i=i+1;

printf("\nso chu trong xau la %d",d);

getch();

}

Trang 13

Trang 15 Bµi tËp: NhËp vµo hai x©u, trén chóng thµnh mét x©u, víi x©u kÕt qu¶:

st3=st1[1]st2[1]st1[2]st2[2]

#include<stdio.h>

#include<conio.h>

#include<string.h>

char st1[100],st2[100],st3[100];

void tron(char s[100],char t[100])

{

int i,j=0;

for (i=0;i<(strlen(s)+strlen(t));i++)

st3[i]=' ';

if (strlen(s)<strlen(t))

{

for (i=0;i<strlen(s);i++)

{

st3[j]=s[i];j++;

st3[j]=t[i];j++;

}

for (i=strlen(s);i<strlen(t);i++)

{

st3[j]=t[i];

j++;

}

}

else

{

for (i=0;i<strlen(t);i++)

{

st3[j]=s[i];j++;

st3[j]=t[i];j++;

}

for (i=strlen(t);i<strlen(s);i++)

{

st3[j]=s[i];

j++;

}

}

puts(st3);

}

void main()

{

printf("\nnhap xau 1:");

gets(st1);

printf("\nnhap xau 2:");

gets(st2);

printf("\nxau 3 la:");

tron(st1,st2);

getch();

}

Trang 14

Trang 16

Ngày đăng: 19/05/2014, 13:33

TỪ KHÓA LIÊN QUAN

w