返回
软件
分类

必赢备用网址所以没有必要再将一个整数经过一系列的运算转换为二进制形式,这些指令在内存中运行得到一个我们

日期: 2020-03-30 19:14 浏览次数 : 160

将任一整数转换为二进制形式

2017.2.22 周三
c语言 :一门编程语言
用途 :用来编写程序的,即按照我们的意图和想法编写一条条可执行的
指令,这些指令在内存中运行得到一个我们想要的结果
程序 :是由多条指令集合而成,他们能工作,并能实现一定的功能。
程序的特点:数据结构+算法
数据结构 :多数据的描述,即数据以何种形式存在,是计算机操作的对象。
算法 :对操作的描述。即对数据的操作步骤。
数据 :一切信息都是数据,数据有可变(变量)和不变(常量)之分。

C语言是面向过程的,而C++是面向对象的

*问题分析与算法设计
将十进制整数转换为二进制的方法很多,这里介绍的实现方法利用了C语言能够对位进行操作的特点。对于C语言来说,一个整数在计算机内就是以二进制的形式存储的,所以没有必要再将一个整数经过一系列的运算转换为二进制形式,只要将整数在内存中的二进制表示输出即可。
*程序说明与注释
#include<stdio.h>
void printb(int,int);
int main()
{
int x;printf("Input number:");
scanf("%d",&x);
printf("number of decimal form:%dn",x);
printf(" it's binary form:");
printb(x,sizeof(int)*8); /*x:整数 sizeof(int):int型在内存中所占的字节数
sizeof(int)*8:int型对应的位数*/
putchar('n');
}

常量:特点
一个整型的表示方法:二进制,八进制,十进制,十六进制

C和C++的区别:

void printb(int x,int n)
{
if(n>0)
{
putchar('0'+((unsigned)(x&(1<<(n-1)))>>(n-1))); /*输出第n位*/
printb(x,n-1); /*归调用,输出x的后n-1位*/
}
}

变量 :1.取名 2.怎么定义一个变量
基本的数据类型 :int short long char float double

C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)。

*运行结果
输入:8
输出:
number of decimal form:8
it's bunary form:0000000000001000
输入:-8
输出:number of decimal form:-8
it's binary form:1111111111111000
输入:32767
输出:number of decimal form:32767
it's binary form:0111111111111111
输入:-32768
输出:number of decimal form:-32768
it's binary form:1000000000000000
输入:128
输出:number of decimal form:128
it's binary form:0000000010000000

标准输入和标准输出:scanf printf

C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。 所以C与C++的最大区别在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”。

*问题的进一步讨论
充分利用C语言可以对位进行操作的特点,可以编写许多其它高级语言不便于编写甚至根本无法编写的程序。位操作是C语言的一大特点,在深入学习C语言的过程中应力求很好掌握。
程序中使用的位运算方法不是最佳的,也可以不用递归操作,大家可以自行对程序进行优化。

include <stdio.h>

//以.h为后缀的文件为头文件,c程序的一般函数的定义都在此头文件中

void main()
//主函数,整个程序只有一个主函数,它是程序开始执行和结束的地方,
void 是函数的返回值类型,void 说明函数没有返回值
{
printf("hello world!n");
//程序要执行的指令,此处为向屏幕输出双引号中的内容。'n':换行,
指令以';'为结尾

}
/*
编写一个c程序:vim 文件名.c 即打开一个.c为后缀的文件,该文件是用
来书写c源程序,写完之后:wq保存退出。
编译 :gcc 文件.c 若文件源程序有语法错误,在次步骤就会报错,修
改完成后编译成功就会生成计算机可直接执行的二进制文件a.out
运行 :./a.out
*/

gcc的4个步骤:
1.预处理:gcc -E 1.c -o 1.i
包含头文件中的内容,做一些准备工作,是整个程序真正变得完整。
2.编译:gcc -S 1.i -o 1.s
编译生产汇编文件
3.汇编:gcc -c 1.s -o 1.o
生产二进制文件
4.链接:gcc 1.o -o 1
生产可执行的二进制文件

C与C++的最大区别:在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”,而就语言本身而言,在C中更多的是算法的概念。那么是不是C就不重要了,错!算法是程序设计的基础,好的设计如果没有好的算法,一样不行。而且,“C加上好的设计”也能写出非常好的东西。

