Linux系统函数调用实验

Linux系统函数调用实验

实验目的:
了解Linux操作系统系统函数的使用

实验内容:
创test用户,密码也是test。
用test登陆后,创建src目录,所有的源代码、中间代码和目标代码都放在/home/test/src目录下。

  1. 编写一个简单的c语言程序:函数int input(int a[ ],int n)用于输入一个有n个元素的整型数组,void output(int b[ ],int n)用于输出n个元素的整形数组,函数int sum(int a[ ],int n)用于数组求和,在main函数中依次调用函数input、output、sum。
#include<stdio.h> 
#define N 100
int input(int a[],int n)
{
 int i;
 for(i=0;i<n;i++)
 {
  scanf("%d",&a[i]);
 }
 return 0;
}
void output(int b[],int n)
{
 int i;
 for(i=0;i<n;i++)
 {
  printf("%2d",b[i]);
 }
}
int sum(int a[],int n)
{
 int sum=0;
    int i;
    for(i=0;i<n;i++)
    {
     sum=sum+a[i];
 }
 printf("%d",sum);
 return sum;
}
int main()
{
 int n,a[N];
 printf("input n:");
 scanf("%d",&n);
 printf("input number:");
 input(a,n);
 printf("output:");
 output(a,n);
 printf("\n");
 printf("sum:");
 sum(a,n);
 printf("\n");
 return 0;
}

在这里插入图片描述

  1. 编写一个简单的c语言程序:用随机数函数产生两个整型数,根据输入的字符’+’、’-‘、’*’、’/’作算术运算(思考题:如果用户输入一个包含加减乘除符号和数值的表达式,应该如何进行解析及计算)。
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
 int i,a,b;
 int m,n,p;
 float q;
 char c;
 srand((int)time(0));
 for(i=0;i<2;i++)
 {
  a=1+(int)(4.0*rand()/(RAND_MAX+1.0));
  b=1+(int)(4.0*rand()/(RAND_MAX+1.0));
 }
 printf("%d %d\n",a,b);
 printf("Please input:+、-、*、/\n");
 c=getchar();
 m=a+b;
 n=a-b;
 p=a*b;
 q=(float)(a/b);
 switch(c)
 {
  case'+':printf("sum:%d\n",m);
  break;
  case'-':printf("difference:%d\n",n);
  break;
  case'*':printf("product:%d\n",p);
  break;
  case'/':printf("shang:%d\n",q);
  break;
  default:
  printf("error!");
 }
 return 0;
}

在这里插入图片描述

#include<stdio.h>
#include<stdlib.h>
#include<ctype.h> 
#define N 10000 
static int compare (const void  *a, const void  *b)
{
   return ( *(int*)a - *(int*)b );
}
int main()
{
 int a[N];
 int n;//array length 
 int i;
 printf("please input n:\n");
 scanf("%d",&n);
 printf("please input a[]:");
 for( i=0;i<n;i++)
 {
  scanf("%d",&a[i]);
 }
 qsort(a,n,sizeof(a[0]),compare);
 for( i=0;i<n;i++)
 {
  printf("%d",a[i]);
 }
 printf("\n");
 int key;
 printf("please input the key:");
 scanf("%d",&key);
 int *item=NULL;
 item=bsearch(&key,a,n,sizeof(a[0]),compare);
 if(item == NULL)
  printf("%d is not in the array\n",key);
 else
  printf("%d is  in the array\n",key,*item);
 return 0;
}

在这里插入图片描述

发布了16 篇原创文章 · 获赞 1 · 访问量 180

猜你喜欢

转载自blog.csdn.net/weixin_44931542/article/details/105262083
今日推荐