code 32

برنامه ای که تعدادی عدد را گرفته و کوچک ترین عدد را نمایش می دهد.عدد آخر ورودی ۰ است.

(۵-۱۱)
:

#include <stdio.h>
#include <conio.h>
int findmin(int [], int);
int main()
{
   int list[20], num, size=0 ;
   clrscr();
   do{
     printf("type list[%d] : ", size) ;
     scanf("%d", &list[size]) ;
   } while(list[size ++] != 0) ;
   size --;
   num = findmin(list, size) ;
   printf("\n minimum is:%d ",num) ;
   getch();
   return 0;
}
//***********************
int findmin(int arr[], int size)
{
     int i, min1 ;
     min1 = arr[0] ;
     for(i = 0 ; i < size; i++)
	if(arr[i] < min1)
	   min1 = arr[i] ;
     return(min1) ;
}

code 31

برنامه ای که دو ماتریس را از ورودی خوانده و حاصل ضرب آن را در ماتریس دیگری ریخته و نمایش می دهد.

(۵-۱۰)
:

#include <stdio.h>
#include <conio.h>
int main()
{
     int mat1[2][3], mat2[3][4], mat3[2][4]={0} ;
     int i,j,k,l ;
     //read mat1
     for(i=0 ; i<2 ; i++)
       for(j=0 ; j<3 ;j++) {
	 printf("tenter mat1[%d][%d]: ",i,j);
	 scanf("%d",&mat1[i][j]) ;
     }
     //read mat2
     for(i=0 ; i<3 ; i++)
       for(j=0 ; j<4 ;j++) {
	 printf("enter mat2[%d][%d]: ",i,j);
	 scanf("%d",&mat2[i][j]) ;
       }
     //multiply mat1 by mat2
     for(i=0 ; i<2 ; i++)
	for(j=0 ; j<4 ;j++) {
	   mat3[i][j]=0 ;
	   for(k=0 ;k<3 ; k++)
	    mat3[i][j] = mat3[i][j]+mat1[i][k]*mat2[k][j];
	}
     printf("\n the produc of mat1 & mat2") ;
     printf(" is :\n\n") ;
     for(i=0 ;i<2 ;i++) {
       for(j=0 ; j<4 ;j++)
	  printf("%5d", mat3[i][j]) ;
       printf("\n") ;
     }
     getch();
     return 0;
}

code 30

برنامه ای که عناصر ماتریس ۲*۳ را از ورودی خوانده بزرگ ترین عنصر هر سطر را پیدا می کند و همراه شماره آن سطر به خروجی میبرد.

(۵-۹)
:

#include <stdio.h>
#include <conio.h>
void minput(int [][2], int);
void mcal(int mat[][2], int);
int main()
{
  const int r = 3, c = 2;
  int mat[r];
  minput(mat, r);
  mcal(mat, r);
  getch();
  return 0;
}
//*********************
void minput(int mat[][2], int r)
{
  int i, j;
  for(i = 0; i < r; i++)
     for(j = 0; j < 2; j++) {
	printf("enter mat[%d][%d]:", i, j);
	scanf("%d", &mat[i][j]);
     }
}
//**********************
void mcal(int mat[][2], int r)
{
  int i, j, rmax;
  printf(" ROW \t\tMAX");
  printf("\n-------------------");
  for(i = 0; i < r; i ++) {
     rmax = mat[i][0];
     for(j = 1; j < 2; j++)
	if(mat[i][j] > rmax)
	    rmax = mat[i][j];
     printf("\n %d\t\t %d", i+1, rmax);

  }// end of for
}

code 29

برنامه ای که معدل ۱۰ دانشجو را گرفته و معدلی که بیشترین بار تکرار شده و دفعات تکرار آن را چاپ می کند.

k :ثابتی به طول ۱۰ برای آرایه

max_count : بیشترین تکرار

max_value : معدلی که بیشترین تکرار را دارد

current_value : معدل مورد بررسی

current_count : تعداد تکرار معدل مورد بررسی

arr : آرایه ای با طول k

(۵-۴)
:

#include <stdio.h>
#include <conio.h>
void findt(float arr[], int k);
int main()
{
   const int k = 10;
   float arr[k] ;
   int i;
   printf("\n enter %d mead and press Enter:\n", k);
   for (i = 0; i < k; i++)
     scanf("%f", &arr[i]) ;
   findt(arr, k);
   return 0;
}
//*************************
void findt(float arr[], int k)
{
   int max_count = -1 ;
   float max_value;
   int  i, j , current_count;
   float current_value ;
   for (i = 0; i < k; i ++){
       current_value = arr[i] ;
       current_count = 0 ;
       for(j = 0; j < k; j++)
	  if (arr[j] == current_value)
	     current_count++ ;
       if (current_count > max_count) {
	    max_count = current_count ;
	    max_value = current_value ;
       }//end of if
   }//end of for (i= 0; i < k ...)
   printf("\n maximum iteration of ave");
   printf(" %5.2f is %d", max_value, max_count);
   getch();
}