*思考题
将任意正整数转换为四进制或八进制数

include <stdio.h>

void main()
{
int a=-1;
//原码:10000000000000000000000000000001
//补码:11111111111111111111111111111111
// 37777777777
// ffffffff
//数据在内存中以补码的形式存储的,显示的时候显示的也是补码
//原码:二进制码,最高位为符号位,正数为0,负数为1
//正数的补码=原码
//负数的补码=原码的符号位不变,其余位取反+1
printf("%d %o %xn",a,a,a);
}
/*
常量:
特点:1.不能够被改变的量
2.可以不经说明直接使用的量
分类:
1.直接常量:
整型常量:10,20
实型常量:1.2
字符型常量:
普通字符常量(用单引号括起来的字符):'a','b'
转义字符常量:'n'
字符串常量:"qwerty"
2.标识符常量:宏定义的名字
#define S 30
S即为30
整型常量的表达方式:
二进制 :每位数上满2进1,0~1.
例:二转十:1101 => 12^3+122+1*20=13

八进制 :以0开头,每位数上满8进1,0~7
    例:023 转十进制 -> 2*8^1+3*8^0=19
十进制 :每位数上满10进1,0~9,除了0之外,负数前面加负号
    例:10,-1,0;
十六进制    :以0x或0X开头,每位数上满16进1,0~9 a b c d e f/ A B C D E F
    例:0x23f 转十进制 -> 2*16^2+3*16^1+f*16^0

二转八:
11011110 =>0336
转16 =>0xde

基本的数据类型:
int:基本整型,用来定义整型变量,接受一个整数
// short [int]:短整型,接受一个整数
// long [int]:长整型,接受一个较大的整数

float:单精度型,接受一个实数
//    double:双精度型,接受一个较大的实数

char:字符型,接受一个字符常量

定义变量 :在内存中根据变量的数据类型给它在内存中开辟空间,同一个
变量只能定义一次,但是可以声明多次
只定义不赋值:
int a;
定义的同时赋值:初始化变量
int a=10;
用运算的结果给变量赋值
int b=1;
int c=3;
int a=b+c;
先定义后赋值:
int a;
a=10;

声明:int a;
调用1.c 2.c
141593

变量名:
1.由字母,数字,下划线'_'三者自由组合而成。
2.数字不能打头。
必赢备用网址 ,3.在c语言中有保留字(int ,float),不能用来做变量的名字
4.在c语言中区分大小写,所有price和PRICE是2个不同的变量
int a,b,c=10,d;

转义字符:以‘’开头的字符常量,具有特殊的功能
n 换行
r 回车
b 退格
t 制表符tab
' 输出'
" 输出"
输出

printf() :标准输出函数,指向显示屏输出数据
格式:printf("格式控制=格式声明+普通字符",输出表列);
例:printf("a=%dn",a);
注:在双引号中,以%开头的较格式声明,它是控制输出表列中的数据
以何种形式输出,双引号中的其他字符叫普通字符,是会原样输出的。
格式声明:
1.d格式符 :输出带符号的十进制数
%d :输出十进制数
%nd :输出的数占n个字宽,从右边开始
%ld :输出长整型数。
2.c格式符 :输出字符型数据
%c :输出一个字符
%nc :输出的字符占n个字宽
3.f格式符 :输出实型数据
%f :整数部分全部输出,默认输出小数后六位,第七位四舍五入
%.nf :整数部分全部输出,小数部分输出n位,第n-1位四舍五入。
%lf :输出双精度型数据
4.s格式符 :用来输出字符串
5.o格式符 :用来输出八进制数
6.x格式符 :用来输出十六进制数。

*/

scanf() :标准输入函数,从键盘上按指定的格式获取输入的数据。
格式 :scanf("格式控制",输入表列);
格式控制 :同printf,
输入表列 :在每个变量前加&
例:
#include <stdio.h>
void main()
{
int a;
float b;
scanf("%d%f",&a,&b);
printf("%d %.1fn",a,b);
}
/*
1.当scanf中的格式控制符之间紧紧相邻,则在输入数据的时候,默认各数据
之间以空白符间隔(tab,空格,enter).输入数据结束后按回车结束。
*/
练习:从键盘上一次获取int a;float b,char c三个变量的数据,并输出他们的值。

必赢备用网址 1

include <stdio.h>

