• 第一次作业


    第一次作业

    第一题:

    代码:

    void sum_diff( float op1, float op2, float *psum, float *pdiff )
    {
       *psum=op1+op2;
       *pdiff=op1-op2;
    }
    

    流程图:

    思路:

    第一步:设置被调函数 op1, op2, psum, pdiff ,用被调函数计算psum的值和pdiff的值;
    第二步:代入到主函数计算a、b的和与差;
    第三布:输出;

    调试:


    第一题手滑打错了

    第二题:

    代码:

    void splitfloat( float x, int *intpart, float *fracpart )
    {
      *intpart=(int)x;
      *fracpart=x-(int)x;
    }
    

    流程图:

    思路:

    第一步:定义想要的整数
    第二步:小数用原数减去定义的整数部分,整数就是定义的整数;

    调试:


    不清楚怎么定义int(x)

    第三题

    代码:

    int search( int list[], int n, int x )
    {
    	int i,result;
    	for( i = 0; i < n; i++ )
    	{
    		if(list[i]==x)
    		{
    			result=i;
    			break;
    		}
    		else{
    			result=-1;
    		}
    	}
    	return(result);
    }
    

    流程图:

    思路:

    第一步:定义整数x,n,数组list[]
    第二步:找到目标数,输出result

    调试:

    没有什么问题

    第四题:

    代码:

    int fun(int *a,int *b,int n)
    {
     int max=0;
      int i;
         for(i=0,max=0,*b=0;i<n;i++)
         {
             if( a[i] > max ) {
    		 max=a[i];
    		 *b=i;
    		 }
         }
      return max;
    }
    

    流程图:

    调试:

    不太会

    第五题

    代码:

    #include<stdio.h>
    void input(int *arr,int n)
    {
    	int i=0;
    	for(i=0;i<n;i++)
    	{
    		scanf("%d",&arr[i]);
    	}
     } 
    void max_min(int *arr,int n)
     {
     	int j=0,x=0,y=n-1;
     	for(j=0;j<n;j++)
     	{
     		if(arr[x]>arr[j])
     		{
     			int swap;
     			swap=arr[x];arr[x]=arr[j];arr[j]=swap;
    		 }
    	 }
    	 for(j=n-1;j>0;j--)
    	 {
    	 	if(arr[y]<arr[j])
    	 	{
    	 		int temp;
    	 		temp=arr[y];arr[y]=arr[j];arr[j]=temp;
    		 }
    	 }
     }
     void output(int *arr,int n)
     {
     	int k=0;
     	for(k=0;k<n;k++)
     	{
     		printf("%3d",arr[k]);
    	 }
     }
    

    流程图:

    第六题

    代码:

    #include<stdio.h>
    void sort(int *x,int n)
    {
    	int j=0,k=0;
    	for(j=1;j<n;j++)
    	{
    		for(k=0;k<n-j;k++)
    		{
    			if(x[k]<x[k+1])
    			{
    				int swap;
    				swap=x[k];x[k]=x[k+1];x[k+1]=swap;
    			}
    		}
    	}
    }
    

    第七题

    代码:

    bool palindrome( char *s ){
    		int i,count=0,q;
    		count=strlen(s);
    		q=count/2;
    		for(i=0;i<q;i++){
    			if((*(s+i))!=(*(s+count-i-1))){
    				return(false);
    			}
    		}
    		if(i==q){
    			return(true);
    		}
    	}
    

    第八题:

    代码:

    void strmcpy( char *t, int m, char *s ){
    		int i;
    		for(i=m;*(t+i-1)!='';i++){
    		  *(s+i-m)=*(t+i-1);
    		}
    		*(s+i-m)='';
    	}
    

    后面几道题都不太会 流程图也不太明白

    点评

    金海宽
    黄国戎
    金海东

    学习内容总结

    学习了哪些内容:

    这两周学习了指针的概念,还有指针的初步用法,感觉学习了很多

  • 相关阅读:
    洛谷P1157----组合数的输出
    NOIP幂次方
    NOIP2012----借教室
    SpringBoot+Spring常用注解总结
    Spring常见问题总结
    Java 命名之道
    Redis 常见问题总结
    关于缓存的一些重要概念(Redis 前置菜)
    MySQL 高性能优化规范建议
    关于数据库中如何存储时间的一点思考
  • 原文地址:https://www.cnblogs.com/jinjian155/p/8646339.html
Copyright © 2020-2023  润新知