• 1.一维数组:选择排序法、二分查找法; 2.二维数据:定义、引用、初始化,二维数组与矩阵。


    5-1
    输入一个正整数 n (1≤n≤10)和n 阶方阵a的元素,如果方阵a中的所有元素都沿主对角线对称,输出“Yes”, 否则,输出“No”。主对角线为从矩阵的左上角至右下角的连线,方阵a中的所有元素都沿主对角线对称指对所有i, k,a[i][k]和a[k][i]相等
    一。实验代码

    #include <stdio.h>
    int main(void)	
    {	
       	int found, i, k, n;
       	int a[10][10];
    
       	scanf ("%d", &n);
       	for (i = 0; i < n; i++)	
       		for (k = 0; k < n; k++)
    			scanf("%d", &a[i][k]);
    
     	found = 1;
       	for (i = 0; i < n; i++){	
       		for (k = 0; k < i; k++){
       			if ((3分)) {	
    			    ;          
               	            break;
           	                 }
    		}
    		if (){
    			break;
       		}
      	}
    
      	if (found != 0){
      		printf("Yes
    ");
      	}  
      	else{
      		printf("No
    ");
      	}  
    
    	return 0;
    }
    

    7-2 选择法排序 (20 分)
    本题要求将给定的n个整数从大到小排序后输出。

    #include<stdio.h>
    int main()
    {
    	int i,index,k,n,temp; 
    	int a[10];
    		scanf("%d", &n);	
    		for(i=0; i<n; i++)		
    		     scanf("%d", &a[i]);	
    		for(k=0; k<n-1; k++){	
    			index=k;	
    		    for(i=k+1; i<n; i++) 
    				if(a[i]>a[index])		
    				index=i;		
    				temp=a[index];		
    				a[index]=a[k];		
    				a[k]=temp;	
    				}
    			    printf("%d", a[0]);
    				for(i=1; i<n; i++)	
    		printf(" %d", a[i]);	
    		return 0;
    	}
    
    
    

    二。流程图

    三。结果截图

    四。总结
    从教材上得出解决的方法

    7-1 找鞍点 (20 分)
    一个矩阵元素的“鞍点”是指该位置上的元素值在该行上最大、在该列上最小。
    本题要求编写程序,求一个给定的n阶方阵的鞍点
    一。实验代码

    #include <stdio.h> 
     int main() 
      {     
       int a[6][6],n;     
        scanf("%d",&n);    
    	  int i,j;     
    	   for(i=0; i<n; i++)         
    	   for(j=0; j<n; j++)         
    	    {              
    		scanf("%d",&a[i][j]);         
    		 }     
    		  int k=0,y=0,flag=1,p=0;    
    		   if(n==1)         
    		    printf("0 0");  
    			 else     
    {         
    			   for(i=0; i<n; i++)     
       {             
        y=i;             
     for(p=0; p<n; p++)         
    			 {                 
    	 if(a[i][k]<=a[i][p])               
    	  {                    
    		  k=p;                 
    	  }           
    	 }            
    	 for(j=0; j<n; j++)  
     {                
      if(a[y][k]>a[j][k]) 
    	{       
    	 y=j;  
    	 break;  }       
      
     }              
     if(i==y)       
    	  {             
    	 flag=0;         
        break;        
    	  }        
     }        
      if(flag==0)        
     printf("%d %d",i,k); 
    	  else 
    		printf("NONE");   
      }  
      return 0;  
    		}  
    
    
    
    
    

    二,截图

    三,总结
    花了很长时间,发现知识点掌握的不够全面,通过网上查找和观看教学视频解决问题

  • 相关阅读:
    Scratch编程:初识Scratch及编程工具安装(一)
    关于少儿编程教育,这三大事项必须提前了解
    Scratch 少儿编程之旅(四)— Scratch入门动画《小猫捉蝴蝶》(中)
    操作系统:概述
    剑指offer:斐波那契数列
    剑指offer:旋转数组的最小数字
    剑指offer:用两个栈实现一个队列
    剑指offer:重建二叉树
    剑指offer:从尾到头打印链表
    剑指offer:替换空格
  • 原文地址:https://www.cnblogs.com/jiajia2333/p/10579063.html
Copyright © 2020-2023  润新知