void main()
{
int a;
float b;
char c;
scanf("%d %f %c",&a,&b,&c);
printf("%d %.1f %cn",a,b,c);
}======================================
/*
在scanf的双引号中格式控制符之间通常以空格间隔,输入的时候输入空格间隔。
通常,双引号中有什么普通字符,那么输入数据的时候就原样输入什么字符。
例 :scanf("a=%d,b=%d,c=%f",&a,&b,&c);
输入:a=1,b=2,c=1.2<回车>
*/

算法是一个程序和软件的灵魂,作为一名优秀的程序员,只有对一些基础的算法有着全面的掌握,才会在设计程序和编写代码的过程中显得得心应手。本文包括了经典的Fibonacci数列、简易计算器、回文检查、质数检查等算法。也许他们能在你的毕业设计或者面试中派上用场。

include <stdio.h>

void main()c=2
{
int a;
char b;
int c=scanf("%d",&a);//scanf有返回值,返回数据列表的变量个数。
getchar();//吸收残留回车
scanf("%c",&b);
printf("a=%d b=%cn",a,b);
}

ASCII:给每一个存储的字符找到的对应的数字
'a':97
‘0’:48
1.每一个大写字母比它的小写字母的码值小32
2.后面一个字母比前一个字母的码值大1
3.后一个数字的码值比前一个数字大1
练习:输入一个大写字母,输出它对应的小写字母。
#include <stdio.h>
void main()
{
char ch,A='B';
ch=A+32;
printf("%cn",ch);
// scanf("%c",&ch);
// printf("%cn",ch+32);
}

c语言中的注释:注释只是便于阅读,不参与编译,

  1. // :单行注释
    2./×...×/:多行注释

int sizeof(变量名/类型名);计算变量或类型在内存中所占的字节的大小。
#include <stdio.h>
void main()
{
int a;
printf("%dn",sizeof(a));
printf("int:%d short:%d long:%d float:%d double:%d
char:%dn",sizeof(int),sizeof(short),sizeof(long),
sizeof(float),sizeof(double),sizeof(char));
}

算术运算符:加(+),减(-),乘(*),除(/),求模/求余(%)
1.两个整数相除,结果一定是整数,小数部分直接抹掉。
例:printf("%dn",5/2);
2.求模运算符2边的操作数必须是整数

不同类型的数据间的混合运算:
1.把float型的数据赋给int型数据,整数部分赋值,小数部分丢失
2.把int型数据付给float型数据,数据不丢失,多了6个0
3.字符可以和整数直接进行运算,他们可以看做相互等价的。
4.在printf中格式声明输出的变量列表中的变量类型得严格匹配,除了字符
和整数之间可以互相等价之外。

强制类型装换运算符:()
例:
#include <stdio.h>
void main()
{
float a=7.8;
int b=3;
printf("%dn",(int)a%b);//%左右的操作数类型必须是int型,所以此需要强转
}
适用于自动类型转换不能够进行的时候使用,并没有改变变量的真实数据类型,
只是产生了相应的中间变量。

练习:有4个水渠a,b,c,d往一个池子里注水,单开a,1天注满;单开b,2天注满;单开c,
3天注满;单开d,4天注满;请问,a,b,c,d同时开,几天注满。
#include <stdio.h>
void main()
{
float a=1,b=2,c=3,d=4;//a=1.000000
printf("%fn",1/(1/a+1/b+1/c+1/d));
}

自增运算符:++使变量的值加1
前置加加:++i 用(i)之前加
后置加加:i++ 用(i)之后加
例:#include <stdio.h>
void main()
{
int i=1;
// printf("%dn",++i);
// printf("%dn",i);
printf("%dn",i++);
printf("%dn",i);
}
自减运算符:--使变量的值减1
前置减减:--i 先自减再用
后置减减:i-- 先用再自减
a=i++;
a=++i;
a=i--;
a=--i;
#include <stdio.h>
void main()
{
int i=1,a;
//a=i++;
a=++i;
printf("%dn",a);
printf("%dn",i);
// printf("%dn",i++);
// printf("%dn",i);
}

putchar(字符常量/字符变量);
例:
#include <stdio.h>
void main()
{
putchar('a');
char a='b';
putchar(a);
putchar('n');
}
练习:向屏幕输出boy
#include <stdio.h>
void main()
{
/* putchar('b');
putchar('o');
putchar('y');
putchar('n');*/
putchar(98);
putchar(111);
putchar(121);
putchar('n');
}

