用函数写一个c语言程序,从键盘录入3*3数组

我的c语言编码哪里错了 12 15

你第五行定义的数组 ml [4] [3] 的范围是 ml [0~3] [0~2] ,共有 3 X 4 = 12 个值。但你的 2 个 for 函数会从 ml [0] [0] 开始一直到 ml [5] [4] ,这里已经明显超出了数组的范围了,所以错误。正确应该改成
第八行,第一个for(i = 0;i < 3;i++)
第十行,第二个for(j = 0;j < 2;j++)
另外从习惯上讲,每次要求输入时最好能有一个提示语句显示出来,因此第十二行第二个 for 里面可以增加一条语句显示一个提示输入的信息。
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-04-07
如果要声明N*M矩阵的话,如下
int a[N][M]
输入的话,如下
for(i=0;i<N;i++)
for(j=0;j<M;j++)
scanf("%d",&a[i][j]);
输出的话,如下
for(i=0;i<N;i++)
{
for(j=0;j<M;j++)
printf("%5d",a[i][j]);//元素之间有一定宽度
printf("\n");
}这样看起来比较直观。本回答被提问者和网友采纳
第2个回答  2013-06-13

数组只能一个一个输出,你

  printf("%hd",*(a[0]+i)); 要用循环输出你的所有数字 方法和之前录入一样

for(i=0;i<3;++i)

        for(j=0;j<3;++j)

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

还有明明是33的数组。你的定义怎么多了那么多

#include "stdio.h"
main()
{
    short a[3][3];
    int i,j;
    printf("enter your matrixl")
    for(i=0;i<3;++i)
        for(j=0;j<3;++j)
            scanf("%hd",a[i]+j);
    
    for(i=0;i<3;++i)
        for(j=0;j<3;++j)
             printf("%hd",a[i][j]);
}

第3个回答  2013-06-13
for循环加scanf就可以了

编程题C语言,在键盘上输入一个3行3列矩阵的各个元素的值?
void fun(int a[3][3])修改为:int fun(int a[3][3])才行的。再填充以下内容:

编写一个C程序,输入a,b,c三个值,输出其中最大者。
include<stdio.h> int main(){ int a,b,c,max;printf("请输入三个数:\\n");scanf("%d%d%d",&a,&b,&c);if(a>b)max=a;if(c>max)max = c;printf("三个数中最大的数为:%d",max);return 0;}

用C++编写一个C程序,输入a,b,c,3个值,输出其中最大者
程序如下:include <stdio.h> int main(){ int a,b,c,Max;printf("请输入3个数:\\n");scanf("%d%d%d",&a,&b,&c);Max=a>b?(a>c?a:c):(b>c?b:c);printf("3个数中最大值为:%d\\n",Max);return 0;}

求以下c语言编程:一个简单的学生成绩管理系统。其中每个学生信息包括学 ...
编写函数fun1(),检查录入时的学号冲突情况,具体功能为:在录入时如果已有学号相同的学生信息,需提示用户,并允许用户重新输入信息(即用新的数据覆盖原来数据)或不重新输入的选择。对于需要重新输入信息的结点,通过函数fun2()实现,其功能为:当出现学号相同的结点时,以新的数据代替原来的数据,实现数据的更新。4)通过函...

c语言,从键盘输入数字,显示输出结果
},{"化学成绩"}};do{printf(" 主菜单\\n===\\n 1.输入功能\\n 2.按学号查找\\n 3.打印输出\\n 0.退出\\n===\\n请选择(0-3)\\n");scanf("%d",&y);switch(y){case 1: printf("请输入\\n");for(o=0;

我是大一的学生 老师让我们做一个c语言课程设计 现在给出三道 希望大家...
编写一个学生成绩管理的程序。由键盘输入数据(最好要考虑输入数据输入的格式及输入数据的有效性),然后进行以下的功能实现。程序要求主函数是一个功能选择菜单,其它各功能都用各自的函数实现。要求至少有20个学生的原始数据。原始数据如下:学号 姓名 C程序设计 高等数学 英语 线性代数 1 王.. 80 80 80 80 2 张....

跪求各位大佬编写一个c语言程序题。
测试代码:#include <stdio.h> int main(){ int n;\/\/ 定义一个整型变量n float f;\/\/ 定义一个实型变量n char c;\/\/ 定义一个字符型变量n scanf("%d %f %c", &n, &f, &c);\/\/ 输入三个变量的值 printf("%d %f %c", n, f, c);\/\/ 输出三个变量的值 return 0;} ...

用c语言写一个职工工资管理程序
1 - 从键盘录入信息到数组结构并保存至文件,录入+写入文件。2 - 从磁盘文件中读出这些数据,依次打印出来, 读取文件+显示数据。3 - 对职工数据按工资高低排序,将排好序的各记录存放在文件worker2.dat中, 排序+写入文件。4 - 将职工号为单数和偶数的职工信息分别存放另两个磁盘文件worker3.dat和...

C语言在键盘上输入三个学生的信息(包含学号,姓名,三门课的成绩)并在...
printf()函数是格式化输出函数,一般用于向标准输出设备按规定格式输出信息。格式输出,它是c语言中产生格式化输出的函数(在stdio.h中定义)。函数介绍 printf()函数是格式化输出函数,一般用于向标准输出设备按规定格式输出信息。在编写程序时经常会用到此函数。函数的原型为:intprintf(constchar*format)...

c语言怎么对整形数组部分输入?
\\r\\n");} 不论是第一种方法,还是第二种方法,你定义的数组都必须大于你输入的数据数 “啊,我不知道他可能输几个”对于这种情况,你可以提前告诉他,你最多输入几个,然后再做个限制,比如说你判断当前数量,如果大于10000000,直接break,从循环里退出,然后处理事务 答题不易如无疑问烦请采纳 ...

相似回答