CLion使用scanf报错,改用scanf_s后程序运行正常,但出现乱码
#include <stdio.h>
#define M 3
int main()
{
int i,j,a[M][M],*q,(*p)[M];
printf("请输入方阵数据:");
for (q = a[0]; q < a[0] + M * M; q++)
{
scanf_s("%d", q);
}
p=a;
for(i=0;i<M;i++)
{
for(j=0;j<M;j++)
printf("%5d",p[i][j]);
printf("\n");//换行
}
return 0;
}
你那个函数没关系,和你文件的编码有关系,不知道你 Clion 的版本,新版本里面,中文汉字需要 utf-8 编码才行
如果你知道怎么转换文件编码,就用 visual studio code 之类的工具改下文件编码
拷贝你现在的代码,通过 Clion 新建文件,然后粘贴进去,应该就恢复正常了