code 28

برنامه ای که ۵ عدد را از ورودی گرفته و از عدد آخر در آرایه ی دیگری ریخته و چاپ می کند.

(۵-۳)
:

#include <stdio.h>
#include <conio.h>
int main()
{
  int x[5], y[5], i, j;
  for(i = 0; i < 5 ; i++) {
     printf("Enter number %d : ", i + 1);
     scanf("%d",&x[i]);
  }
  j = 0;
  printf("Number in inverse:\n");
  for(i = 4; i >= 0; i --) {
     y[j] = x[i];
     printf("%3d", y[j]);
     j ++;
  }
  printf("\nPress a key to continue...");
  getch();
  return 0;
}

code 27

برنامه ای که تعداد ۱۰ عدد صحیح را از ورودی می خواند و ابتدا اعداد منفی و سپس اعداد مثبت را به خروجی میبرد .تعداد اعداد مثبت و منفی را نیز مشخص می کند.

n :ثابتی به طول ۱۰

arr :آرایه ای به طول n

c1 :تعداد اعداد منفی

c2 :تعداد اعداد مثبت

i :شمارنده حلقه تکرار

(۵-۲)
:

#include <stdio.h>
#include <conio.h>
int main()
{
   const int n = 10;
   int arr[n], i, c1 = 0, c2 = 0 ;
   printf("\n Enter %d numbers and press ENTER:\n", n);

   for(i = 0; i < n; i++)
     scanf("%d",&arr[i]);
   printf("\ negavives are:");
   for(i = 0 ; i < n ; i++)
      if(arr[i] < 0){
	   printf("%d, ",arr[i]);
	   c1 ++;
      } //end of if
   printf("\n positives are:");
   for(i = 0 ; i < n ; i++)
      if(arr[i] > 0){
	   printf("%d, ",arr[i]);
	   c2 ++;
      }//end of if
   printf("\n number of negative = %d", c1);
   printf("\n number of positive = %d", c2);

   getch();
   return 0;
}

code 26

برنامه ای که معدل ۵ دانشجو را از ورودی گرفته در آرایه ای قرار می دهد و بیشترین معدل و محل وجود آن را در خروجی چاپ می کند.

(۵-۱)
:

#include <stdio.h>
#include <conio.h>
int main()
{
  const int n = 5;
  float ave[n], amax = 0;
  int i, p;
  for(i = 0; i < n; i++){
     printf(" enter an average:");
     scanf("%f", &ave[i]);
  }
  amax = ave[0];
  p = 0;
  for(i = 1; i < n; i++)
     if(ave[i] > amax) {
	amax = ave[i];
	p = i;
     }
  printf("\n max = %5.2f, position = %d", amax, p + 1);
  getch();
  return 0;
}

code 25

برنامه ای که عددی را از ورودی خوانده و هر یک از ارقام آن را در یک سطر نمایش می دهد.

(۴-۱۱)
:

#include <stdio.h>
#include <conio.h>
void write_v(int);
int main()
{
  int x;
  printf("enter an integer number:");
  scanf("%d",&x);
  write_v(x);
  getch();
  return 0;
}
//*****************
void write_v(int x)
{
  if (x < 10)
     printf("%d\n", x);
  else {
     write_v(x / 10);
     printf("%d\n", x % 10);
  }
}

code 24

تابعی ای که عددی از ورودی خوانده به کمک تابع بازگشتی فاکتوریل آن را محاسبه می کند.

(۴-۹)
:

#include <stdio.h>
#include <conio.h>
unsigned long fact(int) ;
int main()
{
    int m ;
    printf("\n enter a positive integer5 number:");
    scanf("%d", &m);
    printf("\n number=%d, fact= %ld", m, fact(m));
    getch();
    return 0;
}
//**********************
unsigned long fact(int x)
{
  if(x != 0)
    return(x * fact(x - 1)) ;
  return 1 ;
}

code 23

برنامه ای که عددی را از ورودی خوانده و به تابعی می برد وتابع تشخیص می دهد عدد اول هست یا نه .اگر اول بود مقدار ۱ و اگر نبود ۰ را برمیگرداند.

(۴-۶)
:

#include <stdio.h>
#include <conio.h>
int prime(int);
int main()
{
  int num;
  char ans;
  while(1) {
     printf("\n Enter a number:") ;
     scanf("%d", &num);
     if(prime(num))
	printf("\n Number %d is prime.", num);
     else
	printf("\n Number %d is  not prime.", num);
     printf("\n Do you want to continue?(y/n):");
     ans = getche();
     if(ans != 'y')
	 break;
  }// end of while
  getch();
  return 0;
}
//********************
int prime(int num)
{
  int i, temp = 1;
  for(i = 2; (i <= num / 2)  && temp ; i++)
      if(num % i == 0)
	 temp = 0;
  return temp;
}