求助,编译通过运行出现应用程序错误,该内存不能为written
我明明定义的是int 可是输入数字就出错,输入字母却好好的,为啥?
一个输出最高分学生学号和总分的程序!
代码如下。。
#include <stdio.h>
#include <stdlib.h>
void main ()
{
int a[10][5],max=-1,max_i,i,j;
for (i=0;i<10;i++)
{
printf("请输入学生学号\n"); //a[i][0]为学号输入
scanf("%d",a[i][0]);
fflush(stdin);
printf("请输入本学生的成绩一");
scanf("%d",a[i][1]);
fflush(stdin);
printf("请输入本学生的成绩二");
scanf("%d",a[i][2]);
fflush(stdin);
printf("请输入本学生的成绩三");
scanf("%d",a[i][3]);
fflush(stdin);
a[i][4]=a[i][1]+a[i][2]+a[i][3]; //a[i][4]为此学生的总分
if(a[i][4]>max)
{
max=a[i][4]; //不要想着当第二次循环的时候a[i][4]中的i就变成循环第二次的i=2了。a[i][4]是一个
max_i=i; //具体的数值了。。。。如a[i][4]是4,是5是100等等。。所以max是一个具体的数值只不过
//代码中是a[i][4]显示出来。。。。
}
}
printf("最高分的学生的学号是%d\n此学生的最高分是%d",a[max_i],max);
}
求助,为啥我不能输入数字啊??
输入字母却好好的,没错误!
谢谢!
一个输出最高分学生学号和总分的程序!
代码如下。。
#include <stdio.h>
#include <stdlib.h>
void main ()
{
int a[10][5],max=-1,max_i,i,j;
for (i=0;i<10;i++)
{
printf("请输入学生学号\n"); //a[i][0]为学号输入
scanf("%d",a[i][0]);
fflush(stdin);
printf("请输入本学生的成绩一");
scanf("%d",a[i][1]);
fflush(stdin);
printf("请输入本学生的成绩二");
scanf("%d",a[i][2]);
fflush(stdin);
printf("请输入本学生的成绩三");
scanf("%d",a[i][3]);
fflush(stdin);
a[i][4]=a[i][1]+a[i][2]+a[i][3]; //a[i][4]为此学生的总分
if(a[i][4]>max)
{
max=a[i][4]; //不要想着当第二次循环的时候a[i][4]中的i就变成循环第二次的i=2了。a[i][4]是一个
max_i=i; //具体的数值了。。。。如a[i][4]是4,是5是100等等。。所以max是一个具体的数值只不过
//代码中是a[i][4]显示出来。。。。
}
}
printf("最高分的学生的学号是%d\n此学生的最高分是%d",a[max_i],max);
}
求助,为啥我不能输入数字啊??
输入字母却好好的,没错误!
谢谢!
...全文
相关推荐
内存不能read 或written数值
内存不能read 或written数值,出现这些情况的话就按照文档说的,马上解决问题!
vc 内存不能read
vc 内存不能read 网上收集的 自己看看吧 也是初学者
解决VirtualBox内存错误[项目代码]
文章介绍了在运行VirtualBox时遇到的0x00000000错误,提示“0x00000000指令引用的0x00000000内存该内存不能为written”的问题。通过修改系统主板中的启动顺序,成功解决了该问题。这一方法为遇到类似错误的用户提供了有效的解决方案。
Brainfuck interpreter written in C.zip
Brainfuck interpreter written in C
Clang bindings for .NET written in C#.zip
Clang bindings for .NET written in C#