getchar():从标准输入(键盘)获取一个字符,该函数有返回值,返回获取的那个字符,
如果没有获取到,会一直等待,直到获取到,因此可以利用该特性进行暂停程
序的运行,在在调试代码的时候可以单步运行
例:
#include <stdio.h>
void main()
{
char ch=getchar();
putchar(ch);
}
练习:从键盘输入boy,并输出boy.
#include <stdio.h>
void main()
{
/*
char ch1=getchar();
char ch2=getchar();
char ch3=getchar();
putchar(ch1);
putchar(ch2);
putchar(ch3);
putchar('n');*/
char ch=getchar();
putchar(ch);
ch=getchar();
putchar(ch);
ch=getchar();
putchar(ch);
putchar('n');
}

1.程序是顺序执行,从第一行依次往下执行,同一行如果有多条指令,从左往右执行。
2.“左=右” :等号叫赋值运算符,即先执行右边的,再执行左边的,把右边的值付给左边的变量
3.从键盘上输入数据的过程:从键盘上输入数据,直到按了回车键才会把所有的数据放到键盘缓冲区中去,当程序运行的时候需要获取输入,如果键盘缓冲区中有数据,则会自动去键盘缓存区中依次取,如果缓冲区中没有了数据,才会需要你继续从键盘输入数据,直到你按了回车键才把数据的数据继续填充到键盘缓冲区,然后再从缓冲区中取数据

1、计算Fibonacci数列

Fibonacci数列又称斐波那契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21。

C语言实现的代码如下:

Enter number of terms: 10

Fibonacci Series: 0+1+1+2+3+5+8+13+21+34+

也可以使用下面的源代码:

/* Displaying Fibonacci series up to certain number entered by user. */

#include

int main()

