- 写一个函数,将3*3矩阵转置(10分)
#include<stdio.h> void change(int a[3][3]) { int i,j,t; for(i=0;i<3;i++) for(j=0;j<i;j++) {t=a[i][j];a[i][j]=a[j][i];a[j][i]=t;} } int main() { int i,j,a[3][3]; for(i=0;i<3;i++) for(j=0;j<3;j++) scanf("%d",&a[i][j]); change(a); printf("\n转置矩阵:\n"); for(i=0;i<3;i++) { for(j=0;j<3;j++) printf("%-4d",a[i][j]); printf("\n"); } return 0; } - 斐波那契数列指的是这样一个数列1, 1, 2, 3, 5, 8, 13, 21......
#include<stdio.h>
int Fibonacci(int n);
int main (void)
{
Fibonacci(10);
return 0;
}
int Fibonacci(int n) {
int i;
int fib[n]={1,1};
for(i=2;i<10;i++){
fib[i]=fib[i-1]+fib[i-2];}
for(i=0;i<10;i++){
printf("%d ",fib[i]);
}
}
- 单链表反转(10分)
单链表node的数据结构定义如下: class ListNode { int val; ListNode next; } //所给题目为java格式构建的链表,故用java写法,递归反转单链表 public static ListNode reverseList(ListNode head) { ListNode prev = null; ListNode curr = head; while (curr != null) { ListNode next = curr.next; curr.next = prev; prev = curr; curr = next; } return prev; } }
- 请实现两棵树是否相等的比较,相等返回0,否则返回其他值。(10分)
数据结构为
int CompTree(TreeNode &Tree1, TreeNode &Tree2)
{if(Tree1== NULL && Tree2== NULL)
return 1;
if(Tree1==NULL|| Tree2==NULL)
return 0;
if(Tree1&& Tree2)
{if(Tree1->c!= Tree2->c)
return 0;
else return CompTree(Tree1-> leftchild,Tree2-> leftchild)*CompTree(Tree1-> rightchild,Tree2-> rightchild);
}
- 程序设计-排序/查找(20分)(思想对一半,运算一半)
版权声明:本文为qq_41054844原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。