{

  int t1=0, t2=1, display=0, num;

  printf("Enter an integer: ");

  scanf("%d",&num);

  printf("Fibonacci Series: %d+%d+", t1, t2); /* Displaying first two terms */

  display=t1+t2;

  while(display

  {

      printf("%d+",display);

      t1=t2;

      t2=display;

      display=t1+t2;

  }

  return 0;

}

结果输出:

Enter an integer: 200

Fibonacci Series: 0+1+1+2+3+5+8+13+21+34+55+89+144+

必赢备用网址 2

小编推荐一个学C语言/C++的学习裙【 二六三,六八八,二七六 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

2、回文检查

源代码:

/* C program to check whether a number is palindrome or not */

#include

int main()

{

  int n, reverse=0, rem,temp;

  printf("Enter an integer: ");

  scanf("%d", &n);

  temp=n;

  while(temp!=0)

  {

     rem=temp%10;

     reverse=reverse*10+rem;

     temp/=10;

  }  

/* Checking if number entered by user and it's reverse number is equal. */  

  if(reverse==n)  

      printf("%d is a palindrome.",n);

  else

      printf("%d is not a palindrome.",n);

  return 0;

}

结果输出:

Enter an integer: 12321

12321 is a palindrome.

3、质数检查

注:1既不是质数也不是合数。

源代码:

/* C program to check whether a number is prime or not. */

#include

int main()

{

  int n, i, flag=0;

  printf("Enter a positive integer: ");

  scanf("%d",&n);

  for(i=2;i<=n/2;++i)

  {

      if(n%i==0)

      {

          flag=1;

          break;

      }

  }

  if (flag==0)

      printf("%d is a prime number.",n);

  else

      printf("%d is not a prime number.",n);

  return 0;

}

结果输出:

Enter a positive integer: 29

29 is a prime number.

4、打印金字塔和三角形

使用 * 建立三角形

*

* *

* * *

* * * *

* * * * *

源代码:

#include

int main()

{

    int i,j,rows;

    printf("Enter the number of rows: ");

    scanf("%d",&rows);

    for(i=1;i<=rows;++i)

    {

        for(j=1;j<=i;++j)

        {

           printf("* ");

        }

        printf("n");

    }

    return 0;

}

如下图所示使用数字打印半金字塔。

1

1 2

1 2 3

1 2 3 4

1 2 3 4 5

源代码:

#include

int main()

{

    int i,j,rows;

    printf("Enter the number of rows: ");

    scanf("%d",&rows);

    for(i=1;i<=rows;++i)

    {

        for(j=1;j<=i;++j)

        {

           printf("* ");

        }

        printf("n");

    }

    return 0;

}

用 * 打印半金字塔

* * * * *

*必赢备用网址所以没有必要再将一个整数经过一系列的运算转换为二进制形式,这些指令在内存中运行得到一个我们想要的结果。 * * *

* * * 

* *

*

源代码:

#include

int main()

{

    int i,j,rows;

    printf("Enter the number of rows: ");

    scanf("%d",&rows);

    for(i=rows;i>=1;--i)

    {

        for(j=1;j<=i;++j)

        {

           printf("* ");

        }

    printf("n");

    }

    return 0;

}

用 * 打印金字塔

        *

      * * *

    * * * * *

  * * * * * * *

* * * * * * * * *

源代码:

#include

int main()

{

    int i,space,rows,k=0;

    printf("Enter the number of rows: ");

    scanf("%d",&rows);

    for(i=1;i<=rows;++i)

    {

        for(space=1;space<=rows-i;++space)

        {

           printf("  ");

        }

        while(k!=2*i-1)

        {

           printf("* ");

           ++k;

        }

        k=0;

        printf("n");

    }

    return 0;

}

用 * 打印倒金字塔

* * * * * * * * *

  * * * * * * *

    * * * * *

      * * *

        *

源代码:

#include

int main()

{

    int rows,i,j,space;

    printf("Enter number of rows: ");

    scanf("%d",&rows);

    for(i=rows;i>=1;--i)

    {

        for(space=0;space

           printf("  ");

        for(j=i;j<=2*i-1;++j)

          printf("* ");

        for(j=0;j

            printf("* ");

        printf("n");

    }

    return 0;

}

5、简单的加减乘除计算器

源代码:

/* Source code to create a simple calculator for addition, subtraction, multiplication and division using switch...case statement in C programming. */

# include

int main()

{

    char o;

    float num1,num2;

    printf("Enter operator either + or - or * or divide : ");

    scanf("%c",&o);

    printf("Enter two operands: ");

    scanf("%f%f",&num1,&num2);

    switch(o) {

        case '+':

            printf("%.1f + %.1f = %.1f",num1, num2, num1+num2);

            break;

        case '-':

            printf("%.1f - %.1f = %.1f",num1, num2, num1-num2);

            break;

        case '*':

            printf("%.1f * %.1f = %.1f",num1, num2, num1*num2);

            break;

        case '/':

            printf("%.1f / %.1f = %.1f",num1, num2, num1/num2);

            break;

        default:

            /* If operator is other than +, -, * or /, error message is shown */

            printf("Error! operator is not correct");

            break;

    }

    return 0;

}

必赢备用网址 3

小编推荐一个学C语言/C++的学习裙【 二六三,六八八,二七六 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

结果输出:

Enter operator either + or - or * or divide : -

Enter two operands: 3.4

8.4

3.4 - 8.4 = -5.0

6、检查一个数能不能表示成两个质数之和

源代码:

#include

int prime(int n);

int main()

{

    int n, i, flag=0;

    printf("Enter a positive integer: ");

    scanf("%d",&n);

    for(i=2; i<=n/2; ++i)

    {

        if (prime(i)!=0)

        {

            if ( prime(n-i)!=0)

            {

                printf("%d = %d + %dn", n, i, n-i);

                flag=1;

            }

        }

    }

    if (flag==0)

      printf("%d can't be expressed as sum of two prime numbers.",n);

    return 0;

}

int prime(int n)      /* Function to check prime number */

{

    int i, flag=1;

    for(i=2; i<=n/2; ++i)

       if(n%i==0)

          flag=0;

    return flag;

}

结果输出:

Enter a positive integer: 34

34 = 3 + 31

34 = 5 + 29

34 = 11 + 23

34 = 17 + 17

7、用递归的方式颠倒字符串

源代码:

/* Example to reverse a sentence entered by user without using strings. */

#include

void Reverse();

int main()

{

    printf("Enter a sentence: ");

    Reverse();

    return 0;

}

void Reverse()

{

    char c;

    scanf("%c",&c);

    if( c != 'n')

    {

        Reverse();

        printf("%c",c);

    }

}

结果输出:

Enter a sentence: margorp emosewa

awesome program

8、实现二进制与十进制之间的相互转换

/* C programming source code to convert either binary to decimal or decimal to binary according to data entered by user. */

#include

#include

int binary_decimal(int n);

int decimal_binary(int n);

int main()

{

   int n;

   char c;

   printf("Instructions:n");

   printf("1. Enter alphabet 'd' to convert binary to decimal.n");

   printf("2. Enter alphabet 'b' to convert decimal to binary.n");

   scanf("%c",&c);

   if (c =='d' || c == 'D')

   {

       printf("Enter a binary number: ");

       scanf("%d", &n);

       printf("%d in binary = %d in decimal", n, binary_decimal(n));

   }

   if (c =='b' || c == 'B')

   {

       printf("Enter a decimal number: ");

       scanf("%d", &n);

       printf("%d in decimal = %d in binary", n, decimal_binary(n));

   }

   return 0;

}

int decimal_binary(int n)  /* Function to convert decimal to binary.*/

{

    int rem, i=1, binary=0;

    while (n!=0)

    {

        rem=n%2;

        n/=2;

        binary+=rem*i;

        i*=10;

    }

    return binary;

}

int binary_decimal(int n) /* Function to convert binary to decimal.*/

{

    int decimal=0, i=0, rem;

    while (n!=0)

    {

        rem = n%10;

        n/=10;

        decimal += rem*pow(2,i);

        ++i;

    }

    return decimal;

}

结果输出:

9、使用多维数组实现两个矩阵的相加

源代码:

#include

int main(){

    int r,c,a[100][100],b[100][100],sum[100][100],i,j;

    printf("Enter number of rows (between 1 and 100): ");

    scanf("%d",&r);

    printf("Enter number of columns (between 1 and 100): ");

    scanf("%d",&c);

    printf("nEnter elements of 1st matrix:n");

/* Storing elements of first matrix entered by user. */

    for(i=0;i

       for(j=0;j

       {

           printf("Enter element a%d%d: ",i+1,j+1);

           scanf("%d",&a[i][j]);

       }

/* Storing elements of second matrix entered by user. */

    printf("Enter elements of 2nd matrix:n");

    for(i=0;i

       for(j=0;j

       {

           printf("Enter element a%d%d: ",i+1,j+1);

           scanf("%d",&b[i][j]);

       }

/*Adding Two matrices */

   for(i=0;i

       for(j=0;j

           sum[i][j]=a[i][j]+b[i][j];

/* Displaying the resultant sum matrix. */

    printf("nSum of two matrix is: nn");

    for(i=0;i

       for(j=0;j

       {

           printf("%d   ",sum[i][j]);

           if(j==c-1)

               printf("nn");

       }

    return 0;

}

结果输出:

必赢备用网址 4

小编推荐一个学C语言/C++的学习裙【 二六三,六八八,二七六 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

10、矩阵转置

源代码:

#include

int main()

{

    int a[10][10], trans[10][10], r, c, i, j;

    printf("Enter rows and column of matrix: ");

    scanf("%d %d", &r, &c);

/* Storing element of matrix entered by user in array a[][]. */

    printf("nEnter elements of matrix:n");

    for(i=0; i

    for(j=0; j

    {

        printf("Enter elements a%d%d: ",i+1,j+1);

        scanf("%d",&a[i][j]);

    }

/* Displaying the matrix a[][] */

    printf("nEntered Matrix: n");

    for(i=0; i

    for(j=0; j

    {

        printf("%d  ",a[i][j]);

        if(j==c-1)

            printf("nn");

    }

/* Finding transpose of matrix a[][] and storing it in array trans[][]. */

    for(i=0; i

    for(j=0; j

    {

       trans[j][i]=a[i][j];

    }

/* Displaying the transpose,i.e, Displaying array trans[][]. */

    printf("nTranspose of Matrix:n");

    for(i=0; i

    for(j=0; j

    {

        printf("%d  ",trans[i][j]);

        if(j==r-1)

            printf("nn");

    }

    return 0;

}

结果输出:

必赢备用网址 5

这些是C/C++能做的

服务器开发工程师、人工智能、云计算工程师、信息安全(黑客反黑客)、大数据 、数据平台、嵌入式工程师、流媒体服务器、数据控解、图像处理、音频视频开发工程师、游戏服务器、分布式系统、游戏辅助等

必赢备用网址 6

必赢备用网址 7

必赢备用网址 8